Show / Hide Table of Contents

Class Line2D

Implements a line in 2D space. By implementing the ICurve2D interface this line can be handled as any 2D curve.

Inheritance
System.Object
GeneralCurve2D
Line2D
Implements
ICurve2D
IQuadTreeInsertable
System.Runtime.Serialization.ISerializable
IJsonSerialize
Inherited Members
GeneralCurve2D.PositionAtLength(Double)
GeneralCurve2D.MinDistance(GeoPoint2D)
GeneralCurve2D.TangentPointsToAngle(GeoVector2D)
GeneralCurve2D.IsParameterOnCurve(Double)
GeneralCurve2D.IsValidParameter(Double)
GeneralCurve2D.GetSelfIntersections()
GeneralCurve2D.ReinterpretParameter(Double)
GeneralCurve2D.GetInflectionPoints()
GeneralCurve2D.IsClosed
GeneralCurve2D.UserData
GeneralCurve2D.ReferencedObject
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: CADability.Curve2D
Assembly: CADability.dll
Syntax
[Serializable]
public class Line2D : GeneralCurve2D, ICurve2D, IQuadTreeInsertable, I2DIntersectable, ISerializable, IJsonSerialize

Constructors

| Improve this Doc View Source

Line2D()

Declaration
protected Line2D()
| Improve this Doc View Source

Line2D(GeoPoint2D, GeoPoint2D)

Declaration
public Line2D(GeoPoint2D StartPoint, GeoPoint2D EndPoint)
Parameters
Type Name Description
GeoPoint2D StartPoint
GeoPoint2D EndPoint
| Improve this Doc View Source

Line2D(GeoPoint2D, GeoVector2D, BoundingRect)

Constructs a line passing through location with the provided direction clipped by the rectangle clippedBy

Declaration
public Line2D(GeoPoint2D location, GeoVector2D direction, BoundingRect clippedBy)
Parameters
Type Name Description
GeoPoint2D location

Point on the (extension of the) line

GeoVector2D direction

Direction of the line

BoundingRect clippedBy

Clipping rectangle

| Improve this Doc View Source

Line2D(SerializationInfo, StreamingContext)

Constructor required by deserialization

Declaration
protected Line2D(SerializationInfo info, StreamingContext context)
Parameters
Type Name Description
System.Runtime.Serialization.SerializationInfo info

SerializationInfo

System.Runtime.Serialization.StreamingContext context

StreamingContext

Properties

| Improve this Doc View Source

EndDirection

Declaration
public override GeoVector2D EndDirection { get; }
Property Value
Type Description
GeoVector2D
Overrides
GeneralCurve2D.EndDirection
| Improve this Doc View Source

EndPoint

Declaration
public override GeoPoint2D EndPoint { get; set; }
Property Value
Type Description
GeoPoint2D
Overrides
GeneralCurve2D.EndPoint
| Improve this Doc View Source

Length

Declaration
public override double Length { get; }
Property Value
Type Description
System.Double
Overrides
GeneralCurve2D.Length
| Improve this Doc View Source

MiddleDirection

Declaration
public override GeoVector2D MiddleDirection { get; }
Property Value
Type Description
GeoVector2D
Overrides
GeneralCurve2D.MiddleDirection
| Improve this Doc View Source

StartDirection

Declaration
public override GeoVector2D StartDirection { get; }
Property Value
Type Description
GeoVector2D
Overrides
GeneralCurve2D.StartDirection
| Improve this Doc View Source

StartPoint

Declaration
public override GeoPoint2D StartPoint { get; set; }
Property Value
Type Description
GeoPoint2D
Overrides
GeneralCurve2D.StartPoint
| Improve this Doc View Source

Sweep

Declaration
public override double Sweep { get; }
Property Value
Type Description
System.Double
Overrides
GeneralCurve2D.Sweep

Methods

| Improve this Doc View Source

