Interface Layer

All Superinterfaces:
X3DLayerNode, X3DNode, X3DPickableObject
All Known Implementing Classes:
Layer

public interface Layer extends X3DLayerNode
Layer contains a list of children nodes that define the contents of the layer.

Warning: this is an abstract interface that cannot be instantiated as a concrete object. Java programmers typically only need to use concrete objects provided by the org.web3d.x3d.jsail classes. Layer node tooltip: (X3D version 3.2 or later) [X3DLayerNode] Layer contains a list of children nodes that define the contents of the layer.
  • Hint: no transformations are possible above each LayerSet/Layer combination in the scene graph hierarchy.
  • Hint: each Layer node contains its own binding stacks and thus has its own viewpoints and navigation.

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

    Modifier and Type
    Method
    Description
    void
    addChildren(X3DNode[] newValue)
    Add array of children nodes to array of existing nodes (if any).
    Provide array of org.web3d.x3d.sai.Core.X3DNode results (using an array consisting of properly typed nodes or ProtoInstances) from inputOutput MFNode field children.
    Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    Provide array of String enumeration results with quoted value(s) ["ALL","NONE","TERRAIN",...] from inputOutput MFString field named objectType.
    boolean
    Provide boolean value from inputOutput SFBool field named pickable.
    Provide org.web3d.x3d.sai.Layering.X3DViewportNode instance (using a properly typed node) from inputOutput SFNode field viewport.
    boolean
    Provide boolean value from inputOutput SFBool field named visible.
    void
    setChildren(X3DNode newValue)
    Set single children node, replacing prior array of existing nodes (if any).
    setChildren(X3DNode[] newValue)
    Accessor method to assign org.web3d.x3d.sai.Core.X3DNode array (using an array consisting of properly typed nodes or ProtoInstances) to inputOutput MFNode field children.
    Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    setObjectType(String[] newValue)
    Accessor method to assign String enumeration array (""ALL"" | ""NONE"" | ""TERRAIN"") to inputOutput MFString field named objectType.
    setPickable(boolean newValue)
    Accessor method to assign boolean value to inputOutput SFBool field named pickable.
    Accessor method to assign org.web3d.x3d.sai.Layering.X3DViewportNode instance (using a properly typed node) to inputOutput SFNode field viewport.
    setVisible(boolean newValue)
    Accessor method to assign boolean value to inputOutput SFBool field named visible.
  • Method Details

    • getChildren

      X3DNode[] getChildren()
      Provide array of org.web3d.x3d.sai.Core.X3DNode results (using an array consisting of properly typed nodes or ProtoInstances) from inputOutput MFNode field children.

      Tooltip: [X3DChildNode] Nodes making up this layer.
      • Hint: no transformations are possible above each LayerSet/Layer combination in the scene graph hierarchy.
      • Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
      • Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
      • Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/grouping.html#GroupingAndChildrenNodes


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

      Layer setChildren(X3DNode[] newValue)
      Accessor method to assign org.web3d.x3d.sai.Core.X3DNode array (using an array consisting of properly typed nodes or ProtoInstances) to inputOutput MFNode field children.

      Tooltip: [X3DChildNode] Nodes making up this layer.
      • Hint: no transformations are possible above each LayerSet/Layer combination in the scene graph hierarchy.
      • Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
      • Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
      • Hint: X3D Architecture 10.2.1 Grouping and children node types, https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/grouping.html#GroupingAndChildrenNodes


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

      void addChildren(X3DNode[] newValue)
      Add array of children nodes to array of existing nodes (if any).

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

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

      X3DMetadataObject getMetadata()
      Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.

      Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
      Specified by:
      getMetadata in interface X3DLayerNode
      Specified by:
      getMetadata in interface X3DNode
      Returns:
      value of metadata field
      See Also:
    • setMetadata

      Layer setMetadata(X3DMetadataObject newValue)
      Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.

      Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
      Specified by:
      setMetadata in interface X3DLayerNode
      Specified by:
      setMetadata in interface X3DNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      Layer - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      See Also:
    • getObjectType

      String[] getObjectType()
      Provide array of String enumeration results with quoted value(s) ["ALL","NONE","TERRAIN",...] from inputOutput MFString field named objectType.

      Tooltip: The objectType field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances. Example: labeling a PickableGroup with the objectType value "WATER" and then attempting to intersect a pick sensor with objectType value "GROUND" fails since the objectType values do not match. Example: the special value "ALL" means that each node is available for picking regardless of the type specified by the pick sensor. Example: the special value "NONE" effectively disables all picking for this node and is the equivalent of setting the pickable field to false.
      • Hint: authors may define any value for objectType.
      • Hint: MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
      Specified by:
      getObjectType in interface X3DLayerNode
      Returns:
      value of objectType field
    • setObjectType

      Layer setObjectType(String[] newValue)
      Accessor method to assign String enumeration array (""ALL"" | ""NONE"" | ""TERRAIN"") to inputOutput MFString field named objectType.

      Tooltip: The objectType field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances. Example: labeling a PickableGroup with the objectType value "WATER" and then attempting to intersect a pick sensor with objectType value "GROUND" fails since the objectType values do not match. Example: the special value "ALL" means that each node is available for picking regardless of the type specified by the pick sensor. Example: the special value "NONE" effectively disables all picking for this node and is the equivalent of setting the pickable field to false.
      • Hint: authors may define any value for objectType.
      • Hint: MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
      Specified by:
      setObjectType in interface X3DLayerNode
      Parameters:
      newValue - is new value for the objectType field.
      Returns:
      Layer - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getPickable

      boolean getPickable()
      Provide boolean value from inputOutput SFBool field named pickable.

      Tooltip: pickable determines whether pick traversal is performed for this layer. *
      Specified by:
      getPickable in interface X3DLayerNode
      Specified by:
      getPickable in interface X3DPickableObject
      Returns:
      value of pickable field
    • setPickable

      Layer setPickable(boolean newValue)
      Accessor method to assign boolean value to inputOutput SFBool field named pickable.

      Tooltip: pickable determines whether pick traversal is performed for this layer. *
      Specified by:
      setPickable in interface X3DLayerNode
      Specified by:
      setPickable in interface X3DPickableObject
      Parameters:
      newValue - is new value for the pickable field.
      Returns:
      Layer - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getViewport

      X3DViewportNode getViewport()
      Provide org.web3d.x3d.sai.Layering.X3DViewportNode instance (using a properly typed node) from inputOutput SFNode field viewport.

      Tooltip: [X3DViewportNode] The viewport field is a single Viewport node that constrains layer output to a sub-region of the render surface. *
      Specified by:
      getViewport in interface X3DLayerNode
      Returns:
      value of viewport field
    • setViewport

      Layer setViewport(X3DViewportNode newValue)
      Accessor method to assign org.web3d.x3d.sai.Layering.X3DViewportNode instance (using a properly typed node) to inputOutput SFNode field viewport.

      Tooltip: [X3DViewportNode] The viewport field is a single Viewport node that constrains layer output to a sub-region of the render surface. *
      Specified by:
      setViewport in interface X3DLayerNode
      Parameters:
      newValue - is new value for the viewport field.
      Returns:
      Layer - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getVisible

      boolean getVisible()
      Provide boolean value from inputOutput SFBool field named visible.

      Tooltip: Whether or not renderable content within this node is visually displayed.
      • Hint: the visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
      • Hint: content must be visible to be collidable and to be pickable.
      Specified by:
      getVisible in interface X3DLayerNode
      Returns:
      value of visible field
    • setVisible

      Layer setVisible(boolean newValue)
      Accessor method to assign boolean value to inputOutput SFBool field named visible.

      Tooltip: Whether or not renderable content within this node is visually displayed.
      • Hint: the visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
      • Hint: content must be visible to be collidable and to be pickable.
      Specified by:
      setVisible in interface X3DLayerNode
      Parameters:
      newValue - is new value for the visible field.
      Returns:
      Layer - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).