org.wilmascope.viewplugin
Class ColumnClusterView

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.view.ClusterView
                  extended by org.wilmascope.viewplugin.ColumnClusterView
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, NodeAbility, NodeView, Viewable, SizeAdjustableNodeView, View2D
Direct Known Subclasses:
BoxColumnClusterView

public class ColumnClusterView
extends ClusterView
implements SizeAdjustableNodeView

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
ColumnClusterView()
           
 
Method Summary
 void draw()
          update the cluster's size and position on screen
 float getBottomRadius()
          returns the bottom radius of the lowest node
 float getDepth()
          returns maximum depth of the cluster's children
 javax.swing.ImageIcon getIcon()
           
 java.lang.String getLabel()
           
 float getMaxRadius()
           
 int getShape()
          always DISC
 float getTopRadius()
           
 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)
           
 void setLabel(java.lang.String label)
           
 void setLabel(java.lang.String[] labels)
          sets a multiline label...
 void setLabelColour(javax.vecmath.Color3f c)
           
 void setPositionRef(javax.vecmath.Point3f position)
           
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.ClusterView
getCluster, getCollapsedRadius, setCollapsedView, setExpandedView
 
Methods inherited from class org.wilmascope.view.NodeView
addGeometryObserver, draw2D, 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, getTransformGroup, getUserData, hide, highlightColour, initGraphElement, isDefaultColour, makePickable, picked, removeLabel, removePickingClient, setColour, setColour, setFullTransform, setFullTransform, 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

ColumnClusterView

public ColumnClusterView()
Method Detail

draw

public void draw()
Description copied from class: ClusterView
update the cluster's size and position on screen

Specified by:
draw in interface Viewable
Overrides:
draw in class ClusterView

setPositionRef

public void setPositionRef(javax.vecmath.Point3f position)

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

public 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

setLabelColour

public void setLabelColour(javax.vecmath.Color3f c)

setLabel

public void setLabel(java.lang.String[] labels)
Description copied from class: GraphElementView
sets a multiline label... this may be implemented in different ways by different subclass views... The default is just to show the first line

Overrides:
setLabel in class GraphElementView

setLabel

public void setLabel(java.lang.String label)
Overrides:
setLabel in class GraphElementView

getLabel

public java.lang.String getLabel()
Overrides:
getLabel in class GraphElementView

getIcon

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

getBottomRadius

public float getBottomRadius()
returns the bottom radius of the lowest node

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

getDepth

public float getDepth()
returns maximum depth of the cluster's children

Specified by:
getDepth in interface SizeAdjustableNodeView
See Also:
SizeAdjustableNodeView.getDepth()

getShape

public int getShape()
always DISC

Specified by:
getShape in interface SizeAdjustableNodeView
See Also:
SizeAdjustableNodeView.getShape()

getTopRadius

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

getMaxRadius

public float getMaxRadius()

setEndRadii

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