Hide menu
Loading...
Searching...
No Matches

Defines 2D Bezier curve. More...

Inheritance diagram for cadex.Geom.BezierCurve2d:
cadex.Geom.Curve2d cadex.Geom.Geometry cadex.BaseObject

Public Member Functions

 BezierCurve2d (global::System.IntPtr cPtr, bool cMemoryOwn)
 
 BezierCurve2d (cadex.Collections.Point2dList thePoles)
 Creates a polynomial Bezier curve.
 
 BezierCurve2d (cadex.Collections.Point2dList thePoles, cadex.Collections.DoubleList thePoleWeights)
 Creates a rational Bezier curve.
 
int Degree ()
 Returns the value equal to NumberOfPoles() - 1.
 
int NumberOfPoles ()
 Returns the value specified in the constructor.
 
cadex.Geom.Point2d Pole (int theIndex)
 theIndex must be in the range [1, NumberOfPoles()].
 
cadex.Collections.Point2dList Poles ()
 thePoles must point to a buffer in memory with at least NumberOfPoles() preallocated values.
 
double Weight (int theIndex)
 theIndex must be in the range [1, NumberOfPoles()].
 
cadex.Collections.DoubleList Weights ()
 theWeights must point to a buffer in memory with at least NumberOfPoles() preallocated values.
 
- Public Member Functions inherited from cadex.Geom.Curve2d
 Curve2d (global::System.IntPtr cPtr, bool cMemoryOwn)
 
cadex.Geom.CurveType Type ()
 Returns a curve type.
 
cadex.Geom.Continuity Continuity ()
 Returns a continuity type of the curve.
 
cadex.Geom.Point2d Value (double theParameter)
 Evaluates a point on the curve.
 
cadex.Geom.Direction2d Normal (double theParameter)
 Returns the normal direction theNormal of parameter theParam.
 
double Curvature (double theParameter)
 Returns the curvature value of parameter theParam.
 
double UMin ()
 Returns a minimum parameter of a definition domain.
 
double UMax ()
 Returns a maximum parameter of a definition domain.
 
void Domain (out double theUMin, out double theUMax)
 Returns a definition domain.
 
bool IsTrimmed ()
 Returns whether curve is trimmed or not.
 
void SetTrim (double theFirst, double theLast)
 Trims curve with [theFirst, theLast] section.
 
void D0 (double theParameter, cadex.Geom.Point2d theValue)
 Throws exception only for the OffsetCurve if it is not possible to compute the current point.
 
void D1 (double theParameter, cadex.Geom.Point2d theValue, cadex.Geom.Vector2d theD1)
 Returns the point theValue of parameter theParam and the first derivative theD1.
 
void D2 (double theParameter, cadex.Geom.Point2d theValue, cadex.Geom.Vector2d theD1, cadex.Geom.Vector2d theD2)
 Returns the point theValue of parameter theParam and second derivatives theD1 and theD2.
 
bool DN (double theParameter, uint theDerivativeOrder, cadex.Geom.Point2d theValue, cadex.Collections.Vector2dList theD)
 Returns true if calculation was passed succsesfully, the returned vectors gives the value of the derivative for the order of derivation theDerivativeOrder.
 
void Transform (cadex.Geom.Transformation2d theTransformation)
 Results depends on the actual curve type.
 
cadex.Geom.Curve2d Transformed (cadex.Geom.Transformation2d theTransformation)
 The contents of this object is not modified.
 
- Public Member Functions inherited from cadex.Geom.Geometry
 Geometry (global::System.IntPtr cPtr, bool cMemoryOwn)
 
- Public Member Functions inherited from cadex.BaseObject
 BaseObject (global::System.IntPtr cPtr, bool cMemoryOwn)
 
void Dispose ()
 
bool IsNull ()
 
ulong Id ()
 Return unique identifier of public object.
 
bool IsEqual (cadex.BaseObject theObj)
 
override int GetHashCode ()
 
override bool Equals (System.Object o)
 

