Returns a complete data description of the Nurbs Curve list. The
data is returned in a 1-dimensional array and is ordered the same
as for the NurbsCurveList.Get
method output arguments.
Note: This method must be used with scripting languages that don't
support arguments passed by reference such as JScript and
PerlScript. For more information on getting output arguments, see
About Output Argument
Arrays.
oArray = NurbsCurveList.Get2( [NurbsFormat] ); |
Array ordered as Count, ControlPoints, NbControlPoints, Knots, NbKnots, Closed, Degree, Parameterization.
Parameter | Type | Description |
---|---|---|
NurbsFormat | siNurbsFormat | Specifies how the data is formatted.
Default Value: siSINurbs |
/* This example shows how to retrieve the output arguments returned by NurbsCurveList.Get2 */ var oRoot = Application.ActiveProject.ActiveScene.Root; var oText = oRoot.AddGeometry( "Text", "NurbsCurve" ); oText.text = "b"; // convert VB array to JScript array var vbArgs = new VBArray(oText.ActivePrimitive.Geometry.Get2( siSINurbs )); var args = vbArgs.toArray(); // Number of curves LogMessage("number of curves: " + args[0] ); // Number of control points per curve var vbArg6 = new VBArray(args[2]); var ncpoints = vbArg6.toArray(); for (i = 0; i < ncpoints.length; i++) { LogMessage("number of control points for curve " + i + ": " + ncpoints[i] ); } // Control points var vbArg1 = new VBArray(args[1]); var cp = vbArg1.toArray(); for ( i=0; i<cp.length; i++ ) { for ( j=0, k=0; k<cp[i]; k++, j+=4 ) { LogMessage("crv" + i + "[" + k + "]: " + cp[j] + ", " + cp[j+1] + ", " + cp[j+2] + ", " + cp[j+3] ); } } // Number of knots per curve var vbArg7 = new VBArray(args[4]); var nknots = vbArg7.toArray(); for (i = 0; i < nknots.length; i++) { LogMessage("number of knots for curve " + i + ": " + nknots[i] ); } // Knots var vbArg2 = new VBArray(args[3]); var knots = vbArg2.toArray(); for ( j=0; j<knots.length; j++) { for (i = 0; i < nknots[j]; i++) { LogMessage("crv" + j + ": " + "knots" + i + ": " + knots[i] ); } } // get nurbs curves closed state var vbArg3 = new VBArray(args[5]); var closes = vbArg3.toArray(); for (i = 0; i < closes.length; i++) { LogMessage("curve" + i + " closed: " + closes[i] ); } // get nurbs degree var vbArg4 = new VBArray(args[6]); var degrees = vbArg4.toArray(); for (i = 0; i < degrees.length; i++) { LogMessage("curve" + i + " degree: " + degrees[i] ); } // get nurbs parameterization var vbArg5 = new VBArray(args[7]); var params = vbArg5.toArray(); for (i = 0; i < params.length; i++) { LogMessage("curve" + i + " parameterization: " + params[i] ); } // Expected result: //INFO : number of curves: 2 //INFO : number of control points for curve 0: 26 //INFO : number of control points for curve 1: 16 //INFO : crv0[0]: 0.8072018004501126, 0, 0, 1 //INFO : crv0[1]: 0.8072018004501126, 0.1785915228807202, 0, 1 //INFO : crv0[2]: 0.8072018004501126, 0.3571830457614404, 0, 1 //INFO : crv0[3]: 1.0946642910727682, -0.06301575393848462, 0, 1 //INFO : crv0[4]: 1.5996811702925732, -0.06301575393848462, 0, 1 //INFO : crv0[5]: 2.1074174793698423, -0.06301575393848462, 0, 1 //INFO : crv0[6]: 2.470062828207052, 0.3369748687171793, 0, 1 //INFO : crv0[7]: 2.8327081770442612, 0.7369654913728433, 0, 1 //INFO : crv0[8]: 2.8327081770442612, 1.4698049512378095, 0, 1 //INFO : crv0[9]: 2.8327081770442612, 1.7785071267816954, 0, 1 //INFO : crv0[10]: 2.7467882595648913, 2.049653038259565, 0, 1 //INFO : crv0[11]: 2.6608683420855214, 2.3207989497374344, 0, 1 //INFO : crv0[12]: 2.509166354088522, 2.5127297449362342, 0, 1 //INFO : crv0[13]: 2.357464366091523, 2.7046605401350336, 0, 1 //INFO : crv0[14]: 2.122538447111778, 2.8106948612153037, 0, 1 //INFO : crv0[15]: 1.887612528132033, 2.916729182295574, 0, 1 //INFO : crv0[16]: 1.624531132783196, 2.916729182295574, 0, 1 //INFO : crv0[17]: 1.1492873218304575, 2.916729182295574, 0, 1 //INFO : crv0[18]: 0.8432108027006752, 2.533992873218305, 0, 1 //INFO : crv0[19]: 0.8432108027006752, 3.23548855963991, 0, 1 //INFO : crv0[20]: 0.8432108027006752, 3.9369842460615154, 0, 1 //INFO : crv0[21]: 0.6016504126031508, 3.9369842460615154, 0, 1 //INFO : crv0[22]: 0.36009002250562644, 3.9369842460615154, 0, 1 //INFO : crv0[23]: 0.36009002250562644, 1.9684921230307577, 0, 1 //INFO : crv0[24]: 0.36009002250562644, 0, 0, 1 //INFO : crv0[25]: 0.5836459114778695, 0, 0, 1 //INFO : crv1[0]: 0.8072018004501126, 0, 0, 1 //INFO : crv1[1]: 0.8072018004501126, 0.1785915228807202, 0, 1 //INFO : crv1[2]: 0.8072018004501126, 0.3571830457614404, 0, 1 //INFO : crv1[3]: 1.0946642910727682, -0.06301575393848462, 0, 1 //INFO : crv1[4]: 1.5996811702925732, -0.06301575393848462, 0, 1 //INFO : crv1[5]: 2.1074174793698423, -0.06301575393848462, 0, 1 //INFO : crv1[6]: 2.470062828207052, 0.3369748687171793, 0, 1 //INFO : crv1[7]: 2.8327081770442612, 0.7369654913728433, 0, 1 //INFO : crv1[8]: 2.8327081770442612, 1.4698049512378095, 0, 1 //INFO : crv1[9]: 2.8327081770442612, 1.7785071267816954, 0, 1 //INFO : crv1[10]: 2.7467882595648913, 2.049653038259565, 0, 1 //INFO : crv1[11]: 2.6608683420855214, 2.3207989497374344, 0, 1 //INFO : crv1[12]: 2.509166354088522, 2.5127297449362342, 0, 1 //INFO : crv1[13]: 2.357464366091523, 2.7046605401350336, 0, 1 //INFO : crv1[14]: 2.122538447111778, 2.8106948612153037, 0, 1 //INFO : crv1[15]: 1.887612528132033, 2.916729182295574, 0, 1 //INFO : number of knots for curve 0: 27 //INFO : number of knots for curve 1: 17 //INFO : crv0: knots0: 0 //INFO : crv0: knots1: 0 //INFO : crv0: knots2: 1 //INFO : crv0: knots3: 1 //INFO : crv0: knots4: 2 //INFO : crv0: knots5: 2 //INFO : crv0: knots6: 3 //INFO : crv0: knots7: 3 //INFO : crv0: knots8: 4 //INFO : crv0: knots9: 4 //INFO : crv0: knots10: 5 //INFO : crv0: knots11: 5 //INFO : crv0: knots12: 6 //INFO : crv0: knots13: 6 //INFO : crv0: knots14: 7 //INFO : crv0: knots15: 7 //INFO : crv0: knots16: 8 //INFO : crv0: knots17: 8 //INFO : crv0: knots18: 9 //INFO : crv0: knots19: 9 //INFO : crv0: knots20: 10 //INFO : crv0: knots21: 10 //INFO : crv0: knots22: 11 //INFO : crv0: knots23: 11 //INFO : crv0: knots24: 12 //INFO : crv0: knots25: 12 //INFO : crv0: knots26: 13 //INFO : crv1: knots0: 0 //INFO : crv1: knots1: 0 //INFO : crv1: knots2: 1 //INFO : crv1: knots3: 1 //INFO : crv1: knots4: 2 //INFO : crv1: knots5: 2 //INFO : crv1: knots6: 3 //INFO : crv1: knots7: 3 //INFO : crv1: knots8: 4 //INFO : crv1: knots9: 4 //INFO : crv1: knots10: 5 //INFO : crv1: knots11: 5 //INFO : crv1: knots12: 6 //INFO : crv1: knots13: 6 //INFO : crv1: knots14: 7 //INFO : crv1: knots15: 7 //INFO : crv1: knots16: 8 //INFO : curve0 closed: true //INFO : curve1 closed: true //INFO : curve0 degree: 2 //INFO : curve1 degree: 2 //INFO : curve0 parameterization: 1 //INFO : curve1 parameterization: 1 |