## javax.media.j3d
Class NodeComponent

    java.lang.Object
      javax.media.j3d.SceneGraphObject
          javax.media.j3d.NodeComponent

Direct Known Subclasses:
  Alpha, Appearance, AuralAttributes, ColoringAttributes, DepthComponent, Font3D, Geometry, ImageComponent, LineAttributes, Material, MediaContainer, PointAttributes, PolygonAttributes, RenderingAttributes, Shader, ShaderAttribute, ShaderAttributeSet, ShaderProgram, TexCoordGeneration, Texture, TextureAttributes, TextureUnitState, TransparencyAttributes

    public abstract class NodeComponent

extends SceneGraphObject

NodeComponent is a common superclass for all scene graph node component objects such as: Geometry, Appearance, Material, Texture, etc.

For more information, see the Introduction to the Java 3D API.

Constructor Summary
`NodeComponent()` Constructs a NodeComponent object with default parameters.

Method Summary
`NodeComponent` `cloneNodeComponent()` Deprecated. As of Java 3D version 1.2, replaced by `cloneNodeComponent(boolean forceDuplicate)`
`NodeComponent` `cloneNodeComponent(boolean forceDuplicate)` Used to create a new instance of a NodeComponent object.
`void` `duplicateNodeComponent(NodeComponent originalNodeComponent)` Deprecated. As of Java 3D version 1.2, replaced by `duplicateNodeComponent(NodeComponent originalNodeComponent, boolean forceDuplicate)`
`void` `duplicateNodeComponent(NodeComponent originalNodeComponent, boolean forceDuplicate)` Copies all node information from `originalNodeComponent` into the current node.
`boolean` `getDuplicateOnCloneTree()` Returns this node's duplicateOnCloneTree value.
`void` `setDuplicateOnCloneTree(boolean duplicate)` Sets this node's duplicateOnCloneTree value.

Methods inherited from class javax.media.j3d.SceneGraphObject
`clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString, updateNodeReferences`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### NodeComponent

    public NodeComponent()

  Constructs a NodeComponent object with default parameters. The default values are as follows:
  duplicate on clone tree : false

Method Detail

### setDuplicateOnCloneTree

    public void setDuplicateOnCloneTree(boolean duplicate)

  Sets this node's duplicateOnCloneTree value. The duplicateOnCloneTree value is used to determine if NodeComponent objects are to be duplicated or referenced during a `cloneTree` operation. A value of `true` means that this NodeComponent object should be duplicated, while a value of `false` indicates that this NodeComponent object's reference will be copied into the newly cloned object. This value can be overriden via the `forceDuplicate` parameter of the `cloneTree` method.

  Parameters:
    `duplicate` - the value to set.
  See Also:
    `Node.cloneTree()`

### getDuplicateOnCloneTree

    public boolean getDuplicateOnCloneTree()

  Returns this node's duplicateOnCloneTree value. The duplicateOnCloneTree value is used to determine if NodeComponent objects are to be duplicated or referenced during a `cloneTree` operation. A value of `true` means that this NodeComponent object should be duplicated, while a value of `false` indicates that this NodeComponent object's reference will be copied into the newly cloned object. This value can be overriden via the `forceDuplicate` parameter of the `cloneTree` method.

  Returns:
    the value of this node's duplicateOnCloneTree
  See Also:
    `Node.cloneTree()`

### cloneNodeComponent

    public NodeComponent cloneNodeComponent()

  Deprecated. As of Java 3D version 1.2, replaced by `cloneNodeComponent(boolean forceDuplicate)`

### duplicateNodeComponent

    public void duplicateNodeComponent(NodeComponent originalNodeComponent)

  Deprecated. As of Java 3D version 1.2, replaced by `duplicateNodeComponent(NodeComponent originalNodeComponent, boolean forceDuplicate)`

  NOTE: Applications should not call this method directly. It should only be called by the cloneNode method.

### duplicateNodeComponent

    public void duplicateNodeComponent(NodeComponent originalNodeComponent,
                                       boolean forceDuplicate)

  Copies all node information from `originalNodeComponent` into the current node. This method is called from the `cloneNodeComponent` method which is, in turn, called by the `cloneNode` method.
  NOTE: Applications should not call this method directly. It should only be called by the cloneNode method.

  Parameters:
    `originalNodeComponent` - the node to duplicate.
    `forceDuplicate` - when set to `true`, causes the `duplicateOnCloneTree` flag to be ignored. When `false`, the value of each node's `duplicateOnCloneTree` variable determines whether NodeComponent data is duplicated or copied.
  Throws:
    `RestrictedAccessException` - if forceDuplicate is set and this object is part of a compiled scenegraph
  Since:
    Java 3D 1.2
  See Also:
    `cloneNodeComponent()`, `Node.cloneNode(boolean)`, `Node.cloneTree()`

### cloneNodeComponent

    public NodeComponent cloneNodeComponent(boolean forceDuplicate)

  Used to create a new instance of a NodeComponent object. This routine is called by `cloneNode` to duplicate the current node.
  `cloneNodeComponent` should be overridden by any user subclassed NodeComponent objects. All subclasses must have their `cloneNodeComponent` method consist of the following lines:

  >          public NodeComponent cloneNodeComponent(boolean forceDuplicate) {
  >              UserNodeComponent unc = new UserNodeComponent();
  >              unc.duplicateNodeComponent(this, forceDuplicate);
  >              return unc;
  >          }

  Parameters:
    `forceDuplicate` - when set to `true`, causes the `duplicateOnCloneTree` flag to be ignored. When `false`, the value of each node's `duplicateOnCloneTree` variable determines whether NodeComponent data is duplicated or copied.
  Throws:
    `RestrictedAccessException` - if forceDuplicate is set and this object is part of a compiled scenegraph
  Since:
    Java 3D 1.2
  See Also:
    `duplicateNodeComponent(javax.media.j3d.NodeComponent)`, `Node.cloneNode(boolean)`, `Node.cloneTree()`

Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.