AddToGraphicsPath(GraphicsPath, Boolean)

Overrides AddToGraphicsPath(GraphicsPath, Boolean)

Declaration
public override void AddToGraphicsPath(GraphicsPath path, bool forward)
Parameters
Type Name Description
System.Drawing.Drawing2D.GraphicsPath path
System.Boolean forward
Overrides
GeneralCurve2D.AddToGraphicsPath(GraphicsPath, Boolean)
| Improve this Doc View Source

Approximate(Boolean, Double)

Overrides Approximate(Boolean, Double)

Declaration
public override ICurve2D Approximate(bool linesOnly, double maxError)
Parameters
Type Name Description
System.Boolean linesOnly
System.Double maxError
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.Approximate(Boolean, Double)
| Improve this Doc View Source

Clone()

Overrides Clone()

Declaration
public override ICurve2D Clone()
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.Clone()
| Improve this Doc View Source

CloneReverse(Boolean)

Overrides CloneReverse(Boolean)

Declaration
public override ICurve2D CloneReverse(bool reverse)
Parameters
Type Name Description
System.Boolean reverse
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.CloneReverse(Boolean)
| Improve this Doc View Source

Copy(ICurve2D)

Overrides Copy(ICurve2D)

Declaration
public override void Copy(ICurve2D toCopyFrom)
Parameters
Type Name Description
ICurve2D toCopyFrom
Overrides
GeneralCurve2D.Copy(ICurve2D)
| Improve this Doc View Source

DirectionAt(Double)

Overrides DirectionAt(Double)

Declaration
public override GeoVector2D DirectionAt(double Position)
Parameters
Type Name Description
System.Double Position
Returns
Type Description
GeoVector2D
Overrides
GeneralCurve2D.DirectionAt(Double)
| Improve this Doc View Source

Distance(GeoPoint2D)

Overrides Distance(GeoPoint2D)

Declaration
public override double Distance(GeoPoint2D p)
Parameters
Type Name Description
GeoPoint2D p
Returns
Type Description
System.Double
Overrides
GeneralCurve2D.Distance(GeoPoint2D)
| Improve this Doc View Source

GetArea()

Overrides GetArea()

Declaration
public override double GetArea()
Returns
Type Description
System.Double
Overrides
GeneralCurve2D.GetArea()
| Improve this Doc View Source

GetAreaFromPoint(GeoPoint2D)

Overrides GetAreaFromPoint(GeoPoint2D)

Declaration
public override double GetAreaFromPoint(GeoPoint2D p)
Parameters
Type Name Description
GeoPoint2D p
Returns
Type Description
System.Double
Overrides
GeneralCurve2D.GetAreaFromPoint(GeoPoint2D)
| Improve this Doc View Source

GetExtendedHitTest()

Overrides GetExtendedHitTest()

Declaration
public override IQuadTreeInsertable GetExtendedHitTest()
Returns
Type Description
IQuadTreeInsertable
Overrides
GeneralCurve2D.GetExtendedHitTest()
| Improve this Doc View Source

GetExtent()

Overrides GetExtent()

Declaration
public override BoundingRect GetExtent()
Returns
Type Description
BoundingRect
Overrides
GeneralCurve2D.GetExtent()
| Improve this Doc View Source

GetFused(ICurve2D, Double)

Overrides GetFused(ICurve2D, Double)

Declaration
public override ICurve2D GetFused(ICurve2D toFuseWith, double precision)
Parameters
Type Name Description
ICurve2D toFuseWith
System.Double precision
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.GetFused(ICurve2D, Double)
| Improve this Doc View Source

GetModified(ModOp2D)

Overrides GetModified(ModOp2D)

Declaration
public override ICurve2D GetModified(ModOp2D m)
Parameters
Type Name Description
ModOp2D m
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.GetModified(ModOp2D)
| Improve this Doc View Source

GetObjectData(SerializationInfo, StreamingContext)

