shady.common.ui.multi
Class MultiGraphicsDisplay

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by shady.common.ui.Display
                      extended by shady.common.ui.GraphicsDisplay
                          extended by shady.common.ui.multi.MultiGraphicsDisplay
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, EnvironmentListener

public class MultiGraphicsDisplay
extends GraphicsDisplay

MultiShady graphics display.

TBD more doc

Copyright (C) 2006 Marsette A. Vona, III

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

Author:
Marsette (Marty) A. Vona, III, Peter Osagie
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class shady.common.ui.GraphicsDisplay
GraphicsDisplay.Annotation, GraphicsDisplay.TransformProxy
 
Nested classes/interfaces inherited from class shady.common.ui.Display
Display.AngleField, Display.BarrelAngleField, Display.BarrelField, Display.BooleanField, Display.CharField, Display.CountField, Display.CurrentField, Display.DecimalField, Display.EnergyField, Display.FaultField, Display.Field, Display.GripperField, Display.PointField, Display.StringField, Display.TimeField, Display.TorqueField, Display.VoltageField
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private static java.lang.String cvsid
          CVS id.
protected  MultiShadyCommonAPI multiShady
          The MultiShady.
 
Fields inherited from class shady.common.ui.GraphicsDisplay
ALWAYS_CLIP, annotations, ANTIALIASING, ARROW_SIZE, ARROW_TAIL, arrowLineWidth, arrowShape, barrelColor, bodyWidth, BONE_ASPECT_RATIO, BONE_COLOR, boneBodyShape, boneEndRadius, boneEndShape, boneLineWidth, bufferedImage, bufferedImageLock, cc, ccLineBodyShape, CLICKED_POINT_COLOR, CLICKED_POINT_LINE_WIDTH, clickPointCartesian, clickPointListeners, clickPointTransform, clipCorner, clipD, clipDiag, clippedLine, clipRect, clipS, clipWhere, CLOSED_PADDLE_SEPARATION, closedPaddleSeparation, COLOR_SCHEME, CROSS_SIZE, crossShape, currentHotSpot, cx, cy, DEFAULT_ANNOTATION_COLOR, DEFAULT_ANNOTATION_LINE_WIDTH, DEFAULT_ARROW_LINE_WIDTH, DEFAULT_BONE_LINE_WIDTH, DEFAULT_ENABLE_TOOL_TIP, DEFAULT_ENVIRONMENT_LINE_WIDTH, DEFAULT_FLASH_COLOR, DEFAULT_FLASH_DURATION, DEFAULT_FLASH_RADIUS, DEFAULT_FPS, DEFAULT_HEIGHT, DEFAULT_PADDLE_LINE_WIDTH, DOUBLE_BUFFERED, drawBarrelArrows, drawBodyArrow, drawCCLineBody, drawLineBody, drawPaddles, drawShade, enableToolTip, environment, ENVIRONMENT_COLOR, environmentLineWidth, environmentShape, FAULT_COLOR, flashColor, flashInterpolator, flashRadius, FRACTIONALMETRICS, HOT_SPOT_GRAVITY, hotSpots, INTERPOLATION, interpolatorClock, lineBodyShape, NEVER_PROXY, nf, OPEN_PADDLE_SEPARATION, openPaddleSeparation, PAD, PADDLE_COLOR, paddleLineWidth, paddlesShape, paddleWidth, PAN_ACCEL_FACTOR, pausedCleanly, pickPoint, pickPointCartesian, pickPointOnSegment, projectionPoint, reFitEnvironment, relativeLineWidth, renderFastest, RENDERING_QUALITY, scale, SEGMENT_PICK_GRAVITY, SHADE_COLOR, SHADE_LINE_WIDTH, SHADE_RADIUS, shadeShape, STROKE_NORMALIZATION, tempPoint, tempPose, tempState, tesserDS, tesserDX, tesserDY, tesserInterpolator, tesserStartScale, tesserStartTX, tesserStartTY, totalLength, transformProxy, useFaultColor, verbosePerformance, WHEEL_TO_DELTA, worldToView, xformLine, xformPoint, ZOOM_ACCEL_FACTOR, ZOOM_PER_PIXEL
 
Fields inherited from class shady.common.ui.Display
DEFAULT_BORDER_PAD, DEFAULT_WIDTH, fields, fps, paused, shady, shadyUI, UNITS_WIDTH
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
MultiGraphicsDisplay(UI ui, ShadyCommonAPI shady, MultiShadyCommonAPI multiShady, Environment environment, java.awt.Color[] barrelColor)
          Create a new MultiGraphicsDisplay.
 
