Interface NurbsSet

All Superinterfaces:
X3DBoundedObject, X3DChildNode, X3DNode
All Known Implementing Classes:
NurbsSetObject

public interface NurbsSet
extends X3DChildNode, X3DBoundedObject
NurbsSet collects a set of NurbsSurface nodes into a common group and treats NurbsSurface set as a unit during tessellation, thereby enforcing tessellation continuity along borders.

X3D node tooltip: [X3DChildNode,X3DBoundedObject] NurbsSet collects a set of NurbsSurface nodes into a common group and treats NurbsSurface set as a unit during tessellation, thereby enforcing tessellation continuity along borders.
  • Warning: geometry represented in children of this node shall not be directly rendered. It is an informational node only.
  • Warning: Surfaces not represented elsewhere in transformation hierarchy shall not be rendered.
  • Hint: USE nodes for geometry ensure renderable versions occur elsewhere in the model. The bounds information is provided for optimization purposes only. A browser may choose to use this information about when to apply trimming or smooth tessellation between patches based on the bounds information.

Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
See Also:
SAI Java Specification: TODO, X3D Abstract Specification: NurbsSet, X3D Tooltips: NurbsSet, X3D Scene Authoring Hints
  • Method Summary

    Modifier and Type Method Description
    void addGeometry​(X3DNode[] newValue)
    Add array of child geometry nodes to array of existing nodes (if any).
    float[] getBboxCenter()
    Provide array of 3-tuple float results from initializeOnly SFVec3f field named bboxCenter.
    float[] getBboxSize()
    Provide array of 3-tuple float results within allowed range of [0,infinity), or default value [-1 -1 -1], from initializeOnly SFVec3f field named bboxSize.
    X3DNode[] getGeometry()
    Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) from inputOutput MFNode field geometry.
    X3DMetadataObject getMetadata()
    Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    float getTessellationScale()
    Provide float value within allowed range of (0,infinity) from inputOutput SFFloat field named tessellationScale.
    NurbsSet setBboxCenter​(float[] newValue)
    Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxCenter.
    NurbsSet setBboxSize​(float[] newValue)
    Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxSize.
    void setGeometry​(X3DNode newValue)
    Set single child geometry node, replacing prior array of existing nodes (if any).
    NurbsSet setGeometry​(X3DNode[] newValue)
    Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field geometry.
    NurbsSet setMetadata​(X3DMetadataObject newValue)
    Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    NurbsSet setTessellationScale​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named tessellationScale.
  • Method Details

    • getBboxCenter

      float[] getBboxCenter()
      Provide array of 3-tuple float results from initializeOnly SFVec3f field named bboxCenter.

      Tooltip: Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
      Specified by:
      getBboxCenter in interface X3DBoundedObject
      Returns:
      value of bboxCenter field
    • setBboxCenter

      NurbsSet setBboxCenter​(float[] newValue)
      Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxCenter.

      Tooltip: Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
      Specified by:
      setBboxCenter in interface X3DBoundedObject
      Parameters:
      newValue - is new value for the bboxCenter field.
      Returns:
      NurbsSet - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getBboxSize

      float[] getBboxSize()
      Provide array of 3-tuple float results within allowed range of [0,infinity), or default value [-1 -1 -1], from initializeOnly SFVec3f field named bboxSize.

      Tooltip: Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
      Specified by:
      getBboxSize in interface X3DBoundedObject
      Returns:
      value of bboxSize field
    • setBboxSize

      NurbsSet setBboxSize​(float[] newValue)
      Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxSize.

      Tooltip: Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
      Specified by:
      setBboxSize in interface X3DBoundedObject
      Parameters:
      newValue - is new value for the bboxSize field.
      Returns:
      NurbsSet - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getGeometry

      X3DNode[] getGeometry()
      Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) from inputOutput MFNode field geometry.

      Tooltip: [NurbsPatchSurface|NurbsTrimmedSurface] The children form a closed loop with first point of first child repeated as last point of last child, and the last point of a segment repeated as first point of the consecutive one.
      • Hint: children nodes are listed in consecutive order according to topology of the contour.
      • Warning: geometry represented in children of this node shall not be directly rendered. It is an informational node only.
      • Warning: Surfaces not represented elsewhere in transformation hierarchy shall not be rendered.
      • Hint: utilizing USE nodes for geometry can ensure that rendered geometry occurs elsewhere in the model.


      Warning: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNurbsSurfaceGeometryNode.
      Returns:
      value of geometry field
      See Also:
      X3DNurbsSurfaceGeometryNode
    • setGeometry

      NurbsSet setGeometry​(X3DNode[] newValue)
      Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field geometry.

      Tooltip: [NurbsPatchSurface|NurbsTrimmedSurface] The children form a closed loop with first point of first child repeated as last point of last child, and the last point of a segment repeated as first point of the consecutive one.
      • Hint: children nodes are listed in consecutive order according to topology of the contour.
      • Warning: geometry represented in children of this node shall not be directly rendered. It is an informational node only.
      • Warning: Surfaces not represented elsewhere in transformation hierarchy shall not be rendered.
      • Hint: utilizing USE nodes for geometry can ensure that rendered geometry occurs elsewhere in the model.


      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNurbsSurfaceGeometryNode.
      Parameters:
      newValue - is new value for the geometry field.
      Returns:
      NurbsSet - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • addGeometry

      void addGeometry​(X3DNode[] newValue)
      Add array of child geometry nodes to array of existing nodes (if any).

      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DNurbsSurfaceGeometryNode.
      Parameters:
      newValue - is new value array to be appended the geometry field.
    • setGeometry

      void setGeometry​(X3DNode newValue)
      Set single child geometry node, replacing prior array of existing nodes (if any).
      Parameters:
      newValue - is new node for the geometry field
    • getMetadata

      X3DMetadataObject getMetadata()
      Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
      Specified by:
      getMetadata in interface X3DChildNode
      Specified by:
      getMetadata in interface X3DNode
      Returns:
      value of metadata field
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • setMetadata

      NurbsSet setMetadata​(X3DMetadataObject newValue)
      Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
      Specified by:
      setMetadata in interface X3DChildNode
      Specified by:
      setMetadata in interface X3DNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      NurbsSet - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • getTessellationScale

      float getTessellationScale()
      Provide float value within allowed range of (0,infinity) from inputOutput SFFloat field named tessellationScale.

      Tooltip: scale for surface tesselation in children NurbsSurface nodes. *
      Returns:
      value of tessellationScale field
    • setTessellationScale

      NurbsSet setTessellationScale​(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named tessellationScale.

      Tooltip: scale for surface tesselation in children NurbsSurface nodes. *
      Parameters:
      newValue - is new value for the tessellationScale field.
      Returns:
      NurbsSet - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).