Implements System.Runtime.Serialization.ISerializable.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)

Declaration
public void GetObjectData(SerializationInfo info, StreamingContext context)
Parameters
Type Name Description
System.Runtime.Serialization.SerializationInfo info

The System.Runtime.Serialization.SerializationInfo to populate with data.

System.Runtime.Serialization.StreamingContext context

The destination (System.Runtime.Serialization.StreamingContext) for this serialization.

| Improve this Doc View Source

HitTest(ref BoundingRect, Boolean)

Overrides HitTest(ref BoundingRect, Boolean)

Declaration
public override bool HitTest(ref BoundingRect Rect, bool IncludeControlPoints)
Parameters
Type Name Description
BoundingRect Rect
System.Boolean IncludeControlPoints
Returns
Type Description
System.Boolean
Overrides
GeneralCurve2D.HitTest(ref BoundingRect, Boolean)
| Improve this Doc View Source

Intersect(ICurve2D)

Overrides Intersect(ICurve2D)

Declaration
public override GeoPoint2DWithParameter[] Intersect(ICurve2D IntersectWith)
Parameters
Type Name Description
ICurve2D IntersectWith
Returns
Type Description
GeoPoint2DWithParameter[]
Overrides
GeneralCurve2D.Intersect(ICurve2D)
| Improve this Doc View Source

Intersect(GeoPoint2D, GeoPoint2D)

Overrides Intersect(GeoPoint2D, GeoPoint2D)

Declaration
public override GeoPoint2DWithParameter[] Intersect(GeoPoint2D StartPoint, GeoPoint2D EndPoint)
Parameters
Type Name Description
GeoPoint2D StartPoint
GeoPoint2D EndPoint
Returns
Type Description
GeoPoint2DWithParameter[]
Overrides
GeneralCurve2D.Intersect(GeoPoint2D, GeoPoint2D)
| Improve this Doc View Source

MakeGeoObject(Plane)

Overrides MakeGeoObject(Plane)

Declaration
public override IGeoObject MakeGeoObject(Plane p)
Parameters
Type Name Description
Plane p
Returns
Type Description
IGeoObject
Overrides
GeneralCurve2D.MakeGeoObject(Plane)
| Improve this Doc View Source

MinDistance(ICurve2D)

Overrides MinDistance(ICurve2D)

Declaration
public override double MinDistance(ICurve2D Other)
Parameters
Type Name Description
ICurve2D Other
Returns
Type Description
System.Double
Overrides
GeneralCurve2D.MinDistance(ICurve2D)
| Improve this Doc View Source

Move(Double, Double)

Overrides Move(Double, Double)

Declaration
public override void Move(double dx, double dy)
Parameters
Type Name Description
System.Double dx
System.Double dy
Overrides
GeneralCurve2D.Move(Double, Double)
| Improve this Doc View Source

Parallel(Double, Boolean, Double, Double)

Overrides Parallel(Double, Boolean, Double, Double)

Declaration
public override ICurve2D Parallel(double Dist, bool approxSpline, double precision, double roundAngle)
Parameters
Type Name Description
System.Double Dist
System.Boolean approxSpline
System.Double precision
System.Double roundAngle
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.Parallel(Double, Boolean, Double, Double)
| Improve this Doc View Source

PerpendicularFoot(GeoPoint2D)

Overrides PerpendicularFoot(GeoPoint2D)

Declaration
public override GeoPoint2D[] PerpendicularFoot(GeoPoint2D FromHere)
Parameters
Type Name Description
GeoPoint2D FromHere
Returns
Type Description
GeoPoint2D[]
Overrides
GeneralCurve2D.PerpendicularFoot(GeoPoint2D)
| Improve this Doc View Source

PointAt(Double)

Overrides PointAt(Double)

Declaration
public override GeoPoint2D PointAt(double Position)
Parameters
Type Name Description
System.Double Position
Returns
Type Description
GeoPoint2D
Overrides
GeneralCurve2D.PointAt(Double)
| Improve this Doc View Source

