Skip to content
On this page

mxcad_3d API 文档 / Mx3dGeomBSplineCurve

Class: Mx3dGeomBSplineCurve

代表一个B样条曲线。 该类继承自Mx3dGeomBoundedCurve并封装了B样条曲线的操作和属性。

Hierarchy

Table of contents

Constructors

Methods

Constructors

constructor

new Mx3dGeomBSplineCurve(Poles, Knots, Multiplicities, Degree)

构造函数用于创建一个B样条曲线。

Parameters

NameTypeDescription
PolesMx3dGePoint[]控制点的数组。
Knotsnumber[]节点序列的数组。
Multiplicitiesnumber[]节点的多重性。
Degreenumber曲线的阶数。

Overrides

Mx3dGeomBoundedCurve.constructor

new Mx3dGeomBSplineCurve(Poles, Weights, Knots, Multiplicities, Degree)

构造函数用于创建一个带权重的B样条曲线。

Parameters

NameTypeDescription
PolesMx3dGePoint[]控制点的数组。
Weightsnumber[]控制点的权重数组。
Knotsnumber[]节点序列的数组。
Multiplicitiesnumber[]节点的多重性。
Degreenumber曲线的阶数。

Overrides

Mx3dGeomBoundedCurve.constructor

Methods

Continuity

Continuity(): MxGAShapeEnum

获取曲线的连续性。

Returns

MxGAShapeEnum

曲线的连续性。


Copy

Copy(): Mx3dGeomObject

创建当前B样条曲线的副本。

Returns

Mx3dGeomObject

返回一个新的B样条曲线对象。


D0

D0(U, P): void

在给定参数处计算曲线的点。

Parameters

NameTypeDescription
Unumber参数。
PMx3dGePoint结果点。

Returns

void


D1

D1(U, P, V1): void

在给定参数处计算曲线的点和一阶导数。

Parameters

NameTypeDescription
Unumber参数。
PMx3dGePoint结果点。
V1Mx3dGeVec一阶导数。

Returns

void


D2

D2(U, P, V1, V2): void

在给定参数处计算曲线的点、一阶导数和二阶导数。

Parameters

NameTypeDescription
Unumber参数。
PMx3dGePoint结果点。
V1Mx3dGeVec一阶导数。
V2Mx3dGeVec二阶导数。

Returns

void


D3

D3(U, P, V1, V2, V3): void

在给定参数处计算曲线的点、一阶导数、二阶导数和三阶导数。

Parameters

NameTypeDescription
Unumber参数。
PMx3dGePoint结果点。
V1Mx3dGeVec一阶导数。
V2Mx3dGeVec二阶导数。
V3Mx3dGeVec三阶导数。

Returns

void


DN

DN(U, N): Mx3dGeVec

在给定参数处计算曲线的N阶导数。

Parameters

NameTypeDescription
Unumber参数。
Nnumber阶数。

Returns

Mx3dGeVec

N阶导数。


Degree

Degree(): number

获取曲线的阶数。

Returns

number

曲线的阶数。


DynamicType

DynamicType(): string

返回对象的动态类型。

Returns

string

动态类型的字符串。

Overrides

Mx3dGeomBoundedCurve.DynamicType


Edge

Edge(p1, p2): Mx3dShapeEdge

获取曲线的边。

Parameters

NameTypeDescription
p1number边的起始点参数。
p2number边的终止点参数。

Returns

Mx3dShapeEdge

返回指定参数范围内的曲线边。


EndPoint

EndPoint(): Mx3dGePoint

获取曲线的终点。

Returns

Mx3dGePoint

曲线的终点。


FirstParameter

FirstParameter(): number

返回曲线的第一个参数值。 通常用于确定曲线的起始点。

Returns

number

第一个参数值。


FirstUKnotIndex

FirstUKnotIndex(): number

获取曲线的第一个节点索引。

Returns

number

第一个节点索引。


IncreaseDegree

IncreaseDegree(Degree): void

提高曲线的阶数。

Parameters

NameTypeDescription
Degreenumber新的阶数。

Returns

void


IncreaseMultiplicity

IncreaseMultiplicity(Index, M): void

提高指定索引处的节点多重性。

Parameters

NameTypeDescription
Indexnumber节点的索引。
Mnumber新的多重性。

Returns

void

IncreaseMultiplicity(I1, I2, M): void

提高指定范围内的节点多重性。

Parameters

NameTypeDescription
I1number范围起始索引。
I2number范围结束索引。
Mnumber新的多重性。

Returns

void


IncrementMultiplicity

IncrementMultiplicity(I1, I2, M): void

增量提高指定范围内的节点多重性。

Parameters

NameTypeDescription
I1number起始索引。
I2number结束索引。
Mnumber增加的多重性值。

Returns

void


InsertKnot

InsertKnot(U, M?, ParametricTolerance?, Add?): void

插入一个新的节点。

Parameters

NameTypeDescription
Unumber新节点的位置。
M?number新节点的多重性(可选)。
ParametricTolerance?number参数容差(可选)。
Add?boolean是否添加节点而不是替换(可选)。

Returns

void


InsertKnots

InsertKnots(Knots, Mults, ParametricTolerance?, Add?): void

插入多个新的节点。

Parameters

NameTypeDescription
Knotsnumber[]新节点的位置数组。
Multsnumber[]新节点的多重性数组。
ParametricTolerance?number参数容差(可选)。
Add?boolean是否添加节点而不是替换(可选)。

Returns

void


IsCN

IsCN(N): boolean

检查曲线在指定阶数下是否连续。

Parameters

NameTypeDescription
Nnumber阶数。

Returns

boolean

如果曲线在指定阶数下是连续的,则返回true;否则返回false。


IsClosed

IsClosed(): boolean

检查曲线是否闭合。

Returns

boolean

如果曲线闭合,则返回true;否则返回false。


IsEqual

IsEqual(theOther, thePreci): boolean

比较当前曲线与另一条曲线的相等性。

Parameters

NameTypeDescription
theOtherMx3dGeomBSplineCurve另一个B样条曲线对象。
thePrecinumber比较精度。

Returns

boolean

如果两条曲线在指定精度下相等,返回true;否则返回false。


IsG1

IsG1(theTf, theTl, theAngTol): boolean

检查曲线在指定范围内是否满足G1连续性。

Parameters

NameTypeDescription
theTfnumber起始参数。
theTlnumber结束参数。
theAngTolnumber角度公差。

Returns

boolean

如果曲线在指定范围内满足G1连续性,则返回true;否则返回false。


IsPeriodic

IsPeriodic(): boolean

检查曲线是否周期性。

Returns

boolean

如果曲线是周期性的,则返回true;否则返回false。


IsRational

IsRational(): boolean

检查曲线是否是有理的。

Returns

boolean

如果曲线是有理的,则返回true;否则返回false。


Knot

Knot(Index): number

获取曲线在指定索引处的节点。

Parameters

NameTypeDescription
Indexnumber节点的索引。

Returns

number

节点。


Knots

Knots(): number[]

获取曲线的节点序列。

Returns

number[]

节点序列的数组。


LastParameter

LastParameter(): number

返回曲线的最后一个参数值。 通常用于确定曲线的终点。

Returns

number

最后一个参数值。


LastUKnotIndex

LastUKnotIndex(): number

获取曲线的最后一个节点索引。

Returns

number

最后一个节点索引。


LocalD0

LocalD0(U, FromK1, ToK2, P): void

在指定范围内计算局部参数的点。

Parameters

NameTypeDescription
Unumber参数。
FromK1number起始节点索引。
ToK2number结束节点索引。
PMx3dGePoint结果点。

Returns

void


LocalD1

LocalD1(U, FromK1, ToK2, P, V1): void

在指定范围内计算局部参数的点和一阶导数。

Parameters

NameTypeDescription
Unumber参数。
FromK1number起始节点索引。
ToK2number结束节点索引。
PMx3dGePoint结果点。
V1Mx3dGeVec一阶导数。

Returns

void


LocalD2

LocalD2(U, FromK1, ToK2, P, V1, V2): void

在指定范围内计算局部参数的点、一阶导数和二阶导数。

Parameters

NameTypeDescription
Unumber参数。
FromK1number起始节点索引。
ToK2number结束节点索引。
PMx3dGePoint结果点。
V1Mx3dGeVec一阶导数。
V2Mx3dGeVec二阶导数。

Returns

void


LocalD3

LocalD3(U, FromK1, ToK2, P, V1, V2, V3): void

在指定范围内计算局部参数的点、一阶导数、二阶导数和三阶导数。

Parameters

NameTypeDescription
Unumber参数。
FromK1number起始节点索引。
ToK2number结束节点索引。
PMx3dGePoint结果点。
V1Mx3dGeVec一阶导数。
V2Mx3dGeVec二阶导数。
V3Mx3dGeVec三阶导数。

Returns

void


LocalDN

LocalDN(U, FromK1, ToK2, N): Mx3dGeVec

在指定范围内计算局部参数的N阶导数。

Parameters

NameTypeDescription
Unumber参数。
FromK1number起始节点索引。
ToK2number结束节点索引。
Nnumber阶数。

Returns

Mx3dGeVec

N阶导数。


LocalValue

LocalValue(U, FromK1, ToK2): Mx3dGePoint

在指定范围内计算局部参数的点。

Parameters

NameTypeDescription
Unumber参数。
FromK1number起始节点索引。
ToK2number结束节点索引。

Returns

Mx3dGePoint

局部参数的点。


MirrorByAxis

MirrorByAxis(A1): void

通过轴对几何对象进行镜像变换。

Parameters

NameTypeDescription
A1Mx3dGeAxis轴对象。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.MirrorByAxis


MirrorByCSYSR

MirrorByCSYSR(A2): void

通过右手坐标系对几何对象进行镜像变换。

Parameters

NameTypeDescription
A2Mx3dGeCSYSR右手坐标系对象。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.MirrorByCSYSR


MirrorByPoint

MirrorByPoint(P): void

通过点对几何对象进行镜像变换。

Parameters

NameTypeDescription
PMx3dGePoint点对象。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.MirrorByPoint


MirroredByAxis

MirroredByAxis(A1): Mx3dGeomBSplineCurve

返回通过轴镜像变换后的新几何对象。

Parameters

NameTypeDescription
A1Mx3dGeAxis轴对象。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.MirroredByAxis


MirroredByCSYSR

MirroredByCSYSR(A2): Mx3dGeomBSplineCurve

返回通过右手坐标系镜像变换后的新几何对象。

Parameters

NameTypeDescription
A2Mx3dGeCSYSR右手坐标系对象。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.MirroredByCSYSR


MirroredByPoint

MirroredByPoint(P): Mx3dGeomBSplineCurve

返回通过点镜像变换后的新几何对象。

Parameters

NameTypeDescription
PMx3dGePoint点对象。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.MirroredByPoint


Multiplicities

Multiplicities(): number[]

返回曲线的所有节点多重性值。 节点多重性用于定义曲线在特定参数值处的重复程度。

Returns

number[]

节点多重性值的数组。


Multiplicity

Multiplicity(Index): number

获取指定索引处的节点多重性。 节点多重性用于定义曲线在特定参数值处的重复程度。

Parameters

NameTypeDescription
Indexnumber节点索引。

Returns

number

节点的多重性值。


NbKnots

NbKnots(): number

获取曲线的节点数。

Returns

number

节点数。


NbPoles

NbPoles(): number

获取曲线的控制点数。

Returns

number

控制点数。


OffsetCurve

OffsetCurve(Offset, V, isNotCheckC0): Mx3dShapeEdge

创建曲线的偏移副本。

Parameters

NameTypeDescription
Offsetnumber偏移量。
VUniDir偏移方向,与偏移方向垂直。
isNotCheckC0boolean是否不检查C0连续性。

Returns

Mx3dShapeEdge

返回偏移后的曲线边对象。


Period

Period(): number

返回曲线的周期。

Returns

number

曲线的周期。

Inherited from

Mx3dGeomBoundedCurve.Period


Pole

Pole(Index): Mx3dGePoint

获取指定索引处的控制点。 控制点定义了曲线的形状和位置。

Parameters

NameTypeDescription
Indexnumber控制点的索引。

Returns

Mx3dGePoint

指定索引处的控制点对象。


Poles

Poles(): Mx3dGePoint[]

获取曲线的控制点序列。

Returns

Mx3dGePoint[]

控制点序列的数组。


RemoveKnot

RemoveKnot(Index, M, Tolerance): boolean

移除一个节点。

Parameters

NameTypeDescription
Indexnumber节点的索引。
Mnumber节点的多重性。
Tolerancenumber容差。

Returns

boolean

是否成功移除节点。


Reverse

Reverse(): void

反转曲线。

Returns

void


Reversed

Reversed(): Mx3dGeomBSplineCurve

返回反向后的新几何曲线对象。

Returns

Mx3dGeomBSplineCurve

新的几何曲线对象。

Inherited from

Mx3dGeomBoundedCurve.Reversed


ReversedParameter

ReversedParameter(U): number

获取反转参数值。

Parameters

NameTypeDescription
Unumber原参数值。

Returns

number

反转后的参数值。


Rotate

Rotate(A1, Ang): void

旋转几何对象。

Parameters

NameTypeDescription
A1Mx3dGeAxis轴对象。
Angnumber旋转角度。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.Rotate


Rotated

Rotated(A1, Ang): Mx3dGeomBSplineCurve

返回旋转后的新几何对象。

Parameters

NameTypeDescription
A1Mx3dGeAxis轴对象。
Angnumber旋转角度。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.Rotated


Scale

Scale(P, S): void

缩放几何对象。

Parameters

NameTypeDescription
PMx3dGePoint点对象。
Snumber缩放比例。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.Scale


Scaled

Scaled(P, S): Mx3dGeomBSplineCurve

返回缩放后的新几何对象。

