edu.mines.jtk.mosaic
Class TileAxis

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 edu.mines.jtk.mosaic.IPanel
                      extended by edu.mines.jtk.mosaic.TileAxis
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class TileAxis
extends IPanel

A tile axis in a mosaic. Tile axes may be placed along the top, left, bottom, and right sides of the mosaic of tiles. Each horizontal (top or bottom) axis annotates the tiles in its column, and each vertical (left or right) axis annotates the tiles in its row.

Axis tics, tic annotations, and the (optional) axis label are painted using the tile axis font and foreground colors.

Version:
2004.12.27, 2005.12.23
Author:
Dave Hale, Colorado School of Mines
See Also:
Serialized Form

Nested Class Summary
static class TileAxis.Placement
          Placement of a tile axis.
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
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
 
Method Summary
 AxisTics getAxisTics()
          Gets the axis tics painted by this tile axis.
 int getIndex()
          Gets the row or column index for this axis.
 Mosaic getMosaic()
          Gets the mosaic that contains this axis.
 TileAxis.Placement getPlacement()
          Gets the placement of this axis.
 Tile getTile()
          Gets the tile adjacent to this axis.
 boolean isBottom()
          Determines whether this axis is placed at bottom of mosaic.
 boolean isHorizontal()
          Determines whether this axis is placed at top or bottom of mosaic.
 boolean isLeft()
          Determines whether this axis is placed at left of mosaic.
 boolean isRight()
          Determines whether this axis is placed at right of mosaic.
 boolean isTop()
          Determines whether this axis is placed at top of mosaic.
 boolean isVertical()
          Determines whether this axis is placed at left or right of mosaic.
protected  void paintComponent(java.awt.Graphics g)
           
 void paintToRect(java.awt.Graphics2D g2d, int x, int y, int w, int h)
          Paints this panel to a specified rectangle of a graphics context.
 void setBounds(int x, int y, int width, int height)
           
 void setFont(java.awt.Font font)
           
 void setFormat(java.lang.String format)
          Sets the format for major tic annotation for this axis.
 void setInterval(double interval)
          Sets the interval between major labeled tics for this axis.
 void setLabel(java.lang.String label)
          Sets the label for this axis.
 
Methods inherited from class edu.mines.jtk.mosaic.IPanel
computeScale, createGraphics, getLineWidth, paintToImage, paintToImage, paintToPng, scaleLineWidth
 
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, 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, 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, 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, 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
 

Method Detail

getMosaic

public Mosaic getMosaic()
Gets the mosaic that contains this axis.

Returns:
the mosaic.

getIndex

public int getIndex()
Gets the row or column index for this axis.

Returns:
the row or column index.

getPlacement

public TileAxis.Placement getPlacement()
Gets the placement of this axis.

Returns:
the placement.

getTile

public Tile getTile()
Gets the tile adjacent to this axis.

Returns:
the tile.

isTop

public boolean isTop()
Determines whether this axis is placed at top of mosaic.

Returns:
true, if at top; false, otherwise.

isLeft

public boolean isLeft()
Determines whether this axis is placed at left of mosaic.

Returns:
true, if at left; false, otherwise.

isBottom

public boolean isBottom()
Determines whether this axis is placed at bottom of mosaic.

Returns:
true, if at bottom; false, otherwise.

isRight

public boolean isRight()
Determines whether this axis is placed at right of mosaic.

Returns:
true, if at right; false, otherwise.

isHorizontal

public boolean isHorizontal()
Determines whether this axis is placed at top or bottom of mosaic. An axis placed at the top or bottom is a horizontal axis.

Returns:
true, if horizontal (at top or bottom); false, otherwise.

isVertical

public boolean isVertical()
Determines whether this axis is placed at left or right of mosaic. An axis placed at the left or right is a vertical axis.

Returns:
true, if vertical (at left or right); false, otherwise.

setInterval

public void setInterval(double interval)
Sets the interval between major labeled tics for this axis. The default tic interval is zero, in which case a readable tic interval is computed automatically. This default is especially useful when interactively zooming and scrolling.

Parameters:
interval - the major labeled tic interval.

setLabel

public void setLabel(java.lang.String label)
Sets the label for this axis.

Parameters:
label - the label.

setFormat

public void setFormat(java.lang.String format)
Sets the format for major tic annotation for this axis. The default format is "%1.4G", which yields a minimum of 1 digit, with up to 4 digits of precision. Any trailing zeros and decimal point are removed from tic annotation.

Parameters:
format - the format.

setFont

public void setFont(java.awt.Font font)
Overrides:
setFont in class javax.swing.JComponent

setBounds

public void setBounds(int x,
                      int y,
                      int width,
                      int height)
Overrides:
setBounds in class java.awt.Component

getAxisTics

public AxisTics getAxisTics()
Gets the axis tics painted by this tile axis.

Returns:
the axis tics.

paintToRect

public void paintToRect(java.awt.Graphics2D g2d,
                        int x,
                        int y,
                        int w,
                        int h)
Description copied from class: IPanel
Paints this panel to a specified rectangle of a graphics context. This implementation simply paints any IPanel children of this panel. It ignores and does not draw any children that are not IPanels.

Classes that extend this base class typically override this method to draw something besides children of this panel. When appropriate, those extensions may also call this method.

Overrides:
paintToRect in class IPanel
Parameters:
g2d - the graphics context.
x - the x-coordinate of the graphics rectangle.
y - the y-coordinate of the graphics rectangle.
w - the width of the graphics rectangle.
h - the height of the graphics rectangle.

paintComponent

protected void paintComponent(java.awt.Graphics g)
Overrides:
paintComponent in class javax.swing.JComponent