[mxcad_3d API Document](../README. md)/Mx3dGeomBizierCurve
Class: Mx3dGeomBezierCurve
Mx3dGeomBezierCurve represents the Bezier curve and provides a series of methods to manipulate and query the properties of the Bezier curve.
Hierarchy
↳
Mx3dGeomBezierCurve
Table of contents
Constructors
Methods
- Continuity
- Copy
- D0
- D1
- D2
- D3
- DN
- Degree
- DynamicType
- Edge
- EndPoint
- FirstParameter
- Increase
- InsertPoleAfter
- InsertPoleBefore
- IsCN
- IsClosed
- IsPeriodic
- IsRational
- LastParameter
- MirrorByAxis
- MirrorByCSYSR
- MirrorByPoint
- MirroredByAxis
- MirroredByCSYSR
- MirroredByPoint
- NbPoles
- OffsetCurve
- Period
- Pole
- Poles
- RemovePole
- Reverse
- Reversed
- ReversedParameter
- Rotate
- Rotated
- Scale
- Scaled
- Segment
- SetPole
- SetWeight
- StartPoint
- Transform
- Transformed
- TranslateBy2Points
- TranslateByVec
- TranslatedBy2Points
- TranslatedByVec
- Value
- Weight
- Weights
- Wire
- DownCast
Constructors
constructor
• new Mx3dGeomBezierCurve(CurvePoles
, PoleWeights?
)
Constructor, create a Bezier curve.
Parameters
Name | Type | Description |
---|---|---|
CurveHoles | [Mx3dGePoint] (Mx3dGePoint. md) [] | Control point array |
PoleWeights? | Number [] | Control point weight array (optional) |
Overrides
Mx3dGeomBoundedCurve.constructor
Methods
Continuity
▸ Continuity(): MxGAShapeEnum
Obtain the continuity type of the curve.
Returns
The continuity type of the curve.
Copy
▸ Copy(): Mx3dGeomObject
Copy the curve object.
Returns
The copied curve object.
D0
▸ D0(U
, P
): void
Calculate the point of the curve at the specified parameter value.
Parameters
Name | Type | Description |
---|---|---|
The parameter value of 'U' | 'number' | |
P | [Mx3dGePoint] (Mx3dGePoint. md) | Calculated point |
Returns
void
D1
▸ D1(U
, P
, V1
): void
Calculate the point and its first derivative of the curve at the specified parameter value.
Parameters
Name | Type | Description |
---|---|---|
The parameter value of 'U' | 'number' | |
P | [Mx3dGePoint] (Mx3dGePoint. md) | Calculated point |
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Calculated first derivative |
Returns
void
D2
▸ D2(U
, P
, V1
, V2
): void
Calculate the points and their first and second derivatives of the curve at the specified parameter values.
Parameters
Name | Type | Description |
---|---|---|
The parameter value of 'U' | 'number' | |
P | [Mx3dGePoint] (Mx3dGePoint. md) | Calculated point |
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Calculated first derivative |
V2 | [Mx3dGeVec] (Mx3dGeVec. md) | Calculated second derivative |
Returns
void
D3
▸ D3(U
, P
, V1
, V2
, V3
): void
Calculate the points and their first, second, and third derivatives of the curve at the specified parameter values.
Parameters
Name | Type | Description |
---|---|---|
The parameter value of 'U' | 'number' | |
P | [Mx3dGePoint] (Mx3dGePoint. md) | Calculated point |
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Calculated first derivative |
V2 | [Mx3dGeVec] (Mx3dGeVec. md) | Calculated second derivative |
V3 | [Mx3dGeVec] (Mx3dGeVec. md) | Calculated third derivative |
Returns
void
DN
▸ DN(U
, N
): Mx3dGeVec
Calculate the Nth derivative of the curve at the specified parameter values.
Parameters
Name | Type | Description |
---|---|---|
The parameter value of 'U' | 'number' | |
N | number | The order of the derivative |
Returns
Calculate the Nth derivative.
Degree
▸ Degree(): number
Obtain the order of the curve.
Returns
number
The order of the curve.
DynamicType
▸ DynamicType(): string
Return the dynamic type of the object.
Returns
string
A dynamically typed string.
Overrides
Mx3dGeomBoundedCurve.DynamicType
Edge
▸ Edge(p1
, p2
): Mx3dShapeEdge
Create an edge.
Parameters
Name | Type | Description |
---|---|---|
P1 | Number | The starting parameter of the edge |
P2 | number | End parameter of edge |
Returns
The created edge object.
EndPoint
▸ EndPoint(): Mx3dGePoint
Obtain the endpoint of the curve.
Returns
The endpoint of the curve.
FirstParameter
▸ FirstParameter(): number
Obtain the first parameter value of the curve.
Returns
number
The first parameter value of the curve.
Increase
▸ Increase(Degree
): void
Increase the order of Bezier curves.
Parameters
Name | Type | Description |
---|---|---|
Degree | number | New order |
Returns
void
InsertPoleAfter
▸ InsertPoleAfter(Index
, P
, Weight?
): void
Insert a control point after specifying the index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the insertion point |
P | [Mx3dGePoint] (Mx3dGePoint. md) | New control point |
Weight? | Number | The weight of the new control point (optional) |
Returns
void
InsertPoleBefore
▸ InsertPoleBefore(Index
, P
, Weight?
): void
Insert a control point before specifying the index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the insertion point |
P | [Mx3dGePoint] (Mx3dGePoint. md) | New control point |
Weight? | Number | The weight of the new control point (optional) |
Returns
void
IsCN
▸ IsCN(N
): boolean
Check the continuity of the curve.
Parameters
Name | Type | Description |
---|---|---|
N | number | The order of continuity |
Returns
boolean
Does the curve have continuity of a specified order.
IsClosed
▸ IsClosed(): boolean
Check if the curve is closed.
Returns
boolean
Is the curve closed.
IsPeriodic
▸ IsPeriodic(): boolean
Check if the parameterization of the curve is periodic.
Returns
boolean
Is the curve periodic.
IsRational
▸ IsRational(): boolean
Check if the curve is a rational Bezier curve.
Returns
boolean
Is the curve reasonable.
LastParameter
▸ LastParameter(): number
Obtain the last parameter value of the curve.
Returns
number
The last parameter value of the curve.
MirrorByAxis
▸ MirrorByAxis(A1
): void
Mirror transform geometric objects through axes.
Parameters
Name | Type | Description |
---|---|---|
A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object |
Returns
void
Inherited from
Mx3dGeomBoundedCurve.MirrorByAxis
MirrorByCSYSR
▸ MirrorByCSYSR(A2
): void
Mirror transform geometric objects using a right-handed coordinate system.
Parameters
Name | Type | Description |
---|---|---|
A2 | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | Right hand coordinate system object |
Returns
void
Inherited from
Mx3dGeomBoundedCurve.MirrorByCSYSR
MirrorByPoint
▸ MirrorByPoint(P
): void
Mirror transform geometric objects through points.
Parameters
Name | Type | Description |
---|---|---|
P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object |
Returns
void
Inherited from
Mx3dGeomBoundedCurve.MirrorByPoint
MirroredByAxis
▸ MirroredByAxis(A1
): Mx3dGeomBezierCurve
Return the new geometric object transformed through axis mirroring.
Parameters
Name | Type | Description |
---|---|---|
A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object |
Returns
New geometric objects.
Inherited from
Mx3dGeomBoundedCurve.MirroredByAxis
MirroredByCSYSR
▸ MirroredByCSYSR(A2
): Mx3dGeomBezierCurve
Return the new geometric object after mirror transformation through the right-handed coordinate system.
Parameters
Name | Type | Description |
---|---|---|
A2 | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | Right hand coordinate system object |
Returns
New geometric objects.
Inherited from
Mx3dGeomBoundedCurve.MirroredByCSYSR
MirroredByPoint
▸ MirroredByPoint(P
): Mx3dGeomBezierCurve
Return the new geometric object after point mirror transformation.
Parameters
Name | Type | Description |
---|---|---|
P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object |
Returns
New geometric objects.
Inherited from
Mx3dGeomBoundedCurve.MirroredByPoint
NbPoles
▸ NbPoles(): number
Obtain the number of control points for the curve.
Returns
number
The number of control points on the curve.
OffsetCurve
▸ OffsetCurve(Offset
, V
, isNotCheckC0
): Mx3dShapeEdge
Create an offset curve.
Parameters
Name | Type | Description |
---|---|---|
Offset | Number | Offset |
The offset direction is perpendicular to the offset direction | ||
IsNotCheckC0 | boolean | Check for C0 continuity |
Returns
The created offset curve.
Period
▸ Period(): number
Return the period of the curve.
Returns
number
The period of the curve.
Inherited from
Pole
▸ Pole(Index
): Mx3dGePoint
Retrieve the control point of the specified index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the control point |
Returns
Designated control points.
Poles
▸ Poles(): Mx3dGePoint
[]
Obtain all control points.
Returns
An array of all control points.
RemovePole
▸ RemovePole(Index
): void
Delete the control point of the specified index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the control point to be deleted |
Returns
void
Reverse
▸ Reverse(): void
Reverse the parameter direction of Bezier curve.
Returns
void
Reversed
▸ Reversed(): Mx3dGeomBezierCurve
Return the new geometric curve object in reverse.
Returns
New geometric curve object.
Inherited from
ReversedParameter
▸ ReversedParameter(U
): number
Retrieve the inverted parameter values.
Parameters
Name | Type | Description |
---|---|---|
U | number | Original parameter value |
Returns
number
Inverted parameter values.
Rotate
▸ Rotate(A1
, Ang
): void
Rotate geometric objects.
Parameters
Name | Type | Description |
---|---|---|
A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object |
Ang | number | Rotation angle |
Returns
void
Inherited from
Rotated
▸ Rotated(A1
, Ang
): Mx3dGeomBezierCurve
Return the rotated new geometric object.
Parameters
Name | Type | Description |
---|---|---|
A1 | [Mx3dGeAxis] (Mx3dGeAxis. md) | Axis object |
Ang | number | Rotation angle |
Returns
New geometric objects.
Inherited from
Scale
▸ Scale(P
, S
): void
Scale geometric objects.
Parameters
Name | Type | Description |
---|---|---|
P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object |
S | number | scaling ratio |
Returns
void
Inherited from
Scaled
▸ Scaled(P
, S
): Mx3dGeomBezierCurve
Return the scaled new geometric object.
Parameters
Name | Type | Description |
---|---|---|
P | [Mx3dGePoint] (Mx3dGePoint. md) | Point object |
S | number | scaling ratio |
Returns
New geometric objects.
Inherited from
Segment
▸ Segment(U1
, U2
): void
Extract a portion of the Bezier curve.
Parameters
Name | Type | Description |
---|---|---|
U1 | number | Starting parameter value |
U2 | number | End parameter value |
Returns
void
SetPole
▸ SetPole(Index
, P
, Weight?
): void
Set the control point for the specified index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the control point to be set |
P | [Mx3dGePoint] (Mx3dGePoint. md) | New control point |
Weight? | Number | The weight of the new control point (optional) |
Returns
void
SetWeight
▸ SetWeight(Index
, Weight
): void
Set the control point weights for the specified index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the control point to be set |
Weight | number | New weight values |
Returns
void
StartPoint
▸ StartPoint(): Mx3dGePoint
Obtain the starting point of the curve.
Returns
The starting point of the curve.
Transform
▸ Transform(T
): void
Apply transformations to curves.
Parameters
Name | Type | Description |
---|---|---|
T | [Mx3dGetStrf] (Mx3dGetStrf. md) | Transform matrix |
Returns
void
Transformed
▸ Transformed(T
): Mx3dGeomBezierCurve
Return the transformed new geometric object.
Parameters
Name | Type | Description |
---|---|---|
T | [Mx3dGetStrf] (Mx3dGetStrf. md) | Transform the object |
Returns
New geometric objects.
Inherited from
Mx3dGeomBoundedCurve.Transformed
TranslateBy2Points
▸ TranslateBy2Points(P1
, P2
): void
Translate geometric objects through two points.
Parameters
Name | Type | Description |
---|---|---|
P1 | [Mx3dGePoint] (Mx3dGePoint. md) | Starting point object |
P2 | [Mx3dGePoint] (Mx3dGePoint. md) | End point object |
Returns
void
Inherited from
Mx3dGeomBoundedCurve.TranslateBy2Points
TranslateByVec
▸ TranslateByVec(V
): void
Translate geometric objects through vectors.
Parameters
Name | Type | Description |
---|---|---|
V | [Mx3dGeVec] (Mx3dGeVec. md) | Vector object |
Returns
void
Inherited from
Mx3dGeomBoundedCurve.TranslateByVec
TranslatedBy2Points
▸ TranslatedBy2Points(P1
, P2
): Mx3dGeomBezierCurve
Return the new geometric object after translating through two points.
Parameters
Name | Type | Description |
---|---|---|
P1 | [Mx3dGePoint] (Mx3dGePoint. md) | Starting point object |
P2 | [Mx3dGePoint] (Mx3dGePoint. md) | End point object |
Returns
New geometric objects.
Inherited from
Mx3dGeomBoundedCurve.TranslatedBy2Points
TranslatedByVec
▸ TranslatedByVec(V
): Mx3dGeomBezierCurve
Return the new geometric object after vector translation.
Parameters
Name | Type | Description |
---|---|---|
V | [Mx3dGeVec] (Mx3dGeVec. md) | Vector object |
Returns
New geometric objects.
Inherited from
Mx3dGeomBoundedCurve.TranslatedByVec
Value
▸ Value(U
): Mx3dGePoint
Return the point at the given parameter U.
Parameters
Name | Type | Description |
---|---|---|
The parameter value of 'U' | 'number' |
Returns
The point object at the given parameter.
Inherited from
Weight
▸ Weight(Index
): number
Retrieve the control point weights for the specified index.
Parameters
Name | Type | Description |
---|---|---|
Index | Number | The index of the control point |
Returns
number
Designated control point weights.
Weights
▸ Weights(): number
[]
Obtain the weights of all control points.
Returns
number
[]
An array of all control point weights.
Wire
▸ Wire(): Mx3dShapeWire
Create a line.
Returns
The created line object.
DownCast
▸ Static
DownCast(theObject
): Mx3dGeomBezierCurve
Convert parent class object to Mx3dGeomBizierCurve class object
Parameters
Name | Type | Description |
---|---|---|
TheObject | [Mx3dGeomObject] (Mx3dGeomObject. md) | Parent class object |
Returns
Mx3dGeomBizierCurve class object