CADability dotNET
The ICurve2D type exposes the following members.
Methods
Name | Description | |
---|---|---|
AddToGraphicsPath | ||
Approximate |
Approximate this curve and return the approximation. maxError specifies the maximal
allowed error, i.e. the maximal deviation of the returned curve from this curve.
Is linesOnly ist true, only lines are returned, if linesOnly is false, lines
and circular arcs are returned. The result is usually a path consiting of lines and
arcs or lines only.
| |
Clone | ||
CloneReverse | ||
Copy |
Copies the data of the given object to this object. Both objects must be of the same type.
| |
DirectionAt |
Returns the direction of the curve at the provided normalized position.
| |
Distance |
Returns the distance of the specified point to this curve. If this curve
can be extended (e.g. a line or an arc) this method will return the distance to
the extended curve. If you need the distance to the unextended curve use MinDistance(ICurve2D).
| |
GetArea | ||
GetAreaFromPoint | ||
GetExtendedHitTest |
Returns an IQuadTreeInsertable interface. The HitTest Method of this interface
returns true if the rectangle coincides with the infinite extension of this curve
(unbounded curve). Most curves are not extendable and therefore simply return "this".
| |
GetFused |
Returnes a new curve of the same type which is the fusion of this curve with the provided curve, e.g. two
overlapping lines build a longer line. Returnes null if the fusion is not possible (e.g. a line and an arc
or two lines with different direction)
| |
GetInflectionPoints |
Returns a list of onflection points of this curve. Teh list might be empty
| |
GetModified |
Returns a ICurve which is this curve modified by m. The curve can be of different type, e.g. a
Circle may return an Ellpse
| |
GetSelfIntersections |
Returns pairs of double values. Each pair defines the two parameters of the curve
of a self intersection. The result is either empty or has an even number of double values.
| |
Intersect(ICurve2D) | ||
Intersect(GeoPoint2D, GeoPoint2D) | ||
IsParameterOnCurve |
Determines, whether the given parameter denotes a point inside the bounds of the curve.
i.e. the parameter must be greater or equal to 0.0 and less than or equal 1.0.
The actual interval is a little bit extended according to the eps value.
| |
IsValidParameter |
Determines, whether the given parameter is valid for this curve. Some curves are restricted to a
parameterrange by their nature.
| |
MakeGeoObject | ||
MinDistance(GeoPoint2D) |
Returns the distance of the point to the curve. In opposite to Distance(GeoPoint2D)
this method will return the distance to the unextended curve
| |
MinDistance(ICurve2D) |
Returns the minimal distance between this curve and the other curve given in the parameter.
If the two curves intersect, the minimal distance ist 0.
| |
Move |
Move the curve by the given offset
| |
Parallel | ||
PerpendicularFoot |
Calculates the foot points of the perpendicular projection of the given point
on the curve. Perpendicular foot points are points, where the direction of the
curve ist perpendicular to the line that connects foot-point to the given point.
| |
PointAt |
Returns the point of the curve at the provided normalized position
| |
PositionAtLength | ||
PositionOf |
Returns the position of point p on the curve: 0.0 corresponds to the StartPoint
1.0 to the EndPoint
| |
Project |
The 2d-curve is assumed to reside in plane "fromPlane". It will be projected
perpendicular onto the plane "toPlane".
| |
ReinterpretParameter |
Some curves especially Arc and EllipseArc have two possibilities to define
a parameter of a point outside the curve: either as a parameter less than 0
which means ahead of the startpoint or as a parameter greater than 1 behind
the endpoint. This method brings the given parameter into the other system,
that means a parameter less than 0 will become greater than 1 and vice versa.
Parameters between 0 and 1 will remain unchanged as well as most curves
will return false, because the double interpretation isnt meaningfull.
| |
Reverse |
Reverses the direction of this curve
| |
Split | ||
TangentPoints |
Calculates the points where the direction of the curve is parallel to the direction
from the given point to the calculated point. For circles and ellipses it reveals all
possible solutions, for other curves (e.g. BSpline) it reveals only the closest
solution to the point "CloseTo".
| |
TangentPointsToAngle(GeoVector2D) |
Calculates the points where the direction of the curve is parallel to the given direction.
Returns all possible position within the curve (not the extended curve)
| |
TangentPointsToAngle(Angle, GeoPoint2D) |
Calculates the points where the direction of the curve is parallel to the direction
of the given angle. For circles and ellipses it reveals all
possible solutions, for other curves (e.g. BSpline) it reveals only the closest
solution to the point "CloseTo".
| |
Trim | ||
TryPointDeriv2At |
Tries to get the point and the first and second derivative of the curve at the specified position. (0..1)
Some curves do not implement the second derivative and hence will return false.
|
Properties
Name | Description | |
---|---|---|
EndDirection |
Returns the direction of the curve at the endpoint.
| |
EndPoint |
Sets or gets the endpoint of the curve. When the endpoint is set, the startpoint remains unchanged.
| |
IsClosed |
Determins wether this curve is a closed curve (e.g. a circle)
| |
Length |
Returns the length of the curve
| |
MiddleDirection |
Returns the direction of the curve at its middle point.
| |
StartDirection |
Returns the direction of the curve at the startpoint.
| |
StartPoint |
Sets or gets the startpoint. The endpoint remains unchanged when setting the startpoint.
| |
Sweep | ||
UserData |