Method Summary
protected  void paintEverything(java.awt.Graphics2D g2d)
          GraphicsDisplay.paintEnvironment(java.awt.Graphics2D), GraphicsDisplay.paintShady(java.awt.Graphics2D), GraphicsDisplay.paintAnnotations(java.awt.Graphics2D), GraphicsDisplay.paintFlashes(java.awt.Graphics2D).
protected  void paintShady(java.awt.Graphics2D g2d)
          Paints all members in multiShady.
protected  ShadyCommonAPI pickShady(Point p, double threshold)
          Pick a Shady in this GraphicsDisplay closer than threshold to p.
 
Methods inherited from class shady.common.ui.GraphicsDisplay
addAnnotation, addAnnotation, addAnnotation, addClickPointListener, addHotSpot, clearAnnotations, clearHotSpots, createToolTip, createTransformedShape, drawBarrel, drawShape, drawShape, environmentChanged, fireClickPointChanged, flashHotSpots, flashHotSpots, flashHotSpots, flashHotSpots, getArrowLineWidth, getBoneLineWidth, getCenterX, getCenterY, getClickPointCartesian, getDefaultFPS, getPaddleLineWidth, getRelativeLineWidth, getScale, isFlashOngoing, isManualClip, isTesserOngoing, leftToBarrel, leftToMechanism, mechanismToRight, paintAnnotations, paintComponent, paintComponent, paintContents, paintEnvironment, paintFlashes, paintShady, paintShady, pause, pause, pauseInterpolations, pickShady, removeAnnotation, removeClickPointListener, removeHotSpot, resetWorldToView, resetWorldToView, resetWorldToView, resetWorldToView, resetWorldToView, resetWorldToView, resetWorldToView, rightToBarrel, setAppearance, setArrowLineWidth, setBoneLineWidth, setClickPointCartesian, setDrawBarrelArrows, setDrawBodyArrow, setDrawCCLineBody, setDrawLineBody, setDrawPaddles, setDrawShade, setEnableToolTip, setEnvironmentLineWidth, setPaddleLineWidth, setRelativeLineWidth, setRenderFastest, setUseFaultColor, setVerbosePerformance, tesserTo, unPauseInterpolations, update, updateBufferedImage, updatePose, updateState, useTransformProxy, viewToWorld, worldToLeft, writeToFile, writeToFile, zoomWorldToView
 
Methods inherited from class shady.common.ui.Display
getFPS, getUpdateInterval, isPaused, lockHeight, lockMinimumSize, lockPreferredSize, setBorder, setBorder, setBorder, setFPS, unPause, unPause
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

cvsid

private static final java.lang.String cvsid

CVS id.

See Also:
Constant Field Values

multiShady

protected MultiShadyCommonAPI multiShady

The MultiShady.

Constructor Detail

MultiGraphicsDisplay

public MultiGraphicsDisplay(UI ui,
                            ShadyCommonAPI shady,
                            MultiShadyCommonAPI multiShady,
                            Environment environment,
                            java.awt.Color[] barrelColor)

Create a new MultiGraphicsDisplay.

Parameters:
ui - the UI that contains this Display
shady - a prototype Shady, not stored
multiShady - the MultiShady to paint, not null
environment - the environment to display, null for none
barrelColor - the barrel colors
Method Detail

paintEverything

protected void paintEverything(java.awt.Graphics2D g2d)

GraphicsDisplay.paintEnvironment(java.awt.Graphics2D), GraphicsDisplay.paintShady(java.awt.Graphics2D), GraphicsDisplay.paintAnnotations(java.awt.Graphics2D), GraphicsDisplay.paintFlashes(java.awt.Graphics2D).

.

This impl synchronizes on multiShady, then calls super.

Overrides:
paintEverything in class GraphicsDisplay
Parameters:
g2d - the paint context

paintShady

protected void paintShady(java.awt.Graphics2D g2d)

Paints all members in multiShady.

Overrides:
paintShady in class GraphicsDisplay
Parameters:
g2d - the paint context

pickShady

protected ShadyCommonAPI pickShady(Point p,
                                   double threshold)

Pick a Shady in this GraphicsDisplay closer than threshold to p.

Default impl calls GraphicsDisplay.pickShady(ShadyCommonAPI, Point, double) on Display.shady.This impl picks the first member within threshold, if any.

Overrides:
pickShady in class GraphicsDisplay