org.opensourcephysics.cabrillo.tracker
Class WorldTView

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 org.opensourcephysics.display.DrawingPanel
                      extended by org.opensourcephysics.display.InteractivePanel
                          extended by org.opensourcephysics.media.core.VideoPanel
                              extended by org.opensourcephysics.cabrillo.tracker.TrackerPanel
                                  extended by org.opensourcephysics.cabrillo.tracker.WorldTView
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.Scrollable, TView, InteractiveMouseHandler, Renderable

public class WorldTView
extends TrackerPanel
implements TView

This is a TView of a TrackerPanel drawn in world space.

Author:
Douglas Brown
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.opensourcephysics.display.InteractivePanel
InteractivePanel.IADMouseController
 
Nested classes/interfaces inherited from class org.opensourcephysics.display.DrawingPanel
DrawingPanel.ZoomBox
 
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
protected  java.util.ArrayList<java.awt.Component> components
           
protected  javax.swing.JMenuItem copyImageItem
           
protected  javax.swing.JMenuItem helpItem
           
protected  javax.swing.Icon icon
           
protected  org.opensourcephysics.cabrillo.tracker.WorldTView.OverlayTool overlayTool
           
protected  javax.swing.JMenuItem printItem
           
protected  TrackerPanel trackerPanel
           
protected  javax.swing.JButton worldViewButton
           
 
Fields inherited from class org.opensourcephysics.cabrillo.tracker.TrackerPanel
algorithmDialog, alphabet, attachmentDialog, author, autoTracker, badNameLabel, boosterDropdown, boosterLabel, CALIBRATION, calibrationTools, contact, currentCoords, currentState, currentSteps, dataBuilder, dataToolVisible, defaultImageBorder, defaultSavePath, description, desktopFiles, dirty, dividerLocs, enabled, endFrameLabel, endFrameSpinner, frame, infoX, infoY, isAutoRefresh, isControlKeyDown, isEmpty, isModelBuilderVisible, isShiftKeyDown, matImage, MAX_ZOOM, mEvent, MIN_ZOOM, modelBuilder, noData, noDataLabels, OFFSET, openedFromPath, pointState, popup, prevPixelTransform, renderedImage, scrollPane, selectedPoint, selectedStep, selectedSteps, selectedTrack, selectedViewsProperty, selectingPanel, snapPoint, startFrameLabel, startFrameSpinner, STICK, TAPE, trackControl, trackControlX, trackControlY, viewsProperty, visibleFilters, visibleTools, zoom, ZOOM_LEVELS, ZOOM_STEP, zoomCenter
 
Fields inherited from class org.opensourcephysics.media.core.VideoPanel
changed, coords, dataFile, defaultFileName, defaultHeight, defaultWidth, drawingInImageSpace, filterClasses, imageBorder, imageHeight, imageWidth, messagePanel, mousePanel, player, playerVisible, pt, video, xOffset, yOffset
 
Fields inherited from class org.opensourcephysics.display.InteractivePanel
containsInteractive, interactive, MOUSE_CLICKED, MOUSE_DRAGGED, MOUSE_ENTERED, MOUSE_EXITED, MOUSE_MOVED, MOUSE_PRESSED, MOUSE_RELEASED, mouseAction, mouseEvent
 
Fields inherited from class org.opensourcephysics.display.DrawingPanel
adjustableGutter, antialiasShapeOn, antialiasTextOn, autoscaleItem, autoscaleMargin, autoscaleX, autoscaleXMax, autoscaleXMin, autoscaleY, autoscaleYMax, autoscaleYMin, bgColor, blMessageBox, BOTTOM_LEFT, BOTTOM_RIGHT, bottomGutter, bottomGutterPreferred, brMessageBox, clipAtGutter, coordinateStrBuilder, customInspector, decimalFormat, dimensionSetter, drawableList, enableZoom, fixedPixelPerUnit, fixedScale, glassPanel, glassPanelLayout, height, leftGutter, leftGutterPreferred, mouseController, offscreenImage, optionController, pixelMatrix, pixelTransform, popupmenu, propertiesItem, rightGutter, rightGutterPreferred, scaleItem, scientificFormat, showCoordinates, snapshotItem, squareAspect, tlMessageBox, TOP_LEFT, TOP_RIGHT, topGutter, topGutterPreferred, trMessageBox, viewRect, width, workingImage, xceil, xfloor, xLeftMarginPercentage, xmax, xmaxPreferred, xmin, xminPreferred, xPixPerUnit, xRightMarginPercentage, yBottomMarginPercentage, yceil, yfloor, ymax, ymaxPreferred, ymin, yminPreferred, yPixPerUnit, yTopMarginPercentage, zoomBox, zoomInItem, zoomOutItem
 
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
WorldTView(TrackerPanel panel)
          Constructs a WorldTView of the specified TrackerPanel
 
Method Summary
 void cleanup()
          Cleans up this view
protected  void configure()
          Configures this panel.
 ImageCoordSystem getCoords()
          Overrides VideoPanel getCoords method.
 java.util.ArrayList<Drawable> getDrawables()
          Overrides DrawingPanel getDrawables method.
 Interactive getInteractive()
          Overrides InteractivePanel getInteractive method.
