Class CubeAxisController
java.lang.Object
uk.ac.starlink.topcat.plot2.AxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>
uk.ac.starlink.topcat.plot2.CartesianAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>
uk.ac.starlink.topcat.plot2.CubeAxisController
- All Implemented Interfaces:
Configger
public class CubeAxisController
extends CartesianAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>
Axis control for cube plot.
This operates in two modes, one isotropic (with geometry specified
using spherical polar coordinates) and one at least potentially
anisotropic (with geometry specified using Cartesian coordinates).
Which to use is specified at construction time.
- Since:
- 14 Mar 2013
- Author:
- Mark Taylor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanforceClearRange(uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof1, uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof2) Determines whether the change between two profiles forces an unconditional re-range of the plotting surface.uk.ac.starlink.ttools.plot2.config.ConfigMapReturns the configuration defined by all this object's controls.protected booleanlogChanged(uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof1, uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof2) Indicates whether the scaling has changed to or from logarithmic for any of the cartesian axes between two profiles.voidsetLatestSurface(uk.ac.starlink.ttools.plot2.Surface surface) Accepts information about the latest plotting surface to be plotted by the panel associated with this controller.Methods inherited from class CartesianAxisController
addLabelsTab, configureForLayers, getLabelSpecifier, logChangedMethods inherited from class AxisController
addActionListener, addAspectConfigTab, addControl, addNavigatorTab, assertHasKeys, clearAspect, clearRange, getActionForwarder, getAspect, getControls, getMainControl, getNavigator, getRanges, getSurfaceFactory, removeActionListener, setAspect, setRanges, submitReports, updateState
-
Constructor Details
-
CubeAxisController
public CubeAxisController(boolean isIso) Constructor.- Parameters:
isIso- true for isotropic, false for anisotropic
-
-
Method Details
-
setLatestSurface
public void setLatestSurface(uk.ac.starlink.ttools.plot2.Surface surface) Description copied from class:AxisControllerAccepts information about the latest plotting surface to be plotted by the panel associated with this controller. This method is intended for passing information back to this controller, which does not otherwise have access to the asynchronously constructed Surface object it has configured, it is not an instruction to adjust the current state.The default implementation does nothing, but subclasses may override it to acquire information about plot state.
- Overrides:
setLatestSurfacein classAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>- Parameters:
surface- latest plotting surface.
-
getConfig
public uk.ac.starlink.ttools.plot2.config.ConfigMap getConfig()Description copied from class:AxisControllerReturns the configuration defined by all this object's controls.- Specified by:
getConfigin interfaceConfigger- Overrides:
getConfigin classAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>- Returns:
- config map
-
logChanged
protected boolean logChanged(uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof1, uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof2) Description copied from class:CartesianAxisControllerIndicates whether the scaling has changed to or from logarithmic for any of the cartesian axes between two profiles. If so, it's going to be necessary to rescale, since attempting a log plot with negative values would fail.- Specified by:
logChangedin classCartesianAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>- Parameters:
prof1- first profileprof2- second profile- Returns:
- true iff some of the axes are log in prof1 and linear in prof2 or vice versa
-
forceClearRange
protected boolean forceClearRange(uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof1, uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile prof2) Description copied from class:AxisControllerDetermines whether the change between two profiles forces an unconditional re-range of the plotting surface. This method should return true if the plotting surface will change between the old and new supplied profiles sufficiently to invalidate previously calculated auto range data.- Overrides:
forceClearRangein classCartesianAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile, uk.ac.starlink.ttools.plot2.geom.CubeAspect>- Parameters:
prof1- profile before changeprof2- profile after change- Returns:
- true if a new auto-ranging is required
-