Interface Anchor

All Superinterfaces:
X3DBoundedObject, X3DChildNode, X3DGroupingNode, X3DNode, X3DUrlObject
All Known Implementing Classes:
AnchorObject

public interface Anchor
extends X3DGroupingNode, X3DUrlObject
Anchor is a Grouping node that can contain most nodes.

X3D node tooltip: [X3DGroupingNode,X3DUrlObject] Anchor is a Grouping node that can contain most nodes. When the user selects any of the geometry contained by the Anchor node, the browser either jumps to another viewpoint (similar to HTML bookmark) or else loads content (such as X3D, an image or HTML) specified by the url field. Newly loaded content completely replaces current content, if the value of parameter field indicates using the same window.
  • Hint: insert a Shape node before adding geometry or Appearance.
  • Hint: apply containerField='watchList' when parent node is LoadSensor.

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: Anchor, X3D Tooltips: Anchor, X3D Scene Authoring Hints
  • Method Summary

    Modifier and Type Method Description
    void addChildren​(X3DNode[] newValue)
    Add array of children 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[] getChildren()
    Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) from inputOutput MFNode field children.
    java.lang.String getDescription()
    Provide String value from inputOutput SFString field named description.
    X3DMetadataObject getMetadata()
    Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    java.lang.String[] getParameter()
    Provide array of String results from inputOutput MFString field named parameter.
    java.lang.String[] getUrl()
    Provide array of String results from inputOutput MFString field named url.
    Anchor setBboxCenter​(float[] newValue)
    Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxCenter.
    Anchor setBboxSize​(float[] newValue)
    Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxSize.
    void setChildren​(X3DNode newValue)
    Set single children node, replacing prior array of existing nodes (if any).
    Anchor setChildren​(X3DNode[] newValue)
    Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field children.
    Anchor setDescription​(java.lang.String newValue)
    Accessor method to assign String value to inputOutput SFString field named description.
    Anchor setMetadata​(X3DMetadataObject newValue)
    Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    Anchor setParameter​(java.lang.String[] newValue)
    Accessor method to assign String array to inputOutput MFString field named parameter.
    Anchor setUrl​(java.lang.String[] newValue)
    Accessor method to assign String array to inputOutput MFString field named url.
  • 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
      Specified by:
      getBboxCenter in interface X3DGroupingNode
      Returns:
      value of bboxCenter field
    • setBboxCenter

      Anchor 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
      Specified by:
      setBboxCenter in interface X3DGroupingNode
      Parameters:
      newValue - is new value for the bboxCenter field.
      Returns:
      Anchor - 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
      Specified by:
      getBboxSize in interface X3DGroupingNode
      Returns:
      value of bboxSize field
    • setBboxSize

      Anchor 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
      Specified by:
      setBboxSize in interface X3DGroupingNode
      Parameters:
      newValue - is new value for the bboxSize field.
      Returns:
      Anchor - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getChildren

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

      Tooltip: [X3DChildNode] Grouping nodes contain an ordered list of children nodes.
      • Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down 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/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodes


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

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

      Tooltip: [X3DChildNode] Grouping nodes contain an ordered list of children nodes.
      • Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down 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/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodes


      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to X3DChildNode.
      Specified by:
      setChildren in interface X3DGroupingNode
      Parameters:
      newValue - is new value for the children field.
      Returns:
      Anchor - 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.
      Specified by:
      addChildren in interface X3DGroupingNode
      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).
      Specified by:
      setChildren in interface X3DGroupingNode
      Parameters:
      newValue - is new node for the children field
    • getDescription

      java.lang.String getDescription()
      Provide String value from inputOutput SFString field named description.

      Tooltip: Author-provided text tooltip that tells users the expected action of this node.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Returns:
      value of description field
    • setDescription

      Anchor setDescription​(java.lang.String newValue)
      Accessor method to assign String value to inputOutput SFString field named description.

      Tooltip: Author-provided text tooltip that tells users the expected action of this node.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Parameters:
      newValue - is new value for the description field.
      Returns:
      Anchor - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • 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 X3DGroupingNode
      Specified by:
      getMetadata in interface X3DNode
      Returns:
      value of metadata field
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • setMetadata

      Anchor 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 X3DGroupingNode
      Specified by:
      setMetadata in interface X3DNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      Anchor - 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
    • getParameter

      java.lang.String[] getParameter()
      Provide array of String results from inputOutput MFString field named parameter.

      Tooltip: If provided, parameter tells the X3D player where to to redirect the loaded url.
      • Hint: set parameter value as target=_blank to load the target url into a new browser frame.
      • Hint: set parameter value as target=frame_name to load target url into another browser frame.
      • Hint: MFString arrays can have multiple values, so separate each individual string by quote marks. "https://www.web3d.org" "https://www.web3d.org/about" "etc." Interchange profile hint: this field may be ignored, applying the default value regardless.
      Returns:
      value of parameter field
    • setParameter

      Anchor setParameter​(java.lang.String[] newValue)
      Accessor method to assign String array to inputOutput MFString field named parameter.

      Tooltip: If provided, parameter tells the X3D player where to to redirect the loaded url.
      • Hint: set parameter value as target=_blank to load the target url into a new browser frame.
      • Hint: set parameter value as target=frame_name to load target url into another browser frame.
      • Hint: MFString arrays can have multiple values, so separate each individual string by quote marks. "https://www.web3d.org" "https://www.web3d.org/about" "etc." Interchange profile hint: this field may be ignored, applying the default value regardless.
      Parameters:
      newValue - is new value for the parameter field.
      Returns:
      Anchor - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getUrl

      java.lang.String[] getUrl()
      Provide array of String results from inputOutput MFString field named url.

      Tooltip: Address of replacement world, or #ViewpointDEFName within the current scene, or alternate Web resource, activated by the user selecting Shape geometry within the Anchor children nodes.
      • Hint: jump to a world's internal viewpoint by appending viewpoint name (e.g. #ViewpointName, someOtherCoolWorld.x3d#GrandTour).
      • Hint: jump to a local viewpoint by only using viewpoint name (e.g. #GrandTour).
      • Hint: binding a different Viewpoint triggers an isBound event that can initiate other user-arrival reactions via event chains to interpolators or scripts.
      • Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
      • Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
      • Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
      • Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
      • Hint: pop up a new window with url value as follows: "JavaScript:window.open('somePage.html','popup','width=240,height=240');location.href='HelloWorld.x3d'"
      • Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urls
      Specified by:
      getUrl in interface X3DUrlObject
      Returns:
      value of url field
    • setUrl

      Anchor setUrl​(java.lang.String[] newValue)
      Accessor method to assign String array to inputOutput MFString field named url.

      Tooltip: Address of replacement world, or #ViewpointDEFName within the current scene, or alternate Web resource, activated by the user selecting Shape geometry within the Anchor children nodes.
      • Hint: jump to a world's internal viewpoint by appending viewpoint name (e.g. #ViewpointName, someOtherCoolWorld.x3d#GrandTour).
      • Hint: jump to a local viewpoint by only using viewpoint name (e.g. #GrandTour).
      • Hint: binding a different Viewpoint triggers an isBound event that can initiate other user-arrival reactions via event chains to interpolators or scripts.
      • Hint: MFString arrays can have multiple values, so separate each individual string by quote marks "https://www.web3d.org" "https://www.web3d.org/about" "etc."
      • Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
      • Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
      • Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
      • Hint: pop up a new window with url value as follows: "JavaScript:window.open('somePage.html','popup','width=240,height=240');location.href='HelloWorld.x3d'"
      • Hint: X3D Scene Authoring Hints, urls https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urls
      Specified by:
      setUrl in interface X3DUrlObject
      Parameters:
      newValue - is new value for the url field.
      Returns:
      Anchor - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).