PositionOf(GeoPoint2D)

Overrides PositionOf(GeoPoint2D)

Declaration
public override double PositionOf(GeoPoint2D p)
Parameters
Type Name Description
GeoPoint2D p
Returns
Type Description
System.Double
Overrides
GeneralCurve2D.PositionOf(GeoPoint2D)
| Improve this Doc View Source

Project(Plane, Plane)

Overrides Project(Plane, Plane)

Declaration
public override ICurve2D Project(Plane fromPlane, Plane toPlane)
Parameters
Type Name Description
Plane fromPlane
Plane toPlane
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.Project(Plane, Plane)
| Improve this Doc View Source

Reverse()

Overrides Reverse()

Declaration
public override void Reverse()
Overrides
GeneralCurve2D.Reverse()
| Improve this Doc View Source

Split(Double)

Overrides Split(Double)

Declaration
public override ICurve2D[] Split(double Position)
Parameters
Type Name Description
System.Double Position
Returns
Type Description
ICurve2D[]
Overrides
GeneralCurve2D.Split(Double)
| Improve this Doc View Source

TangentPoints(GeoPoint2D, GeoPoint2D)

Overrides TangentPoints(GeoPoint2D, GeoPoint2D)

Declaration
public override GeoPoint2D[] TangentPoints(GeoPoint2D FromHere, GeoPoint2D CloseTo)
Parameters
Type Name Description
GeoPoint2D FromHere
GeoPoint2D CloseTo
Returns
Type Description
GeoPoint2D[]
Overrides
GeneralCurve2D.TangentPoints(GeoPoint2D, GeoPoint2D)
| Improve this Doc View Source

TangentPointsToAngle(Angle, GeoPoint2D)

Overrides TangentPointsToAngle(Angle, GeoPoint2D)

Declaration
public override GeoPoint2D[] TangentPointsToAngle(Angle ang, GeoPoint2D CloseTo)
Parameters
Type Name Description
Angle ang
GeoPoint2D CloseTo
Returns
Type Description
GeoPoint2D[]
Overrides
GeneralCurve2D.TangentPointsToAngle(Angle, GeoPoint2D)
| Improve this Doc View Source

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
System.Object.ToString()
| Improve this Doc View Source

Trim(Double, Double)

Overrides Trim(Double, Double)

Declaration
public override ICurve2D Trim(double StartPos, double EndPos)
Parameters
Type Name Description
System.Double StartPos
System.Double EndPos
Returns
Type Description
ICurve2D
Overrides
GeneralCurve2D.Trim(Double, Double)
| Improve this Doc View Source

TryPointDeriv2At(Double, out GeoPoint2D, out GeoVector2D, out GeoVector2D)

Declaration
public override bool TryPointDeriv2At(double position, out GeoPoint2D point, out GeoVector2D deriv, out GeoVector2D deriv2)
Parameters
Type Name Description
System.Double position
GeoPoint2D point
GeoVector2D deriv
GeoVector2D deriv2
Returns
Type Description
System.Boolean
Overrides
GeneralCurve2D.TryPointDeriv2At(Double, out GeoPoint2D, out GeoVector2D, out GeoVector2D)

Explicit Interface Implementations

| Improve this Doc View Source

IJsonSerialize.GetObjectData(IJsonWriteData)

Declaration
void IJsonSerialize.GetObjectData(IJsonWriteData data)
Parameters
Type Name Description
IJsonWriteData data
| Improve this Doc View Source

IJsonSerialize.SetObjectData(IJsonReadData)

Declaration
void IJsonSerialize.SetObjectData(IJsonReadData data)
Parameters
Type Name Description
IJsonReadData data

Implements

ICurve2D
IQuadTreeInsertable
System.Runtime.Serialization.ISerializable
IJsonSerialize
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX