トリミングされたサーフェイスをメッシュに追加します。
NurbsSurface NurbsSurfaceMesh.AddSurfaceWithTrim( Object in_vsaControlPoints, Object in_vsadUKnots, Object in_vsadVKnots, Boolean in_bUClosed, Boolean in_bVClosed, Int32 in_lUDegree, Int32 in_lVDegree, siKnotParameterization in_eUParam, siKnotParameterization in_eVParam, siNurbsFormat in_eNurbsFormat, Int32 in_lNbTrim, Object in_vsabIsBoundary, Object in_vsalProjectionType, Object in_vsalNbCurve, Object in_vsaCurveControlPoints, Object in_vsaCurveNbControlPoints, Object in_vsaCurveParam, Object in_vsaCurveKnots, Object in_vsaCurveNbKnots, Object in_vsaCurveDegree, Object in_vsaCurveClosed ); |
oReturn = NurbsSurfaceMesh.AddSurfaceWithTrim( [ControlPoints], [UKnots], [VKnots], [UClosed], [VClosed], [UDegree], [VDegree], [UParam], [VParam], [NurbsFormat], [NbTrim], [IsBoundary], [ProjectionType], [NbCurve], [CurveControlPoints], [CurveNbControlPoints], [CurveParam], [CurveKnots], [CurveNbKnots], [CurveDegree], [CurveClosed] ); |
パラメータ | タイプ | 説明 | ||||||
---|---|---|---|---|---|---|---|---|
ControlPoints | 1D または 3D Array | NURBS サーフェイスの作成に使用されるコントロールポイント。このコントロールポイントは、1D 配列または X,y,z,w 値の 3D 配列の行列(UxVx4)で保存できます。1D 配列には、開始点(後ろにx,y,z,w値のシーケンスが続く)におけるU、V方向のポイント数が含まれます(例:{U,V,Xo,Yo,Zo,...X(uv-1),Y(uv-1),Z(uv-1),W(uv-1)})。 | ||||||
UKnots | DoubleのArray | U 方向のノット値のベクトル | ||||||
VKnots | DoubleのArray | V方向のノット値の配列 | ||||||
UClosed | Boolean |
NURBS サーフェイスが U 方向で閉じられているかどうかを指定します。 デフォルト値: false |
||||||
VClosed | Boolean |
NURBS サーフェイスが V 方向で閉じられているかどうかを指定します。 デフォルト値: false |
||||||
UDegree | Long |
NURBS サーフェイスの U 方向の次数 デフォルト値: 3 |
||||||
VDegree | Long |
NURBS サーフェイスの V 方向の次数 デフォルト値: 3 |
||||||
UParam | siKnotParameterization |
NURBS サーフェイスの U 方向のパラメータ配置方法 デフォルト値:siNonUniformParameterization |
||||||
VParam | siKnotParameterization |
NURBS サーフェイスの V 方向のパラメータ配置方法 デフォルト値:siNonUniformParameterization |
||||||
NurbsFormat | siNurbsFormat |
NURBs のデータ形式を指定します。 デフォルト値:siSINurbs |
||||||
NbTrim | Long |
このサーフェイスを何回含めるかを指定します。 デフォルト値: 0 |
||||||
IsBoundary | BooleanのArray | 各トリムがバウンダリであるかどうかを指定します。 | ||||||
ProjectionType | LongのArray |
各トリムのプロジェクションタイプを指定します。配列の各メンバを 1 つのトリムに割り当てます。実際には、配列は 0と1 の組み合わせになります。
|
||||||
NbCurve | LongのArray | 各トリムの NURBS カーブの数 | ||||||
CurveControlPoints | 2D 配列のArray | コントロールポイントの各セットが2D 配列で格納されている配列。配列は4 x ControlPoint の数です。 | ||||||
CurveNbControlPoints | Longの配列のArray | 各トリムの NURBS カーブごとの ControlPoint の数を指定します。 | ||||||
CurveParam | siKnotParameterization値の配列のArray | 各トリムの NURBS カーブのパラメータ配置方法 | ||||||
CurveKnots | Doubleの配列のArray | 各トリムのノット値の配列 | ||||||
CurveNbKnots | Longの配列のArray | 各トリムの NURBSごとのKnot の数を指定します。 | ||||||
CurveDegree | Longの配列のArray |
各トリムの NURBS カーブの次数 デフォルト値: 3 |
||||||
CurveClosed | Booleanの配列のArray |
各トリムの NURBS カーブが閉じているかどうかを指定します。 デフォルト値: False |
' This example creates a sphere with a circular trim Dim lDegree(2), bClosed(2), eParameterization(2), aControlPoints, aKnots(2) ' Extract data from a sphere nurbs surface set oRoot = Application.activeproject.activescene.root set oSphere = oRoot.AddGeometry( "Sphere", "NurbsSurface" ) oSphere.ActivePrimitive.Geometry.Surfaces(0).Get _ siSINurbs, _ aControlPoints, _ aKnots(siUDirection),aKnots(siVDirection) , _ bClosed(siUDirection),bClosed(siVDirection), _ lDegree(siUDirection),lDegree(siVDirection), _ eParameterization(siUDirection),eParameterization(siVDirection) ' Extract data from a cricular curve for the trim set oCurve = CreatePrim("Circle", "NurbsCurve") Dim lCDegree, bCClosed, eCParameterization, aCControlVertex, aCKnots, lCCount, aCNbControlVertex oCurve.ActivePrimitive.geometry.get _ siSINurbs, _ lCCount, _ aCControlVertex, _ aCNbControlVertex, _ aCKnots , _ aCNbKnots, _ bCClosed, _ lCDegree, _ eCParameterization ' Create the trimmed surface set oNew = oRoot.AddNurbsSurfaceMesh oNew.ActivePrimitive.Geometry.AddSurfaceWithTrim _ aControlPoints, _ aKnots(siUDirection),aKnots(siVDirection) , _ bClosed(siUDirection),bClosed(siVDirection), _ lDegree(siUDirection),lDegree(siVDirection), _ eParameterization(siUDirection),eParameterization(siVDirection), _ siSINurbs, _ 1, _ array(True), _ array(0), _ array(lCCount), _ array(aCControlVertex), _ array(aCNbControlVertex), _ array(eCParameterization), _ array(aCKnots) , _ array(aCNbKnots), _ array(lCDegree), _ array(bCClosed) |