org.wilmascope.viewplugin
Class BoxNodeView

java.lang.Object
  extended by org.wilmascope.patterns.Prototype
      extended by org.wilmascope.view.GraphElementView
          extended by org.wilmascope.view.NodeView
              extended by org.wilmascope.viewplugin.BoxNodeView
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, NodeAbility, NodeView, Viewable, SizeAdjustableNodeView, View2D

public class BoxNodeView
extends NodeView
implements SizeAdjustableNodeView, View2D

A box shaped node. Labels are texture mapped onto the face.

Version:
1.0
Author:
Tim Dwyer
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.wilmascope.view.GraphElementView
t3d
 
Fields inherited from interface org.wilmascope.view.SizeAdjustableNodeView
BOX, DISC
 
Constructor Summary
BoxNodeView()
           
 
Method Summary
 void draw()
           
 void draw2D(Renderer2D r, java.awt.Graphics2D g, float transparency)
           
 float getBottomRadius()
           
 float getDepth()
          If shape is BOX the: x dimension = the node's radius y dimension = depth
 javax.swing.ImageIcon getIcon()
           
 int getShape()
           
 float getTopRadius()
           
protected  void init()
          you must over-ride the following method to create the 3D Shapes which will represent your graph elements
 void setEndRadii(float bottomRadius, float topRadius)
           
protected  void setupDefaultMaterial()
          Sets the default material for graph elements You must over-ride this abstract method stub with: setupDefaultAppearance(myDefaultMaterial);
protected  void setupHighlightMaterial()
          You must over-ride this method with: setupHighlightAppearance(myHighLightedMaterial)
 
Methods inherited from class org.wilmascope.view.NodeView
addGeometryObserver, getCanvasPosition, getNode, getProperties, getRadius, getVWorldPosition, hideAnchor, moveToCanvasPos, setColour, setNode, setProperties, setRadius, showAnchor, showLabel
 
Methods inherited from class org.wilmascope.view.GraphElementView
addLabel, addLiveBranch, addPickingClient, addShape, addTransformGroupChild, defaultColour, delete, getAppearance, getAxisAngle4f, getBranchGroup, getColor3f, getColour, getDefaultColour, getGraphCanvas, getLabel, getTransformGroup, getUserData, hide, highlightColour, initGraphElement, isDefaultColour, makePickable, picked, removeLabel, removePickingClient, setColour, setColour, setFullTransform, setFullTransform, setLabel, setLabel, setLabel, setPickable, setResizeTranslateTransform, setTransformGroupTransform, setTranslation, setTransparencyAttributes, setupDefaultAppearance, setupHighlightAppearance, setUserData, show, transform
 
Methods inherited from class org.wilmascope.patterns.Prototype
clone, getTypeName, setTypeName
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.wilmascope.graph.Viewable
delete, hide, setPickable, show
 

Constructor Detail

BoxNodeView

public BoxNodeView()
Method Detail

setupDefaultMaterial

protected void setupDefaultMaterial()
Description copied from class: GraphElementView
Sets the default material for graph elements You must over-ride this abstract method stub with: setupDefaultAppearance(myDefaultMaterial);

Specified by:
setupDefaultMaterial in class GraphElementView

setupHighlightMaterial

protected void setupHighlightMaterial()
Description copied from class: GraphElementView
You must over-ride this method with: setupHighlightAppearance(myHighLightedMaterial)

Specified by:
setupHighlightMaterial in class GraphElementView

init

protected void init()
Description copied from class: GraphElementView
you must over-ride the following method to create the 3D Shapes which will represent your graph elements

Specified by:
init in class GraphElementView

getIcon

public javax.swing.ImageIcon getIcon()
Overrides:
getIcon in class NodeView

draw

public void draw()
Specified by:
draw in interface Viewable
Overrides:
draw in class NodeView

draw2D

public void draw2D(Renderer2D r,
                   java.awt.Graphics2D g,
                   float transparency)
Specified by:
draw2D in interface View2D
Overrides:
draw2D in class NodeView

getBottomRadius

public float getBottomRadius()
Specified by:
getBottomRadius in interface SizeAdjustableNodeView
See Also:
SizeAdjustableNodeView.getBottomRadius()

getTopRadius

public float getTopRadius()
Specified by:
getTopRadius in interface SizeAdjustableNodeView
See Also:
SizeAdjustableNodeView.getTopRadius()

setEndRadii

public void setEndRadii(float bottomRadius,
                        float topRadius)
Specified by:
setEndRadii in interface SizeAdjustableNodeView
See Also:
SizeAdjustableNodeView.setEndRadii(float, float)

getShape

public int getShape()
Specified by:
getShape in interface SizeAdjustableNodeView

getDepth

public float getDepth()
Description copied from interface: SizeAdjustableNodeView
If shape is BOX the: x dimension = the node's radius y dimension = depth

Specified by:
getDepth in interface SizeAdjustableNodeView