An array of knot values representing the NURBS curve or surface knots.
        using namespace XSI;
        using namespace MATH;
        Application app;
        Model root = app.GetActiveSceneRoot();
        X3DObject circle;
        root.AddGeometry(L"Circle",L"NurbsCurve",L"",circle);
        NurbsCurveList curveList = circle.GetActivePrimitive().GetGeometry();
        NurbsCurve curve = curveList.GetCurves().GetItem(0);
        CControlPointRefArray cpArray = curve.GetControlPoints();
        CKnotArray knotArray = curve.GetKnots();
        CNurbsCurveData curveData;
        cpArray.GetArray(curveData.m_aControlPoints);
        knotArray.GetClosed(curveData.m_bClosed);
        X3DObject circleCopyWithoutKnots;
        root.AddNurbsCurve(curveData,siSINurbs,L"",circleCopyWithoutKnots);
#include <xsi_knot.h>

| Public Member Functions | |
| CKnotArray () | |
| ~CKnotArray () | |
| CKnotArray (const CKnotArray &in_array) | |
| CKnotArray (const CRef &in_ref) | |
| CKnotArray & | operator= (const CKnotArray &in_obj) | 
| CKnotArray & | operator= (const CRef &in_ref) | 
| bool | IsA (siClassID in_classID) const | 
| siClassID | GetClassID () const | 
| double | GetItem (LONG in_index) const | 
| CDoubleArray & | GetArray () const | 
| LONG | GetCount () const | 
| CStatus | GetClosed (bool &out_bClosed) const | 
| CStatus | GetDegree (LONG &out_lDegree) const | 
| CStatus | GetParameterization (siKnotParameterization &out_siParameterization) const | 
| CStatus | GetMultiplicity (double in_dKnotValue, LONG &out_lMultiplicity) const | 
| CKnotArray | ( | ) | 
Default constructor.
| ~CKnotArray | ( | ) | 
Default destructor.
| CKnotArray | ( | const CKnotArray & | in_array | ) | 
Copy constructor.
| in_array | constant CKnotArray reference object. | 
| CKnotArray | ( | const CRef & | in_ref | ) | 
Copy constructor.
| in_ref | constant CKnotArray reference object. | 
| CKnotArray& operator= | ( | const CKnotArray & | in_obj | ) | 
Creates an object from another object. The newly created object is set to empty if the input object is not compatible.
| in_obj | constant class object. | 
| CKnotArray& operator= | ( | const CRef & | in_ref | ) | 
Creates an object from a reference object. The newly created object is set to empty if the input reference object is not compatible.
| in_ref | constant class object. | 
Reimplemented from SIObject.
| bool IsA | ( | siClassID | in_classID | ) | const [virtual] | 
Returns true if a given class type is compatible with the underlying reference object.
| in_classID | Class type. | 
Reimplemented from SIObject.
| siClassID GetClassID | ( | ) | const [virtual] | 
Returns the class type of this array
Reimplemented from SIObject.
| double GetItem | ( | LONG | in_index | ) | const | 
Returns the value of a knot at a given index, if the index is invalid or the CKnotArray is invalid it will return DBL_MAX instead.
| in_index | The index of the Knot. | 
| CDoubleArray& GetArray | ( | ) | const | 
Returns an array object containing the knot values.
| LONG GetCount | ( | ) | const | 
Returns the number of Knot objects in the array.
| CStatus GetClosed | ( | bool & | out_bClosed | ) | const | 
Returns true if the parametric domain is closed.
| out_bClosed | Return value. | 
| CStatus GetDegree | ( | LONG & | out_lDegree | ) | const | 
Returns the degree.
| out_lDegree | returns the degree. | 
| CStatus GetParameterization | ( | siKnotParameterization & | out_siParameterization | ) | const | 
Returns the parameterization.
| out_siParameterization | The parameterization. | 
| CStatus GetMultiplicity | ( | double | in_dKnotValue, | 
| LONG & | out_lMultiplicity | ||
| ) | const | 
Returns the multiplicity at a certain knot value.
| in_dKnotValue | The knot value for which we want to know the multiplicity. | 
| out_lMultiplicity | The multiplicity for the given knot value. |