NurbsSurfaceMesh オブジェクトを作成します。このメソッドは、ジオメトリデータのセットから複数の NURBS サーフェイスのメッシュを作成するために使用します。
X3DObject X3DObject.AddNurbsSurfaceMesh2( Object in_Count, Object in_ControlPoints, Object in_vsaNbUControlPoints, Object in_vsaNbVControlPoints, Object in_uKnots, Object in_vsaNbUKnots, Object in_vKnots, Object in_vsaNbVKnots, Object in_bUClosed, Object in_bVClosed, Object in_lUDegree, Object in_lVDegree, Object in_uParameterization, Object in_vParameterization, siNurbsFormat in_eNurbsFormat, String in_bstrName ); |
oReturn = X3DObject.AddNurbsSurfaceMesh2( Count, ControlPoints, [NbUControlPoints], [NbVControlPoints], [UKnots], [NbUKnots], [VKnots], [NbVKnots], [UDegree], [VDegree], [UClosed], [VClosed], [UParam], [VParam], [NurbsFormat], [Name] ); |
この新しいジオメトリを持つ X3DObject を戻します。新しい X3DObject はこの x3DObject の子して関連付けられます。
パラメータ | タイプ | 説明 |
---|---|---|
Count | Long | サーフェイスの数 |
ControlPoints | 3DArray | コントロールポイントは 3D 配列に格納されます。配列は、4 * (V ControlPoint の最大数) * (U ControlPoint の総数)です。 |
NbUControlPoints | LongのArray | NurbsCurve ごとの U ControlPoint の数を指定します。NurbsCurve が 1 つしかない場合は省略できます。 |
NbVControlPoints | LongのArray | NurbsCurve ごとの V ControlPoint の数を指定します。NurbsCurve が 1 つしかない場合は省略できます。 |
UKnots | Array |
U 方向のノット値のベクトル デフォルト値:コントロールポイントから操作されるノット |
NbUKnots | LongのArray | NurbsCurve ごとの U ノットの数を指定します。NurbsCurve が 1 つしかない場合は省略できます。 |
VKnots | Array |
V 方向のノット値のベクトル デフォルト値:コントロールポイントから操作されるノット |
NbVKnots | LongのArray | NurbsCurve ごとの V ノットの数を指定します。NurbsCurve が 1 つしかない場合は省略できます。 |
UDegree | LongのArray |
NURBS サーフェイスの U 方向の次数 デフォルト値: 3 |
VDegree | LongのArray |
NURBS サーフェイスの V 方向の次数 デフォルト値: 3 |
UClosed | BooleanのArray |
NURBS サーフェイスが U 方向で閉じられているかどうかを指定します。 デフォルト値: False |
VClosed | BooleanのArray |
NURBS サーフェイスが V 方向で閉じられているかどうかを指定します。 デフォルト値: False |
UParam | siKnotParameterizationのArray |
NURBS サーフェイスの U 方向のパラメータ配置方法 デフォルト値:siNonUniformParameterization |
VParam | siKnotParameterizationのArray |
NURBS サーフェイスの V 方向のパラメータ配置方法 デフォルト値:siNonUniformParameterization |
NurbsFormat | siNurbsFormat |
NURBs のデータ形式を指定します。 デフォルト値:siSINurbs |
Name | String | オブジェクトの名前 |
' ' This example creates a 4x4 nurbs mesh ' NewScene , false dim cv( 3, 3, 3 ), ukv, vkv cv(0,0,0) = -2.0 cv(1,0,0) = 2.0 cv(2,0,0) = 2.0 cv(3,0,0) = 1.00 cv(0,0,1) = -0.666667 cv(1,0,1) = 2.0 cv(2,0,1) = 2.0 cv(3,0,1) = 1.00 cv(0,0,2) = 0.666667 cv(1,0,2) = 2.0 cv(2,0,2) = 2.0 cv(3,0,2) = 1.00 cv(0,0,3) = 2.0 cv(1,0,3) = 2.0 cv(2,0,3) = 2.0 cv(3,0,3) = 1.00 cv(0,1,0) = -2.0 cv(1,1,0) = 0.0 cv(2,1,0) = 0.666667 cv(3,1,0) = 1.00 cv(0,1,1) = -0.666667 cv(1,1,1) = 0.0 cv(2,1,1) = 0.666667 cv(3,1,1) = 1.00 cv(0,1,2) = 0.666667 cv(1,1,2) = 0.0 cv(2,1,2) = 0.666667 cv(3,1,2) = 1.00 cv(0,1,3) = 2.0 cv(1,1,3) = 0.0 cv(2,1,3) = 0.666667 cv(3,1,3) = 1.00 cv(0,2,0) = -2.0 cv(1,2,0) = 0.0 cv(2,2,0) = -0.666667 cv(3,2,0) = 1.00 cv(0,2,1) = -0.666667 cv(1,2,1) = 0.0 cv(2,2,1) = -0.666667 cv(3,2,1) = 1.00 cv(0,2,2) = 0.666667 cv(1,2,2) = 0.0 cv(2,2,2) = -0.666667 cv(3,2,2) = 1.00 cv(0,2,3) = 2.0 cv(1,2,3) = 0.0 cv(2,2,3) = -0.666667 cv(3,2,3) = 1.00 cv(0,3,0) = -2.0 cv(1,3,0) = 1.0 cv(2,3,0) = -2.0 cv(3,3,0) = 1.00 cv(0,3,1) = -0.666667 cv(1,3,1) = 1.0 cv(2,3,1) = -2.0 cv(3,3,1) = 1.00 cv(0,3,2) = 0.666667 cv(1,3,2) = 1.0 cv(2,3,2) = -2.0 cv(3,3,2) = 1.00 cv(0,3,3) = 2.0 cv(1,3,3) = 1.0 cv(2,3,3) = -2.0 cv(3,3,3) = 1.00 ukv = Array( 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ) vkv = Array( 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ) set root = application.activeproject.activescene.root ' Create nurbs surface from default values set ns = root.AddNurbsSurfaceMesh2(1,cv,,,ukv,,vkv,,,,,,,,siSINurbs,"MyDefaultNurbsSurface") ' Create nurbs surface from explicit values set ns = root.AddNurbsSurfaceMesh2( _ 1, _ cv, _ Array(4), Array(4), _ ukv, Array(6), _ vkv, Array(6), _ Array(2), Array(2), _ Array(False), Array(False), _ Array(siUniformParameterization), Array(siUniformParameterization), _ siSINurbs, _ "MyExplicitNurbsSurface") |