static XML.ObjectLoader getLoader()
          Returns an XML.ObjectLoader to save and load object data.
 VideoPlayer getPlayer()
          Overrides VideoPanel getPlayer method.
 TTrack getSelectedTrack()
          Overrides TrackerPanel getSelectedTrack method.
 TPoint getSnapPoint()
          Overrides TrackerPanel getSnapPoint method.
 java.util.ArrayList<java.awt.Component> getToolBarComponents()
          Gets the toolbar components
 TrackerPanel getTrackerPanel()
          Gets the tracker panel being viewed
 javax.swing.Icon getViewIcon()
          Gets the icon for this view
 java.lang.String getViewName()
          Gets the name of the view
 void init()
          Initializes this view
 boolean isCustomState()
          Returns true if this view is in a custom state.
protected  boolean isSelectedView()
          Returns true if this view is selected in it's parent TViewChooser.
 void propertyChange(java.beans.PropertyChangeEvent e)
          Responds to property change events.
 void refresh()
          Refreshes all tracks
 void repaintDirtyRegion()
          Overrides TrackerPanel repaintDirtyRegion method.
 void setSelectedTrack(TTrack track)
          Sets the selected track
 
Methods inherited from class org.opensourcephysics.cabrillo.tracker.TrackerPanel
addCalibrationTool, addDirtyRegion, addDrawable, addTrack, clear, clearTracks, containsTrack, deletePoint, deleteSelectedSteps, eraseAll, getAlgorithmDialog, getAlphabetIndex, getAttachmentDialog, getAutoTracker, getAxes, getDataBuilder, getDefaultImageHeight, getDefaultImageWidth, getDescription, getEnabled, getFilePath, getGrid, getMagnification, getMat, getModelBuilder, getMouseEvent, getPopupMenu, getPreferredScrollableViewportSize, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedPoint, getSelectedStep, getSelectingPanel, getSystemDrawables, getTFrame, getTitle, getTrack, getTracks, getUserTracks, handleKeyPress, isCreateTracksEnabled, isDefaultConfiguration, isEnabled, isShowCoordinates, isZoomEvent, main, moveToBack, paintComponent, refreshNotesDialog, refreshTrackData, removeDrawable, removeObjectsOfClass, removeTrack, renderMat, restoreViews, save, scale, scale, setCoords, setCursorForMarking, setDescription, setEnabled, setEnabled, setFontLevel, setImageBorder, setImageHeight, setImageSize, setImageWidth, setMagnification, setMessage, setMouseCursor, setReferenceFrame, setScrollPane, setSelectedPoint, setTrackName, setVideo
 
Methods inherited from class org.opensourcephysics.media.core.VideoPanel
addFilter, checkImage, getDataFile, getFilters, getFrameNumber, getImageBorder, getImageHeight, getImageWidth, getStepNumber, getVideo, getWorldMousePoint, hideMouseBox, isDrawingInImageSpace, isPlayerVisible, paintEverything, removeFilter, setDataFile, setDrawingInImageSpace, setPlayerVisible, setVideo
 
Methods inherited from class org.opensourcephysics.display.InteractivePanel
getCurrentDraggable, getMouseAction, getMouseButton, getMouseClickCount, getMouseIntX, getMouseIntY, getMouseX, getMouseY, handleMouseAction, saveMouseEvent, scaleX, scaleY, setInteractiveMouseHandler, setShowCoordinates
 
Methods inherited from class org.opensourcephysics.display.DrawingPanel
actionPerformed, addDrawableAtIndex, addDrawables, addOptionController, buildPopupmenu, checkWorkingImage, computeGutters, enableInspector, findViewRect, getAspectRatio, getBottomGutter, getCoordinateStringBuilder, getDimensionSetter, getDrawables, getGlassPanel, getGutters, getHeight, getImageRatio, getLeftGutter, getMaxPixPerUnit, getMeasure, getObjectOfClass, getPixelMatrix, getPixelTransform, getPreferredXMax, getPreferredXMin, getPreferredYMax, getPreferredYMin, getRightGutter, getScale, getTopGutter, getVideoTool, getViewRect, getWidth, getXMax, getXMin, getXPixPerUnit, getYMax, getYMin, getYPixPerUnit, getZoomBox, hasInspector, hideInspector, invalidateImage, isAdjustableGutter, isAntialiasShapeOn, isAntialiasTextOn, isAutoscaleX, isAutoscaleXMax, isAutoscaleXMin, isAutoscaleY, isAutoscaleYMax, isAutoscaleYMin, isBuffered, isClipAtGutter, isFixedScale, isIconified, isLogScaleX, isLogScaleY, isPointInside, isSquareAspect, isValidImage, isZoom, limitAutoscaleX, limitAutoscaleY, measure, paint, paintDrawableList, paintFirst, paintLast, pixToX, pixToY, project, recomputeTransform, refreshGUI, removeDrawables, removeOptionController, render, render, replaceDrawable, resetGutters, scaleX, scaleY, setAdjustableGutter, setAntialiasShapeOn, setAntialiasTextOn, setAutoscaleMargin, setAutoscaleX, setAutoscaleY, setBounds, setBounds, setBuffered, setClipAtGutter, setCoordinateStringBuilder, setCustomInspector, setFixedScale, setFontFactor, setGutters, setGutters, setIgnoreRepaint, setMessage, setPixelScale, setPixelsPerUnit, setPopupMenu, setPreferredGutters, setPreferredMinMax, setPreferredMinMax, setPreferredMinMaxX, setPreferredMinMaxY, setSquareAspect, setVideoTool, setVisible, setXLeftMarginPercentage, setXMarginPercentage, setXMarginPercentage, setXRightMarginPercentage, setYBottomMarginPercentage, setYMarginPercentage, setYMarginPercentage, setYTopMarginPercentage, setZoom, showInspector, snapshot, validateImage, xToGraphics, xToPix, yToGraphics, yToPix, zoomIn, zoomOut
 
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, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, 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, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, 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

