TransformManager4D
Date: 2019-10-22

org.jmol.viewer

## Class TransformManager4D

- java.lang.Object
- - org.jmol.viewer.TransformManager
  - - org.jmol.viewer.TransformManager4D

-     public class TransformManager4D
      extends TransformManager

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private boolean` | `is4D`
    `private javajs.util.M4` | `m2_rotate`
    `private javajs.util.M4` | `m3_toScreen`
    `private javajs.util.M4` | `m4`
    `private static int` | `MODE_3D`
    `private static int` | `MODE_4D_WX`
    `private static int` | `MODE_4D_WY`
    `private static int` | `MODE_4D_WZ`
    `private int` | `mouseMode`
    `private javajs.util.T4` | `p4`
    `private javajs.util.T3` | `v1`
    `private javajs.util.V3` | `zero`
    `private float` | `zOffset`

    - ### Fields inherited from class org.jmol.viewer.TransformManager

      `aaTest1, antialias, aperatureAngle, bsFrameOffsets, bsSelectedAtoms, camera, cameraDepth, cameraDepthSetting, cameraDistance, cameraDistanceFromCenter, cameraScaleFactor, cameraSetting, DEFAULT_CAMERA_DEPTH, DEFAULT_NAV_FPS, DEFAULT_PERSPECTIVE_DEPTH, DEFAULT_PERSPECTIVE_MODEL, DEFAULT_SPIN_FPS, DEFAULT_SPIN_Y, DEFAULT_STEREO_DEGREES, DEFAULT_VISUAL_RANGE, defaultMode, degreesPerRadian, depthPercentSetting, depthPlane, depthValue, doTransform4D, fixedRotationAxis, fixedRotationCenter, fixedRotationOffset, fixedTranslation, frameOffset, frameOffsets, fScrPt, haveNotifiedNaN, height, internalRotationAxis, internalRotationCenter, internalSlab, internalTranslation, iScrPt, isSpinFixed, isSpinInternal, isSpinSelected, matrixRotate, matrixStereo, matrixTemp, matrixTemp3, matrixTest, matrixTransform, matrixTransformInv, MAXIMUM_ZOOM_PERCENTAGE, mode, MODE_NAVIGATION, MODE_PERSPECTIVE_PYMOL, MODE_STANDARD, modelCenterOffset, modelRadius, modelRadiusPixels, movetoThread, NAV_MODE_IGNORE, NAV_MODE_NEWXY, NAV_MODE_NEWXYZ, NAV_MODE_NEWZ, NAV_MODE_NONE, NAV_MODE_RESET, NAV_MODE_ZOOMED, navFps, navigating, navigationCenter, navigationDepthPercent, navigationOffset, navigationShiftXY, navigationSlabOffset, navMode, navOn, navX, navY, navZ, perspectiveDepth, perspectiveModel, perspectiveOffset, perspectiveShiftXY, previousX, previousY, prevZoomSetting, ptOffset, ptTest1, ptTest2, ptTest3, ptVibTemp, referencePlaneOffset, rotationAxis, rotationRate, scale3D, scale3DAngstromsPerInch, scaleDefaultPixelsPerAngstrom, scalePixelsPerAngstrom, screenHeight, screenPixelCount, screenWidth, slabEnabled, slabPercentSetting, slabPlane, slabRange, slabValue, spinFps, spinOn, spinThread, spinX, spinY, spinZ, stereoColors, stereoDegrees, stereoDoubleDTI, stereoDoubleFull, stereoFrame, stereoMode, stereoRadians, untransformedPoint, vectorTemp, vibrationOn, vibrationPeriod, vibrationPeriodMs, vibrationThread, visualRangeAngstroms, vwr, width, windowCentered, xTranslationFraction, yTranslationFraction, zDepthPercentSetting, zDepthValue, zmPct, zmPctSet, zoomEnabled, zoomFactor, zShadeEnabled, zSlabPercentSetting, zSlabPoint, zSlabValue`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TransformManager4D()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `calcTransformMatrix()`
    `private void` | `checkM2()`
    `protected void` | `getScreenTemp(javajs.util.T3 ptXYZ)`
    `void` | `resetRotation()`
    `protected void` | `rotate4DBall(float xDelta, float yDelta, float zDelta)`
    `protected void` | `rotateXYBy(float xDelta, float yDelta, javajs.util.BS bsAtoms)`
    `void` | `setAsBallRotation(javajs.util.M4 m, float scale, float dx, float dy, float dz)` 4D ball rotation from nominal dx, dy, dz motion.

    - ### Methods inherited from class org.jmol.viewer.TransformManager

      `angstromsToPixels, calcCameraFactors, calcNavigationPoint, calcSlabAndDepthValues, centerAt, clear, clearThreads, defaultScaleToScreen, depthByPercentagePoints, depthToPercent, finalizeTransformParameters, getCameraDepth, getCameraFactors, getMoveToText, getNavigationOffset, getNavigationOffsetPercent, getNavigationState, getNavigationText, getNavPtHeight, getNewFixedRotationCenter, getOrientationInfo, getOrientationText, getPerspectiveDepth, getPerspectiveFactor, getRotation, getRotationQ, getRotationText, getSlabPercentSetting, getStereoRotationMatrix, getTransformManager, getTranslationScript, getTranslationXPercent, getTranslationYPercent, getVibrationPoint, getZoomSetting, homePosition, isInPosition, isNavigating, isVibrationOn, isWindowCentered, move, moveRotationCenter, moveTo, moveToPyMOL, navigateAxis, navigateKey, navigateList, navTranslatePercentOrTo, percentToPixels, resetNavigationPoint, rotate3DBall, rotateAboutPointsInternal, rotateAxisAngle, rotateAxisAngleAtCenter, rotateAxisAngleRadiansFixed, rotateAxisAngleRadiansInternal, rotatePoint, rotateXRadians, rotateYRadians, rotateZBy, rotateZRadians, scaleFitToScreen, scaleToPerspective, scaleToScreen, setAll, setAntialias, setCamera, setCameraDepthPercent, setCenter, setCenterAt, setDefaultPerspective, setFrameOffset, setNavFps, setNavigatePt, setNavigationDepthPercent, setNavigationMode, setNavigationOffsetRelative, setNavigationSlabOffsetPercent, setNavOn, setNavXYZ, setNewRotationCenter, setPerspectiveDepth, setRotation, setRotationPointXY, setRotationRadius, setScaleAngstromsPerInch, setScreenParameters, setSelectedTranslation, setSlabDepthInternal, setSlabEnabled, setSlabRange, setSpinFps, setSpinOff, setSpinOn, setSpinXYZ, setStereoDegrees, setStereoMode, setStereoMode2, setTranslationFractions, setVibrationPeriod, setVibrationScale, setVibrationT, setWindowCentered, setZoomEnabled, setZoomHeight, setZShadeEnabled, slabByPercentagePoints, slabDepthByPercentagePoints, slabInternal, slabReset, slabToPercent, spinXYBy, stopMotion, transformPt, transformPt2D, transformPt3f, transformPtNoClip, transformPtScr, transformPtScrT3, transformPtVib, translateToPercent, translateXYBy, translateZBy, unscaleToScreen, unTransformPoint, xyzIsSlabbedInternal, zDepthToPercent, zoomBy, zoomByFactor, zoomByPercent, zoomToPercent, zSlabToPercent, zValueFromPercent`

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

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

- - ### Field Detail

    - #### MODE_3D

          private static final int MODE_3D

      See Also:
        Constant Field Values

    - #### MODE_4D_WX

          private static final int MODE_4D_WX

      See Also:
        Constant Field Values

    - #### MODE_4D_WY

          private static final int MODE_4D_WY

      See Also:
        Constant Field Values

    - #### MODE_4D_WZ

          private static final int MODE_4D_WZ

      See Also:
        Constant Field Values

    - #### is4D

          private boolean is4D

    - #### mouseMode

          private int mouseMode

    - #### m2_rotate

          private javajs.util.M4 m2_rotate

    - #### m3_toScreen

          private final javajs.util.M4 m3_toScreen

    - #### zOffset

          private float zOffset

    - #### v1

          private final javajs.util.T3 v1

    - #### m4

          private final javajs.util.M4 m4

    - #### p4

          private javajs.util.T4 p4

    - #### zero

          private final javajs.util.V3 zero

  - ### Constructor Detail

    - #### TransformManager4D

          public TransformManager4D()

  - ### Method Detail

    - #### resetRotation

          public void resetRotation()

      Overrides:
        `resetRotation` in class `TransformManager`

    - #### rotateXYBy

          protected void rotateXYBy(float xDelta,
                                    float yDelta,
                                    javajs.util.BS bsAtoms)

      Overrides:
        `rotateXYBy` in class `TransformManager`

    - #### rotate4DBall

          protected void rotate4DBall(float xDelta,
                                      float yDelta,
                                      float zDelta)

    - #### setAsBallRotation

          public void setAsBallRotation(javajs.util.M4 m,
                                        float scale,
                                        float dx,
                                        float dy,
                                        float dz)

      4D ball rotation from nominal dx, dy, dz motion.
      Parameters:
        `m` -
        `scale` -
        `dx` -
        `dy` -
        `dz` -

    - #### checkM2

          private void checkM2()

    - #### calcTransformMatrix

          public void calcTransformMatrix()

      Overrides:
        `calcTransformMatrix` in class `TransformManager`

    - #### getScreenTemp

          protected void getScreenTemp(javajs.util.T3 ptXYZ)

      Overrides:
        `getScreenTemp` in class `TransformManager`