Static Public Member Functions

static new bool CompareType (cadex.BaseObject theObject)
 
static cadex.Geom.BezierCurve2d Cast (cadex.Geom.Curve2d theBase)
 
- Static Public Member Functions inherited from cadex.Geom.Curve2d
static new bool CompareType (cadex.BaseObject theObject)
 
static cadex.Geom.Curve2d Cast (cadex.Geom.Geometry theBase)
 
- Static Public Member Functions inherited from cadex.Geom.Geometry
static bool CompareType (cadex.BaseObject theObject)
 
static cadex.Geom.Geometry Cast (cadex.BaseObject theBase)
 

Protected Member Functions

override void Dispose (bool disposing)
 
- Protected Member Functions inherited from cadex.Geom.Curve2d
override void Dispose (bool disposing)
 
- Protected Member Functions inherited from cadex.Geom.Geometry
override void Dispose (bool disposing)
 

Detailed Description

Defines 2D Bezier curve.

For detailed description refer to 3D counterpart BezierCurve.

Examples
exploring/brep_geometry/Program.cs, and exploring/brep_geometry/main.cxx.

Constructor & Destructor Documentation

◆ BezierCurve2d() [1/2]

cadex.Geom.BezierCurve2d.BezierCurve2d ( cadex.Collections.Point2dList thePoles)
inline

Creates a polynomial Bezier curve.

thePoles and must belong to [2, 26]. Created curve has a degree equal to theNumberOfPoles - 1. Constructor.

◆ BezierCurve2d() [2/2]

cadex.Geom.BezierCurve2d.BezierCurve2d ( cadex.Collections.Point2dList thePoles,
cadex.Collections.DoubleList thePoleWeights )
inline

Creates a rational Bezier curve.

thePoles and thePoleWeights and must belong to [2, 26]. Created curve has a degree equal to theNumberOfPoles - 1.

Poles are to be provided after division by their weights. Constructor.

Member Function Documentation

◆ Degree()

int cadex.Geom.BezierCurve2d.Degree ( )
inline

Returns the value equal to NumberOfPoles() - 1.

Returns degree.

Examples
exploring/brep_geometry/Program.cs, and exploring/brep_geometry/main.cxx.

◆ Dispose()

override void cadex.Geom.BezierCurve2d.Dispose ( bool disposing)
inlineprotectedvirtual

Reimplemented from cadex.BaseObject.

◆ NumberOfPoles()

int cadex.Geom.BezierCurve2d.NumberOfPoles ( )
inline

Returns the value specified in the constructor.

Returns number of poles.

Examples
exploring/brep_geometry/Program.cs, and exploring/brep_geometry/main.cxx.

◆ Pole()

cadex.Geom.Point2d cadex.Geom.BezierCurve2d.Pole ( int theIndex)
inline

theIndex must be in the range [1, NumberOfPoles()].

See also
Weight(). Returns a pole value.
Examples
exploring/brep_geometry/Program.cs, and exploring/brep_geometry/main.cxx.

◆ Poles()

cadex.Collections.Point2dList cadex.Geom.BezierCurve2d.Poles ( )
inline

thePoles must point to a buffer in memory with at least NumberOfPoles() preallocated values.

Returns NumberOfPoles().

See also
Weights(). Populates a vector of poles.

◆ Weight()

double cadex.Geom.BezierCurve2d.Weight ( int theIndex)
inline

theIndex must be in the range [1, NumberOfPoles()].

For polynomial Bezier behavior is undefined.

See also
Pole(). Returns a weight value.
Examples
exploring/brep_geometry/Program.cs, and exploring/brep_geometry/main.cxx.

◆ Weights()

cadex.Collections.DoubleList cadex.Geom.BezierCurve2d.Weights ( )
inline

theWeights must point to a buffer in memory with at least NumberOfPoles() preallocated values.

Returns NumberOfPoles().

For polynomial Bezier does nothing and returns 0.

See also
Poles(). Populates a vector of weights.