ch.randelshofer.rubik
Class AbstractRevengeCubeIdx3D
java.lang.Object
ch.randelshofer.rubik.AbstractCube3D
ch.randelshofer.rubik.AbstractCubeIdx3D
ch.randelshofer.rubik.AbstractRevengeCubeIdx3D
- All Implemented Interfaces:
- Cube3D, CubeListener, java.beans.PropertyChangeListener, java.util.EventListener, javax.swing.event.ChangeListener
- Direct Known Subclasses:
- RevengeCubeIdx3D
public abstract class AbstractRevengeCubeIdx3D
- extends AbstractCubeIdx3D
Abstract base class for the geometrical representation of a RevengeCube
using the Idx3D engine.
- Version:
- 2.1 2008-08-17 Streamlined with code of class AbstractVCube6Idx3D.
2.0 2007-12-31 Adapted to changes in AbstractCube.
1.1 2007-09-09 Use SplineInterpolator for cube twists.
1.0 2005-12-31 Created.
- Author:
- Werner Randelshofer
|
Field Summary |
protected static float |
BEVEL_LENGTH
The beveled edge of a cube part has a length of 0.75 mm. |
protected static float |
PART_LENGTH
A cube part has a side length of 14 mm. |
| Fields inherited from class ch.randelshofer.rubik.AbstractCubeIdx3D |
alphaBetaTransform, cachedStickersImage, centerCount, centerOffset, cornerCount, cornerOffset, edgeCount, edgeOffset, explosion, explosionShift, explosionTransforms, HALF_PI, identityNormalMatrix, identityVertexMatrix, isInStartedPlayer, locationTransforms, partCount, parts, PI, scaleTransform, scene, sharedLightmap, sideCount, sideOffset, stickersTexture |
| Methods inherited from class ch.randelshofer.rubik.AbstractCubeIdx3D |
dispose, getLock, getPart, getPartCount, getScene, isInStartedPlayer, setInStartedPlayer, setStickerBeveling, updateAlphaBeta, updateAttributes, updateCube, updateExplosionFactor, updateExplosionFactor, updatePartFillColor, updatePartOutlineColor, updatePartsFillColor, updatePartsVisibility, updatePartVisibility, updateScaleFactor, updateScaleFactor, updateStickerFillColor, updateStickersFillColor, updateStickersImage, updateStickerVisibility, validateAlphaBeta, validateAttributes, validateCube, validateScaleFactor, validateStickersImage |
| Methods inherited from class ch.randelshofer.rubik.AbstractCube3D |
addChangeListener, addCube3DListener, createAttributes, cubeChanged, dispatch, fireActionPerformed, fireMouseEntered, fireMouseExited, fireMousePressed, fireMouseReleased, fireStateChanged, getAnimator, getAttributes, getCube, getDispatcher, getPartFaceIndexForStickerIndex, getPartIndexForStickerIndex, getStickerCount, isAdjusting, isAnimated, isAnimating, isShowGhostParts, propertyChange, removeChangeListener, removeCube3DListener, setAnimated, setAnimator, setAttributes, setCube, setDispatcher, setLock, setShowGhostParts, stateChanged, stopAnimation |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface ch.randelshofer.rubik.Cube3D |
getKind |
PART_LENGTH
protected static final float PART_LENGTH
- A cube part has a side length of 14 mm.
- See Also:
- Constant Field Values
BEVEL_LENGTH
protected static final float BEVEL_LENGTH
- The beveled edge of a cube part has a length of 0.75 mm.
- See Also:
- Constant Field Values
AbstractRevengeCubeIdx3D
public AbstractRevengeCubeIdx3D()
- Creates a new instance.
init
public void init()
initEdges
protected abstract void initEdges()
initCorners
protected abstract void initCorners()
initSides
protected abstract void initSides()
initCenter
protected void initCenter()
getUnitScaleFactor
protected float getUnitScaleFactor()
- Overrides:
getUnitScaleFactor in class AbstractCubeIdx3D
initTransforms
protected void initTransforms()
initActions
protected abstract void initActions(idx3d_Scene scene)
- Specified by:
initActions in class AbstractCubeIdx3D
validateTwist
public void validateTwist(int[] partIndices,
int[] locations,
int[] orientations,
int length,
int axis,
int angle,
float alpha)
- Specified by:
validateTwist in class AbstractCubeIdx3D
cubeTwisted
public void cubeTwisted(CubeEvent evt)
- Specified by:
cubeTwisted in interface CubeListener- Overrides:
cubeTwisted in class AbstractCube3D