Package com.mxgraph.swing.util
Class mxMorphing
- java.lang.Object
-
- com.mxgraph.util.mxEventSource
-
- com.mxgraph.swing.util.mxAnimation
-
- com.mxgraph.swing.util.mxMorphing
-
public class mxMorphing extends mxAnimation
Provides animation effects.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.mxgraph.util.mxEventSource
mxEventSource.mxIEventListener
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Object[]cellsOptional array of cells to limit the animation to.protected mxRectangledirtyprotected doubleeaseEase-off for movement towards the given vector.protected mxGraphComponentgraphComponentReference to the enclosing graph instance.protected java.util.Map<java.lang.Object,mxPoint>originsMaps from cells to origins.protected mxCellStatePreviewpreviewprotected intstepCounts the current number of steps of the animation.protected intstepsSpecifies the maximum number of steps for the morphing.-
Fields inherited from class com.mxgraph.swing.util.mxAnimation
DEFAULT_DELAY, delay, timer
-
Fields inherited from class com.mxgraph.util.mxEventSource
eventListeners, eventsEnabled, eventSource
-
-
Constructor Summary
Constructors Constructor Description mxMorphing(mxGraphComponent graphComponent)Constructs a new morphing instance for the given graph.mxMorphing(mxGraphComponent graphComponent, int steps, double ease, int delay)Constructs a new morphing instance for the given graph.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidanimateCell(java.lang.Object cell, mxCellStatePreview move, boolean recurse)Animates the given cell state using moveState.protected mxPointgetDelta(mxCellState state)Returns the vector between the current rendered state and the future location of the state after the display will be updated.doublegetEase()Returns the easing for the movements.protected mxPointgetOriginForCell(java.lang.Object cell)Returns the top, left corner of the given cell.intgetSteps()Returns the number of steps for the animation.voidpaint(java.awt.Graphics g)voidsetCells(java.lang.Object[] value)Optional array of cells to be animated.voidsetEase(double value)Sets the easing for the movements.voidsetSteps(int value)Sets the number of steps for the animation.protected voidshow(mxCellStatePreview preview)Shows the changes in the given mxCellStatePreview.voidstopAnimation()Stops the animation by deleting the timer and fires mxEvent.DONE.protected booleanstopRecursion(mxCellState state, mxPoint delta)Returns true if the animation should not recursively find more deltas for children if the given parent state has been animated.voidupdateAnimation()Animation step.-
Methods inherited from class com.mxgraph.swing.util.mxAnimation
getDelay, isRunning, setDelay, startAnimation
-
Methods inherited from class com.mxgraph.util.mxEventSource
addListener, fireEvent, fireEvent, getEventSource, isEventsEnabled, removeListener, removeListener, setEventsEnabled, setEventSource
-
-
-
-
Field Detail
-
graphComponent
protected mxGraphComponent graphComponent
Reference to the enclosing graph instance.
-
steps
protected int steps
Specifies the maximum number of steps for the morphing. Default is 6.
-
step
protected int step
Counts the current number of steps of the animation.
-
ease
protected double ease
Ease-off for movement towards the given vector. Larger values are slower and smoother. Default is 1.5.
-
origins
protected java.util.Map<java.lang.Object,mxPoint> origins
Maps from cells to origins.
-
cells
protected java.lang.Object[] cells
Optional array of cells to limit the animation to.
-
dirty
protected transient mxRectangle dirty
-
preview
protected transient mxCellStatePreview preview
-
-
Constructor Detail
-
mxMorphing
public mxMorphing(mxGraphComponent graphComponent)
Constructs a new morphing instance for the given graph.
-
mxMorphing
public mxMorphing(mxGraphComponent graphComponent, int steps, double ease, int delay)
Constructs a new morphing instance for the given graph.
-
-
Method Detail
-
getSteps
public int getSteps()
Returns the number of steps for the animation.
-
setSteps
public void setSteps(int value)
Sets the number of steps for the animation.
-
getEase
public double getEase()
Returns the easing for the movements.
-
setEase
public void setEase(double value)
Sets the easing for the movements.
-
setCells
public void setCells(java.lang.Object[] value)
Optional array of cells to be animated. If this is not specified then all cells are checked and animated if they have been moved in the current transaction.
-
updateAnimation
public void updateAnimation()
Animation step.- Overrides:
updateAnimationin classmxAnimation
-
stopAnimation
public void stopAnimation()
Description copied from class:mxAnimationStops the animation by deleting the timer and fires mxEvent.DONE.- Overrides:
stopAnimationin classmxAnimation
-
show
protected void show(mxCellStatePreview preview)
Shows the changes in the given mxCellStatePreview.
-
animateCell
protected void animateCell(java.lang.Object cell, mxCellStatePreview move, boolean recurse)Animates the given cell state using moveState.
-
stopRecursion
protected boolean stopRecursion(mxCellState state, mxPoint delta)
Returns true if the animation should not recursively find more deltas for children if the given parent state has been animated.
-
getDelta
protected mxPoint getDelta(mxCellState state)
Returns the vector between the current rendered state and the future location of the state after the display will be updated.
-
getOriginForCell
protected mxPoint getOriginForCell(java.lang.Object cell)
Returns the top, left corner of the given cell.
-
paint
public void paint(java.awt.Graphics g)
-
-