Class 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 Detail

      • CubeAxisController

        public CubeAxisController​(boolean isIso)
        Constructor.
        Parameters:
        isIso - true for isotropic, false for anisotropic
    • Method Detail

      • setLatestSurface

        public void setLatestSurface​(uk.ac.starlink.ttools.plot2.Surface surface)
        Description copied from class: AxisController
        Accepts 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:
        setLatestSurface in class AxisController<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: 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