Parameters

NameTypeDescription
PMx3dGePoint点对象。
Snumber缩放比例。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.Scaled


Segment

Segment(U1, U2): void

截取曲线的一个段。

Parameters

NameTypeDescription
U1number段的起始参数值。
U2number段的结束参数值。

Returns

void


SetKnot

SetKnot(Index, K): void

设置节点。

Parameters

NameTypeDescription
Indexnumber节点索引。
Knumber新的节点值。

Returns

void

SetKnot(Index, K, M): void

设置节点并指定其多重性。

Parameters

NameTypeDescription
Indexnumber节点索引。
Knumber新的节点值。
Mnumber节点的多重性。

Returns

void


SetKnots

SetKnots(dK): void

设置所有节点。

Parameters

NameTypeDescription
dKnumber[]节点值数组。

Returns

void


SetNotPeriodic

SetNotPeriodic(): void

设置曲线为非周期性。

Returns

void


SetOrigin

SetOrigin(Index): void

设置原点。

Parameters

NameTypeDescription
Indexnumber原点索引。

Returns

void

SetOrigin(U, Tol): void

设置原点并指定容差。

Parameters

NameTypeDescription
Unumber原点参数值。
Tolnumber容差。

Returns

void


SetPeriodic

SetPeriodic(): void

设置曲线为周期性。

Returns

void


SetPole

SetPole(Index, P): void

设置指定索引处的控制点。

Parameters

NameTypeDescription
Indexnumber控制点的索引。
PUniPoint控制点。

Returns

void

SetPole(Index, P, Weight): void

设置指定索引处的控制点和权重。

Parameters

NameTypeDescription
Indexnumber控制点的索引。
PUniPoint控制点。
Weightnumber权重。

Returns

void


SetWeight

SetWeight(Index, Weight): void

设置指定索引处的权重。

Parameters

NameTypeDescription
Indexnumber权重的索引。
Weightnumber权重。

Returns

void


StartPoint

StartPoint(): Mx3dGePoint

获取曲线的起点。

Returns

Mx3dGePoint

曲线的起点。


Transform

Transform(T): void

应用给定的变换矩阵变换曲线。

Parameters

NameTypeDescription
TMx3dGeTrsf变换矩阵。

Returns

void


Transformed

Transformed(T): Mx3dGeomBSplineCurve

返回变换后的新几何对象。

Parameters

NameTypeDescription
TMx3dGeTrsf变换对象。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.Transformed


TranslateBy2Points

TranslateBy2Points(P1, P2): void

通过两个点平移几何对象。

Parameters

NameTypeDescription
P1Mx3dGePoint起始点对象。
P2Mx3dGePoint终止点对象。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.TranslateBy2Points


TranslateByVec

TranslateByVec(V): void

通过向量平移几何对象。

Parameters

NameTypeDescription
VMx3dGeVec向量对象。

Returns

void

Inherited from

Mx3dGeomBoundedCurve.TranslateByVec


TranslatedBy2Points

TranslatedBy2Points(P1, P2): Mx3dGeomBSplineCurve

返回通过两个点平移后的新几何对象。

Parameters

NameTypeDescription
P1Mx3dGePoint起始点对象。
P2Mx3dGePoint终止点对象。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.TranslatedBy2Points


TranslatedByVec

TranslatedByVec(V): Mx3dGeomBSplineCurve

返回通过向量平移后的新几何对象。

Parameters

NameTypeDescription
VMx3dGeVec向量对象。

Returns

Mx3dGeomBSplineCurve

新的几何对象。

Inherited from

Mx3dGeomBoundedCurve.TranslatedByVec


Value

Value(U): Mx3dGePoint

返回给定参数 U 处的点。

Parameters

NameTypeDescription
Unumber参数值。

Returns

Mx3dGePoint

给定参数处的点对象。

Inherited from

Mx3dGeomBoundedCurve.Value


Weight

Weight(Index): number

获取指定索引处的权重值。 权重值用于定义B样条曲线的局部形状和重要性。

Parameters

NameTypeDescription
Indexnumber权重值的索引。

Returns

number

指定索引处的权重值。


Weights

Weights(): number[]

获取曲线的权重序列。

Returns

number[]

权重序列的数组。


Wire

Wire(): Mx3dShapeWire

获取曲线的Wire。

Returns

Mx3dShapeWire

返回表示曲线的Wire对象。


DownCast

Static DownCast(theObject): Mx3dGeomBSplineCurve

父类对象转 Mx3dGeomBSplineCurve 类对象

Parameters

NameTypeDescription
theObjectMx3dGeomObject父类对象

Returns

Mx3dGeomBSplineCurve

Mx3dGeomBSplineCurve 类对象