Package javax.media.j3d

# Class Link

java.lang.Object
javax.media.j3d.SceneGraphObject
javax.media.j3d.Node
javax.media.j3d.Leaf
javax.media.j3d.Link

public class Link extends Leaf
A Link leaf node allows an application to reference a shared graph, rooted by a SharedGroup node, from within a branch graph or another shared graph. Any number of Link nodes can refer to the same SharedGroup node.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`ALLOW_SHARED_GROUP_READ`
For Link nodes, specifies that the node allows access to its object's SharedGroup information.
`static final int`
`ALLOW_SHARED_GROUP_WRITE`
For Link nodes, specifies that the node allows writing its object's SharedGroup information.

### Fields inherited from class javax.media.j3d.Node

`ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_LOCALE_READ, ALLOW_PARENT_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING`

## Constructor Summary

Constructors
Constructor
Description
`Link()`
Constructs a Link node object that does not yet point to a SharedGroup node.
`Link(SharedGroup sharedGroup)`
Constructs a Link node object that points to the specified SharedGroup node.

## Method Summary

Modifier and Type
Method
Description
`Node`
`cloneNode(boolean forceDuplicate)`
Used to create a new instance of the node.
`SharedGroup`
`getSharedGroup()`
Retrieves the node's SharedGroup reference.
`void`
`setSharedGroup(SharedGroup sharedGroup)`
Sets the node's SharedGroup reference.

### Methods inherited from class javax.media.j3d.Node

`cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable`

### 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`

## Field Details

### ALLOW_SHARED_GROUP_READ

public static final int ALLOW_SHARED_GROUP_READ
For Link nodes, specifies that the node allows access to its object's SharedGroup information.

See Also:
  - Constant Field Values

### ALLOW_SHARED_GROUP_WRITE

public static final int ALLOW_SHARED_GROUP_WRITE
For Link nodes, specifies that the node allows writing its object's SharedGroup information.

See Also:
  - Constant Field Values

## Constructor Details

### Link

public Link()
Constructs a Link node object that does not yet point to a SharedGroup node.

### Link

public Link(SharedGroup sharedGroup)
Constructs a Link node object that points to the specified SharedGroup node.

Parameters:
  `sharedGroup` - the SharedGroup node

## Method Details

### setSharedGroup

public void setSharedGroup(SharedGroup sharedGroup)
Sets the node's SharedGroup reference.

Parameters:
  `sharedGroup` - the SharedGroup node to reference
Throws:
  `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph

### getSharedGroup

public SharedGroup getSharedGroup()
Retrieves the node's SharedGroup reference.

Returns:
  the SharedGroup node
Throws:
  `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph

### cloneNode

public Node cloneNode(boolean forceDuplicate)
Used to create a new instance of the node. This routine is called by `cloneTree` to duplicate the current node.
The cloned Link node will refer to the same SharedGroup as the original node. The SharedGroup referred to by this Link node will not be cloned.

Overrides:
  `cloneNode` in class `Node`
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.
See Also:
  - `Node.cloneTree()`
  - `Node.cloneNode(boolean)`
  - `Node.duplicateNode(javax.media.j3d.Node, boolean)`
  - `NodeComponent.setDuplicateOnCloneTree(boolean)`