igeo.io

## Class IRhino3dm.NurbsCurve

- java.lang.Object
- - igeo.io.IRhino3dm.RhinoObject
  - - igeo.io.IRhino3dm.Geometry
    - - igeo.io.IRhino3dm.Curve
      - - igeo.io.IRhino3dm.NurbsCurve

- Enclosing class:
    IRhino3dm

      public static class IRhino3dm.NurbsCurve
      extends IRhino3dm.Curve

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `IVec[]` | `cv`
    `int` | `cvCount`
    `int` | `dim`
    `int` | `isRat`
    `double[]` | `knot`
    `int` | `knotCapacity`
    `int` | `order`
    `static java.lang.String` | `uuid`

    - ### Fields inherited from class igeo.io.IRhino3dm.Curve

      `icurve`

    - ### Fields inherited from class igeo.io.IRhino3dm.RhinoObject

      `attributes, objectTypeAnnotation, objectTypeAny, objectTypeBeam, objectTypeBrep, objectTypeCage, objectTypeClipPlane, objectTypeCurve, objectTypeDetail, objectTypeEdgeFilter, objectTypeExtrusion, objectTypeGrip, objectTypeHatch, objectTypeInstanceDefinition, objectTypeInstanceReference, objectTypeLayer, objectTypeLight, objectTypeLoop, objectTypeMaterial, objectTypeMesh, objectTypeMeshEdge, objectTypeMeshFace, objectTypeMeshVertex, objectTypeMorphControl, objectTypePhantom, objectTypePoint, objectTypePointset, objectTypePolyledgeFilter, objectTypePolysrfFilter, objectTypeSurface, objectTypeTextDot, objectTypeUnknown, objectTypeUserData, userDataList`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NurbsCurve()`
    `NurbsCurve(ICurveGeo crv)`
    `NurbsCurve(ITrimCurve tcrv)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ICurveGeo` | `createIGeometry(IRhino3dm.Rhino3dmFile context, IServerI s)`
    `ICurve` | `createIObject(IRhino3dm.Rhino3dmFile context, IServerI s)`
    `ITrimCurve` | `createTrimCurve(IRhino3dm.Rhino3dmFile context, IServerI s, ISurfaceI srf)`
    `int` | `cvSize()`
    `IRhino3dm.Interval` | `domain()`
    `IRhino3dm.UUID` | `getClassUUID()`
    `double[]` | `getIGKnots()`
    `static IRhino3dm.Interval` | `getKnotVectorDomain(int order, int cvCount, double[] knot)`
    `static double[]` | `getRhinoKnots(double[] iknot)`
    `boolean` | `isValid()`
    `static boolean` | `isValidKnotVector(int order, int cvCount, double[] knot)`
    `void` | `read(IRhino3dm.Rhino3dmFile context, java.io.InputStream is)`
    `void` | `write(IRhino3dm.Rhino3dmFile context, java.io.OutputStream os, java.util.zip.CRC32 crc)`

    - ### Methods inherited from class igeo.io.IRhino3dm.Curve

      `getType`

    - ### Methods inherited from class igeo.io.IRhino3dm.RhinoObject

      `read, setAttributes, setAttributesToIObject`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### uuid

          public static final java.lang.String uuid

      See Also:
        Constant Field Values

    - #### dim

          public int dim

    - #### isRat

          public int isRat

    - #### order

          public int order

    - #### cvCount

          public int cvCount

    - #### knotCapacity

          public int knotCapacity

    - #### knot

          public double[] knot

    - #### cv

          public IVec[] cv

  - ### Constructor Detail

    - #### NurbsCurve

          public NurbsCurve()

    - #### NurbsCurve

          public NurbsCurve(ICurveGeo crv)

    - #### NurbsCurve

          public NurbsCurve(ITrimCurve tcrv)

  - ### Method Detail

    - #### getClassUUID

          public IRhino3dm.UUID getClassUUID()

      Overrides:
        `getClassUUID` in class `IRhino3dm.Curve`

    - #### read

          public void read(IRhino3dm.Rhino3dmFile context,
                           java.io.InputStream is)
                    throws java.io.IOException

      Overrides:
        `read` in class `IRhino3dm.RhinoObject`
      Throws:
        `java.io.IOException`

    - #### write

          public void write(IRhino3dm.Rhino3dmFile context,
                            java.io.OutputStream os,
                            java.util.zip.CRC32 crc)
                     throws java.io.IOException

      Overrides:
        `write` in class `IRhino3dm.RhinoObject`
      Throws:
        `java.io.IOException`

    - #### getIGKnots

          public double[] getIGKnots()

    - #### getRhinoKnots

          public static double[] getRhinoKnots(double[] iknot)

    - #### createIObject

          public ICurve createIObject(IRhino3dm.Rhino3dmFile context,
                                      IServerI s)

      Overrides:
        `createIObject` in class `IRhino3dm.Curve`

    - #### createIGeometry

          public ICurveGeo createIGeometry(IRhino3dm.Rhino3dmFile context,
                                           IServerI s)

      Overrides:
        `createIGeometry` in class `IRhino3dm.Curve`

    - #### createTrimCurve

          public ITrimCurve createTrimCurve(IRhino3dm.Rhino3dmFile context,
                                            IServerI s,
                                            ISurfaceI srf)

      Overrides:
        `createTrimCurve` in class `IRhino3dm.Curve`

    - #### cvSize

          public int cvSize()

    - #### getKnotVectorDomain

          public static IRhino3dm.Interval getKnotVectorDomain(int order,
                                                               int cvCount,
                                                               double[] knot)

    - #### isValidKnotVector

          public static boolean isValidKnotVector(int order,
                                                  int cvCount,
                                                  double[] knot)

    - #### domain

          public IRhino3dm.Interval domain()

      Specified by:
        `domain` in class `IRhino3dm.Curve`

    - #### isValid

          public boolean isValid()

      Specified by:
        `isValid` in class `IRhino3dm.Curve`