uk.ac.starlink.ttools.plot
Class CartesianPlot3D

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by uk.ac.starlink.ttools.plot.TablePlot
                  extended by uk.ac.starlink.ttools.plot.Plot3D
                      extended by uk.ac.starlink.ttools.plot.CartesianPlot3D
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable

public class CartesianPlot3D
extends Plot3D

Plot3D which works with Cartesian coordinates.

Since:
23 Mar 2007
Author:
Mark Taylor
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class uk.ac.starlink.ttools.plot.Plot3D
Plot3D.RangeChecker, Plot3D.Transformer3D
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class uk.ac.starlink.ttools.plot.Plot3D
hiBounds_, hiBoundsG_, loBounds_, loBoundsG_
 
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
CartesianPlot3D()
          Constructor.
 
Method Summary
protected  Plot3D.RangeChecker configureRanges(Plot3DState state)
          Provides notification that the range constraints are now as described in a supplied state object.
protected  boolean frontOnly(Plot3DState state)
          Indicates whether only the front part of the plot should be plotted.
protected  boolean[] get3DLogFlags()
          Returns an array of 3 flags which indicate whether logarithmic scaling is in force on the X, Y and Z axes respectively.
protected  double getPadding(Plot3DState state, Graphics g, int[] padBorders)
          Works out padding factors to be used for the plot volume.
protected  void plotAxes(Plot3DState state, Graphics g, Plot3D.Transformer3D trans, PlotVolume vol, boolean front)
          Draws grid lines which contain all the known points.
 
Methods inherited from class uk.ac.starlink.ttools.plot.Plot3D
getDisplayBounds, getPlotBounds, getPlottedPointIterator, getPointPlacer, logize, paintMemoryError, rotate, rotateXY, setState, transformErrors
 
Methods inherited from class uk.ac.starlink.ttools.plot.TablePlot
addPlotListener, calculateBounds, firePlotChangedLater, getState, isVectorContext, removePlotListener
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, updateUI
 
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
 

Constructor Detail

CartesianPlot3D

public CartesianPlot3D()
Constructor.

Method Detail

configureRanges

protected Plot3D.RangeChecker configureRanges(Plot3DState state)
Description copied from class: Plot3D
Provides notification that the range constraints are now as described in a supplied state object. A suitable Plot3D.RangeChecker object should be returned, but the implementation should take care of any other updates to its internal state which are required as well.

Specified by:
configureRanges in class Plot3D
Parameters:
state - plot state
Returns:
a range checker appropriate to state's range constraints

getPadding

protected double getPadding(Plot3DState state,
                            Graphics g,
                            int[] padBorders)
Description copied from class: Plot3D
Works out padding factors to be used for the plot volume. The return value is the padFactor; the amount of space outside the unit cube in both dimensions. 1 means no extra space. The padBorders array is a 4-element array whose values on entry are ignored; on exit it should contain space, additional to padFactor, to be left around the edges of the plot. The order is (left,right,bottom,top).

Specified by:
getPadding in class Plot3D
Parameters:
state - plot state
g - graphics context
padBorders - 4-element array, filled on return
Returns:
pad factor (>=1)
See Also:
PlotVolume.PlotVolume(java.awt.Component, java.awt.Graphics, uk.ac.starlink.ttools.plot.MarkStyle[], double, int[], double)

frontOnly

protected boolean frontOnly(Plot3DState state)
Description copied from class: Plot3D
Indicates whether only the front part of the plot should be plotted.

Specified by:
frontOnly in class Plot3D
Parameters:
state - plot state
Returns:
true iff parts of the plot behind the centre of the Z axis should be ignored

get3DLogFlags

protected boolean[] get3DLogFlags()
Description copied from class: Plot3D
Returns an array of 3 flags which indicate whether logarithmic scaling is in force on the X, Y and Z axes respectively.

Specified by:
get3DLogFlags in class Plot3D
Returns:
3-element array of Cartesian axis log scaling flags

plotAxes

protected void plotAxes(Plot3DState state,
                        Graphics g,
                        Plot3D.Transformer3D trans,
                        PlotVolume vol,
                        boolean front)
Description copied from class: Plot3D
Draws grid lines which contain all the known points. According to the value of the front parameter, either the lines which are behind all the data points, or the lines which are in front of all the data points are drawn. Thus, the routine needs to be called twice to plot all the lines. The graphics context has had all the customisation it needs.

Specified by:
plotAxes in class Plot3D
Parameters:
state - plot state
g - graphics context
trans - transformer which maps data space to 3d graphics space
vol - the plotting volume onto which the plot is done
front - true for lines in front of data, false for lines behind


Copyright © 2018 Central Laboratory of the Research Councils. All Rights Reserved.