Class vdArc
- Namespace
- VectorDraw.Professional.vdFigures
- Assembly
- VectorDraw.Professional.dll
Represents a circular arc segment used by the VectorDraw document model.
public class vdArc : vdCurve, IDisposable, IVDSerialise, IvdHatchFigure, IBaseObject
- Inheritance
-
vdArc
- Implements
- Inherited Members
Examples
// Create a quarter-circle arc centered at the origin
var arc = new vdArc(document)
{
Center = new gPoint(0.0, 0.0, 0.0),
Radius = 10.0,
StartAngle = 0.0,
EndAngle = Math.PI / 2.0
};
document.Model.Entities.AddItem(arc);
Remarks
A vdArc is defined by a center point, a radius and start/end angles (in radians). The geometry of the arc is stored in the world coordinate system (WCS). The class supports hatch filling, grip editing, intersection testing, splitting, breaking and conversion to other curve types (for example vdPolyline and vdEllipse).
Modifying geometric properties (Center, Radius, StartAngle, EndAngle) raises document modification events and callers should invoke Update() when required so dependent state (bounding box, cached sample points, hatch internals) is recalculated.
Constructors
- vdArc()
Initializes a new instance of the vdArc object.
- vdArc(vdDocument)
Initializes a new instance of the vdArc object and registers it to the passed Document.
- vdArc(vdDocument, gPoint, double, double, double)
Initializes a new instance of the vdArc object and registers it to the passed Document.
Properties
- BoundingBox
Gets the Bounding Box of the vdArc object in WorldCoordinate System.
- Center
Get/Set the Center of the vdArc object.
- ECSMatrix
Gets the transformation Matrix that converts coordinates from the object's local coordinate system (object coordinate system, OCS) to the World Coordinate System (WCS).
- EndAngle
Get/Set the end angle of the vdArc object.
- HatchProperties
Get/Set the hatch properties of the vdArc object.
- Radius
Get/Set the radius of the vdArc object.
- StartAngle
Get/Set the start angle of the vdArc object.
Methods
- AreSegmentEqual(object)
Returns True if Center , StartAngle , EndAngle are equal using Globals default equalities.
- Area()
Calculates the enclosed area of the vdArc object in Drawing Units.
- AsEllipse()
Returns a vdEllipse object with the same properties as this vdArc.
- AsPolyline()
Create a vdPolyline object with the same properties as the this object.
- Break(gPoint, gPoint, out vdFigure)
Breaks the vdArc into two or one subarcs.Deletes the part that is between p1,p2.
- DeSerialize(DeSerializer, string, object)
This Function is called foreach field name of the vdArc object when opening in vdml format.
- Draw(vdRender)
Called in order to draw the object in a specified vdRender object.
- Explode()
If the vdArc object has hatchproperties the explode method creates a vdPolyhatch object.
- Fillet(double, ref vdCurve, gPoint, gPoint, out vdArc)
Fillets the edges between arcs and lines.
- GetCompareHash()
Returns a unique 32 bit integer value according to the object type and its properties values
- GetGripPoints()
A function returning the grip points of the object.
- GetSamplePoints(int, double)
Returns a list of points on the vdArc object from the start to the end point of the curve.
- GetValidGripPointsItems()
Returns the number of valid grip points of the object. Must return the same number of points as the GetGripPoints() method.
- InitializeProperties()
Resets the properties of the vdArc object to the Default values.
- InternalSetOwner(vdBaseObject)
Internally used only.
Set the object owner
- IntersectWith(vdFigure, VdConstInters, gPoints)
Finds the intersection points of an object with another object.
- Length()
Calculates the length of the vdArc object.
- MatchProperties(vdPrimary, vdDocument)
Matches all the common properties from an object and sets them to this object.
- MoveGripPointsAt(Int32Array, double, double, double)
This function is intended to be called during a grip edit of the vdArc object.
- PointOnCurve(gPoint, bool)
Returns if a point belongs to a vdArc object.
- Serialize(Serializer)
This Function is called when saving the vdArc object to vdml format.
- Split(gPoint, vdSelection)
Splits the Arc into two newlly created arcs devided by the passed point.
- TestOffsetSide(gPoint)
Tests if a point is inside a vdArc or not.
- ToMesh(int)
Converts the vdArc into a vdPolyface object.
- ToString()
Gets a System.String that represents the type of the vdArc Object.
- Transformby(Matrix)
Transforms all geometrical properties of this object by the specified Matrix.
- Update()
Updates the object after change of properties.
- getEndParam()
Return the end parameter for the vdArc object.
- getFirstOffsetParam()
Get a value representing the start angle of the vdArc object.
- getOffsetCurve(double)
Creates a new vdArc object at a specified distance and in the same plane with the existing object.
- getOsnapPoints(Matrix, OsnapMode, gPoint, gPoint, int, OsnapPoints)
Overrrides the getOsnapPoints(Matrix, OsnapMode, gPoint, gPoint, int, OsnapPoints).
- getParamAtDist(double)
Get the parameter at a specified distance.
- getParamAtPoint(gPoint)
Returns the parameter of the vdArc object at the specified point.
- getPointAtParam(double)
Get a point of the vdArc object at a given param distance.
- getStartParam()
Returns the start parameter for the vdArc object.