Show / Hide Table of Contents

Class EllipseArc2D

Describes an arc of an ellipse in 2D. Implements the ICurve2D interface

Inheritance
System.Object
GeneralCurve2D
Ellipse2D
EllipseArc2D
Implements
ICurve2D
IQuadTreeInsertable
System.Runtime.Serialization.ISerializable
System.Runtime.Serialization.IDeserializationCallback
Inherited Members
Ellipse2D.FromFivePoints(GeoPoint2D[], Boolean)
Ellipse2D.FromFivePoints(GeoPoint2D[])
Ellipse2D.TangentPoints(GeoPoint2D, GeoPoint2D)
Ellipse2D.PerpendicularFoot(GeoPoint2D)
Ellipse2D.ClosestPerpendicularFoot(GeoPoint2D)
Ellipse2D.Distance(GeoPoint2D)
Ellipse2D.MinDistance(ICurve2D)
Ellipse2D.Split(Double)
Ellipse2D.Move(Double, Double)
Ellipse2D.Center
Ellipse2D.MajorAxis
Ellipse2D.MinorAxis
GeneralCurve2D.MiddleDirection
GeneralCurve2D.PositionAtLength(Double)
GeneralCurve2D.GetAreaFromPoint(GeoPoint2D)
GeneralCurve2D.Parallel(Double, Boolean, Double, Double)
GeneralCurve2D.TangentPointsToAngle(Angle, GeoPoint2D)
GeneralCurve2D.TangentPointsToAngle(GeoVector2D)
GeneralCurve2D.IsValidParameter(Double)
GeneralCurve2D.GetSelfIntersections()
GeneralCurve2D.GetInflectionPoints()
GeneralCurve2D.Approximate(Boolean, Double)
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)
System.Object.ToString()
Namespace: CADability.Curve2D
Assembly: CADability.dll
Syntax
[Serializable]
public class EllipseArc2D : Ellipse2D, ICurve2D, IQuadTreeInsertable, I2DIntersectable, ISerializable, IDeserializationCallback

Constructors

| Improve this Doc View Source

EllipseArc2D(GeoPoint2D, GeoVector2D, GeoVector2D, Double, Double, GeoPoint2D, GeoPoint2D, GeoPoint2D, GeoPoint2D)

Declaration
public EllipseArc2D(GeoPoint2D center, GeoVector2D majorAxis, GeoVector2D minorAxis, double startPar, double sweepPar, GeoPoint2D left, GeoPoint2D right, GeoPoint2D bottom, GeoPoint2D top)
Parameters
Type Name Description
GeoPoint2D center
GeoVector2D majorAxis
GeoVector2D minorAxis
System.Double startPar
System.Double sweepPar
GeoPoint2D left
GeoPoint2D right
GeoPoint2D bottom
GeoPoint2D top
| Improve this Doc View Source

EllipseArc2D(SerializationInfo, StreamingContext)

Constructor required by deserialization

Declaration
protected EllipseArc2D(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

axisStart

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

axisSweep

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

EndDirection

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

EndPoint

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

IsClosed

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

Length

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

StartDirection

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

StartPoint

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

Sweep

Declaration
public override double Sweep { get; }
Property Value
Type Description
System.Double
Overrides
Ellipse2D.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
Ellipse2D.AddToGraphicsPath(GraphicsPath, Boolean)
| Improve this Doc View Source

Clone()

Overrides Clone()

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

Create(GeoPoint2D, GeoVector2D, GeoVector2D, GeoPoint2D, GeoPoint2D, Boolean)

Declaration
public static EllipseArc2D Create(GeoPoint2D center, GeoVector2D majorAxis, GeoVector2D minorAxis, GeoPoint2D startPoint, GeoPoint2D endPoint, bool counterClock)
Parameters
Type Name Description
GeoPoint2D center
GeoVector2D majorAxis
GeoVector2D minorAxis
GeoPoint2D startPoint
GeoPoint2D endPoint
System.Boolean counterClock
Returns
Type Description
EllipseArc2D
| 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
Ellipse2D.DirectionAt(Double)
| Improve this Doc View Source

GetArea()

Overrides GetArea()

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

GetComplement()

Declaration
public EllipseArc2D GetComplement()
Returns
Type Description
EllipseArc2D
| 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
Ellipse2D.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
Ellipse2D.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
Ellipse2D.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
Ellipse2D.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
Ellipse2D.Intersect(GeoPoint2D, GeoPoint2D)
| Improve this Doc View Source

IsParameterOnCurve(Double)

Overrides IsParameterOnCurve(Double)

Declaration
public override bool IsParameterOnCurve(double par)
Parameters
Type Name Description
System.Double par
Returns
Type Description
System.Boolean
Overrides
GeneralCurve2D.IsParameterOnCurve(Double)
| 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
Ellipse2D.MakeGeoObject(Plane)
| Improve this Doc View Source

MakePositivOriented()

Declaration
public void MakePositivOriented()
| Improve this Doc View Source

MinDistance(GeoPoint2D)

Overrides MinDistance(GeoPoint2D)

Declaration
public override double MinDistance(GeoPoint2D p)
Parameters
Type Name Description
GeoPoint2D p
Returns
Type Description
System.Double
Overrides
Ellipse2D.MinDistance(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
Ellipse2D.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
Ellipse2D.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
Ellipse2D.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
Ellipse2D.Reverse()
| 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
Ellipse2D.Trim(Double, Double)

Explicit Interface Implementations

| Improve this Doc View Source

IDeserializationCallback.OnDeserialization(Object)

Declaration
void IDeserializationCallback.OnDeserialization(object sender)
Parameters
Type Name Description
System.Object sender

Implements

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