Package uk.ac.starlink.topcat.plot2

## Class CubeAxisController

- java.lang.Object
- - uk.ac.starlink.topcat.plot2.AxisController<P,​A>
  - - 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
    Constructor | Description
    --- | ---
    `CubeAxisController​(boolean isIso)` | Constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `uk.ac.starlink.ttools.plot2.config.ConfigMap` | `getConfig()` | Returns the configuration defined by all this object's controls.
    `protected boolean` | `logChanged​(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.
    `void` | `setAspect​(uk.ac.starlink.ttools.plot2.geom.CubeAspect aspect)` | Sets the plot aspect which defines the view on the data.

    - ### Methods inherited from class uk.ac.starlink.topcat.plot2.CartesianAxisController

      `addLabelsTab, configureForLayers, forceClearRange, getLabelSpecifier`

    - ### Methods inherited from class uk.ac.starlink.topcat.plot2.AxisController

      `addActionListener, addAspectConfigTab, addControl, addNavigatorTab, assertHasKeys, clearAspect, clearRange, getActionForwarder, getAspect, getControls, getMainControl, getNavigator, getRanges, getSurfaceFactory, removeActionListener, setRanges, submitReports, updateState`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### CubeAxisController

          public CubeAxisController​(boolean isIso)

      Constructor.
      Parameters:
        `isIso` - true for isotropic, false for anisotropic

  - ### Method Detail

    - #### setAspect

          public void setAspect​(uk.ac.starlink.ttools.plot2.geom.CubeAspect aspect)

      Description copied from class: `AxisController`
      Sets the plot aspect which defines the view on the data. If not set, it may have to be worked out from config and range inputs.
      Overrides:
        `setAspect` in class `AxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile,​uk.ac.starlink.ttools.plot2.geom.CubeAspect>`
      Parameters:
        `aspect` - fixed aspect, or null to clear

    - #### getConfig

          public uk.ac.starlink.ttools.plot2.config.ConfigMap getConfig()

      Description copied from class: `AxisController`
      Returns the configuration defined by all this object's controls.
      Specified by:
        `getConfig` in interface `Configger`
      Overrides:
        `getConfig` in class `AxisController<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: `CartesianAxisController`
      Indicates 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:
        `logChanged` in class `CartesianAxisController<uk.ac.starlink.ttools.plot2.geom.CubeSurfaceFactory.Profile,​uk.ac.starlink.ttools.plot2.geom.CubeAspect>`
      Parameters:
        `prof1` - first profile
        `prof2` - second profile
      Returns:
        true iff some of the axes are log in prof1 and linear in prof2 or vice versa