Show / Hide Table of Contents

Class Arc2D

Describes a circular Arc in 2D. Implements the ICurve2D interface.

Inheritance
System.Object
GeneralCurve2D
Circle2D
Arc2D
Implements
ICurve2D
IQuadTreeInsertable
System.Runtime.Serialization.ISerializable
Inherited Members
Circle2D.Center
Circle2D.Radius
Circle2D.Move(Double, Double)
Circle2D.TangentPoints(GeoPoint2D, GeoPoint2D)
Circle2D.Distance(GeoPoint2D)
Circle2D.Split(Double)
Circle2D.PerpendicularFoot(GeoPoint2D)
Circle2D.GetAreaFromPoint(GeoPoint2D)
GeneralCurve2D.MiddleDirection
GeneralCurve2D.PositionAtLength(Double)
GeneralCurve2D.MinDistance(GeoPoint2D)
GeneralCurve2D.TangentPointsToAngle(Angle, GeoPoint2D)
GeneralCurve2D.IsParameterOnCurve(Double)
GeneralCurve2D.IsValidParameter(Double)
GeneralCurve2D.GetSelfIntersections()
GeneralCurve2D.GetInflectionPoints()
GeneralCurve2D.UserData
GeneralCurve2D.TryPointDeriv2At(Double, GeoPoint2D, GeoVector2D, GeoVector2D)
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 Arc2D : Circle2D, ICurve2D, IQuadTreeInsertable, I2DIntersectable, ISerializable

Constructors

| Improve this Doc View Source

Arc2D(GeoPoint2D, Double, Angle, SweepAngle)

Constructs a circular arc in 2D.

Declaration
public Arc2D(GeoPoint2D center, double radius, Angle start, SweepAngle sweep)
Parameters
Type Name Description
GeoPoint2D center

Center of the arc

System.Double radius

Radius of the Arc

Angle start

Startangle of the arc (x-axis is 0)

SweepAngle sweep

Sweepangle of the arc -2pi<=s<=2pi

| Improve this Doc View Source

Arc2D(GeoPoint2D, Double, GeoPoint2D, GeoPoint2D, Boolean)

Declaration
public Arc2D(GeoPoint2D center, double radius, GeoPoint2D StartPoint, GeoPoint2D EndPoint, bool counterclock)
Parameters
Type Name Description
GeoPoint2D center
System.Double radius
GeoPoint2D StartPoint
GeoPoint2D EndPoint
System.Boolean counterclock
| Improve this Doc View Source

Arc2D(SerializationInfo, StreamingContext)

Constructor required by deserialization

Declaration
protected Arc2D(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
Circle2D.EndDirection
| Improve this Doc View Source

EndParameter

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

EndPoint

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

IsClosed

Declaration
public override bool IsClosed { get; }
Property Value
Type Description
System.Boolean
Overrides
Circle2D.IsClosed
| Improve this Doc View Source

Length

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

SegmentArea

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

StartDirection

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

StartParameter

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

StartPoint

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

Sweep

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

SweepAngle

Declaration
public SweepAngle SweepAngle { get; }
Property Value
Type Description
SweepAngle

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
Circle2D.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
Circle2D.Approximate(Boolean, Double)
| Improve this Doc View Source

Clone()

Overrides Clone()

Declaration
public override ICurve2D Clone()
Returns
Type Description
ICurve2D
Overrides
Circle2D.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
Circle2D.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
Circle2D.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
Circle2D.DirectionAt(Double)
| Improve this Doc View Source

From2PointsAndTangents(GeoPoint2D, GeoVector2D, GeoPoint2D, GeoVector2D)

Declaration
public static Arc2D From2PointsAndTangents(GeoPoint2D sp, GeoVector2D sd, GeoPoint2D ep, GeoVector2D ed)
Parameters
Type Name Description
GeoPoint2D sp
GeoVector2D sd
GeoPoint2D ep
GeoVector2D ed
Returns
Type Description
Arc2D
| Improve this Doc View Source

From3Points(GeoPoint2D, GeoPoint2D, GeoPoint2D)

Declaration
public static Arc2D From3Points(GeoPoint2D sp, GeoPoint2D mp, GeoPoint2D ep)
Parameters
Type Name Description
GeoPoint2D sp
GeoPoint2D mp
GeoPoint2D ep
Returns
Type Description
Arc2D
| Improve this Doc View Source

GetArea()

Overrides GetArea()

Declaration
public override double GetArea()
Returns
Type Description
System.Double
Overrides
Circle2D.GetArea()
| 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
Circle2D.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
Circle2D.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 override 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.

Overrides
Circle2D.GetObjectData(SerializationInfo, StreamingContext)
| 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
Circle2D.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
Circle2D.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
Circle2D.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
Circle2D.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
Circle2D.MinDistance(ICurve2D)
| 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
Circle2D.Parallel(Double, Boolean, Double, Double)
| 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
Circle2D.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
Circle2D.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
Circle2D.Project(Plane, Plane)
| Improve this Doc View Source

ReinterpretParameter(ref Double)

Overrides ReinterpretParameter(ref Double)

Declaration
public override bool ReinterpretParameter(ref double p)
Parameters
Type Name Description
System.Double p
Returns
Type Description
System.Boolean
Overrides
GeneralCurve2D.ReinterpretParameter(ref Double)
| Improve this Doc View Source

Reverse()

Overrides Reverse()

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

TangentPointsToAngle(GeoVector2D)

Overrides TangentPointsToAngle(GeoVector2D)

Declaration
public override double[] TangentPointsToAngle(GeoVector2D direction)
Parameters
Type Name Description
GeoVector2D direction
Returns
Type Description
System.Double[]
Overrides
Circle2D.TangentPointsToAngle(GeoVector2D)
| Improve this Doc View Source

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
Circle2D.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
Circle2D.Trim(Double, Double)

Implements

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