trackerPanel

protected TrackerPanel trackerPanel

icon

protected javax.swing.Icon icon

copyImageItem

protected javax.swing.JMenuItem copyImageItem

printItem

protected javax.swing.JMenuItem printItem

helpItem

protected javax.swing.JMenuItem helpItem

worldViewButton

protected javax.swing.JButton worldViewButton

components

protected java.util.ArrayList<java.awt.Component> components

overlayTool

protected org.opensourcephysics.cabrillo.tracker.WorldTView.OverlayTool overlayTool
Constructor Detail

WorldTView

public WorldTView(TrackerPanel panel)
Constructs a WorldTView of the specified TrackerPanel

Parameters:
panel - the tracker panel to be viewed
Method Detail

refresh

public void refresh()
Refreshes all tracks

Specified by:
refresh in interface TView

init

public void init()
Initializes this view

Specified by:
init in interface TView

cleanup

public void cleanup()
Cleans up this view

Specified by:
cleanup in interface TView

getTrackerPanel

public TrackerPanel getTrackerPanel()
Gets the tracker panel being viewed

Specified by:
getTrackerPanel in interface TView
Returns:
the tracker panel being viewed

getSnapPoint

public TPoint getSnapPoint()
Overrides TrackerPanel getSnapPoint method.

Overrides:
getSnapPoint in class TrackerPanel
Returns:
the snap point

getSelectedTrack

public TTrack getSelectedTrack()
Overrides TrackerPanel getSelectedTrack method. Gets the selected track of trackerPanel.

Overrides:
getSelectedTrack in class TrackerPanel
Returns:
the selected track

setSelectedTrack

public void setSelectedTrack(TTrack track)
Sets the selected track

Overrides:
setSelectedTrack in class TrackerPanel
Parameters:
track - the track to select

getViewName

public java.lang.String getViewName()
Gets the name of the view

Specified by:
getViewName in interface TView
Returns:
the name of the view

getViewIcon

public javax.swing.Icon getViewIcon()
Gets the icon for this view

Specified by:
getViewIcon in interface TView
Returns:
the icon for the view

getToolBarComponents

public java.util.ArrayList<java.awt.Component> getToolBarComponents()
Gets the toolbar components

Specified by:
getToolBarComponents in interface TView
Returns:
an ArrayList of components to be added to a toolbar

isCustomState

public boolean isCustomState()
Returns true if this view is in a custom state.

Specified by:
isCustomState in interface TView
Returns:
false

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent e)
Responds to property change events.

Specified by:
propertyChange in interface java.beans.PropertyChangeListener
Overrides:
propertyChange in class TrackerPanel
Parameters:
e - the property change event

getDrawables

public java.util.ArrayList<Drawable> getDrawables()
Overrides DrawingPanel getDrawables method. Returns all drawables in the tracker panel plus those in this world view.

Overrides:
getDrawables in class TrackerPanel
Returns:
a list of Drawable objects

getPlayer

public VideoPlayer getPlayer()
Overrides VideoPanel getPlayer method. Returns the tracker panel's player.

Overrides:
getPlayer in class VideoPanel
Returns:
the video player

getCoords

public ImageCoordSystem getCoords()
Overrides VideoPanel getCoords method. Returns the tracker panel's coords.

Overrides:
getCoords in class VideoPanel
Returns:
the current image coordinate system

repaintDirtyRegion

public void repaintDirtyRegion()
Overrides TrackerPanel repaintDirtyRegion method. WorldView requires a full repaint every time since it autoscales.

Overrides:
repaintDirtyRegion in class TrackerPanel

getInteractive

public Interactive getInteractive()
Overrides InteractivePanel getInteractive method.

Overrides:
getInteractive in class TrackerPanel
Returns:
null

configure

protected void configure()
Configures this panel. Overrides TrackerPanel method.

Overrides:
configure in class TrackerPanel

isSelectedView

protected boolean isSelectedView()
Returns true if this view is selected in it's parent TViewChooser.

Returns:
true if selected

getLoader

public static XML.ObjectLoader getLoader()
Returns an XML.ObjectLoader to save and load object data.

Returns:
the XML.ObjectLoader