Sets a nurbs curve list from a complete data description. This is only available from
scripted operators, if you use it on a object with some clusters and you change the
topology the burden of updating the clusters is on the user. For non-scripted operators
this property can only be set if the object has been frozen.
Note: This method uses output arguments. C# and some
scripting languages (such as JScript and PerlScript) don't support arguments passed by reference so you
need to use the best workaround for your situation:
For scripting languages this method returns an ISIVTCollection
which you can use to get the output arguments.
For C# the only available workaround is to create a VBScript custom command which returns both the output arguments
and the return value in one array. For details, see
What Happens when the Function Already Returns a Value?.
NurbsCurveList.Set( Object in_vsalCount, Object in_vsaControlPoints, Object in_vsaNbControlPoints, Object in_vsadKnots, Object in_vsaNbKnots, Object in_vsasClosed, Object in_vsalDegree, Object in_vsalParameterization, siNurbsFormat in_eNurbsFormat ); |
NurbsCurveList.Set( Count, ControlPoints, [NbControlPoints], [Knots], [NbKnots], [Closed], [Degree], [Parameterization], [NurbsFormat] ); |
Parameter | Type | Description |
---|---|---|
Count | Long | Number of NurbsCurve in the NurbsCurveList. |
ControlPoints | 2D Array | The control points are stored in a 2 dimensional array. The array is a 4 x Number of U ControlPoints |
NbControlPoints | Array of Long | Specifies the number of ControlPoints per NurbsCurve. |
Knots | Array of Doubles | An array of knot values. |
NbKnots | Array of Long | Specifies the number of Knots per NurbsCurve. |
Closed | Array of Boolean |
Specifies whether the nurbs curve is closed . Default Value: False |
Degree | Array of Long |
Degree of the nurbs curves. Default Value: 3 |
Parameterization | Array of siKnotParameterization | The parameterization factor of the nurbs curve. |
NurbsFormat | siNurbsFormat |
Specifies how the data is formatted. Default Value: siSINurbs |
Dim lDegree, bClosed, eParameterization, aControlVertex, aKnots, lCount, aNbControlVertex set oRoot = application.activeproject.activescene.root set oSpiral = oRoot.AddGeometry( "Spiral", "NurbsCurve" ) FreezeObj oSpiral set oArc = oRoot.AddGeometry( "Arc", "NurbsCurve" ) oArc.ActivePrimitive.Geometry.Get _ siSINurbs, _ lCount, _ aControlVertex, _ aNbControlVertex, _ aKnots , _ aNbKnots, _ bClosed, _ lDegree, _ eParameterization ' add arc data to nurbs curve list. oSpiral.activeprimitive.geometry.Set _ lCount, _ aControlVertex, _ aNbControlVertex, _ aKnots, _ aNbKnots, _ bClosed, _ lDegree, _ eParameterization, _ siSINurbs |