Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx.geom
Class Morphing2D

    java.lang.Object
      org.jdesktop.swingx.geom.Morphing2D

All Implemented Interfaces:
  java.awt.Shape

    public class Morphing2D

extends java.lang.Object
implements java.awt.Shape

A morphing shape is a shape which geometry is constructed from two other shapes: a start shape and an end shape.

The morphing property of a morphing shape defines the amount of transformation applied to the start shape to turn it into the end shape.

Both shapes must have the same winding rule.

Author:
  Jim Graham, Romain Guy (Maintainer)

Constructor Summary
`Morphing2D(java.awt.Shape startShape, java.awt.Shape endShape)` Creates a new morphing shape.

Method Summary
`boolean` | `contains(double x, double y)`
`boolean` | `contains(double x, double y, double w, double h)`
`boolean` | `contains(java.awt.geom.Point2D p)`
`boolean` | `contains(java.awt.geom.Rectangle2D r)`
`java.awt.Rectangle` | `getBounds()`
`java.awt.geom.Rectangle2D` | `getBounds2D()`
`double` | `getMorphing()` Returns the morphing value between the two shapes.
`java.awt.geom.PathIterator` | `getPathIterator(java.awt.geom.AffineTransform at)`
`java.awt.geom.PathIterator` | `getPathIterator(java.awt.geom.AffineTransform at, double flatness)`
`boolean` | `intersects(double x, double y, double w, double h)`
`boolean` | `intersects(java.awt.geom.Rectangle2D r)`
`void` | `setMorphing(double morph)` Sets the morphing value between the two shapes.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Morphing2D

    public Morphing2D(java.awt.Shape startShape,
                      java.awt.Shape endShape)

  Creates a new morphing shape. A morphing shape can be used to turn one shape into another one. The transformation can be controlled by the morph property.

  Parameters:
    `startShape` - the shape to morph from
    `endShape` - the shape to morph to
  Throws:
    `java.awt.geom.IllegalPathStateException` - if the shapes do not have the same winding rule
  See Also:
    `getMorphing()`, `setMorphing(double)`

Method Detail

### getMorphing

    public double getMorphing()

  Returns the morphing value between the two shapes.

  Returns:
    the morphing value between the two shapes
  See Also:
    `setMorphing(double)`

### setMorphing

    public void setMorphing(double morph)

  Sets the morphing value between the two shapes. This value controls the transformation from the start shape to the end shape. A value of 0.0 is the start shape. A value of 1.0 is the end shape. A value of 0.5 is a new shape, morphed half way from the start shape to the end shape.

  The specified value should be between 0.0 and 1.0. If not, the value is clamped in the appropriate range.

  Parameters:
    `morph` - the morphing value between the two shapes
  See Also:
    `getMorphing()`

### getBounds

    public java.awt.Rectangle getBounds()

  Specified by:
    `getBounds` in interface `java.awt.Shape`

### getBounds2D

    public java.awt.geom.Rectangle2D getBounds2D()

  Specified by:
    `getBounds2D` in interface `java.awt.Shape`

### contains

    public boolean contains(double x,
                            double y)

  Specified by:
    `contains` in interface `java.awt.Shape`

### contains

    public boolean contains(java.awt.geom.Point2D p)

  Specified by:
    `contains` in interface `java.awt.Shape`

### intersects

    public boolean intersects(double x,
                              double y,
                              double w,
                              double h)

  Specified by:
    `intersects` in interface `java.awt.Shape`

### intersects

    public boolean intersects(java.awt.geom.Rectangle2D r)

  Specified by:
    `intersects` in interface `java.awt.Shape`

### contains

    public boolean contains(double x,
                            double y,
                            double w,
                            double h)

  Specified by:
    `contains` in interface `java.awt.Shape`

### contains

    public boolean contains(java.awt.geom.Rectangle2D r)

  Specified by:
    `contains` in interface `java.awt.Shape`

### getPathIterator

    public java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform at)

  Specified by:
    `getPathIterator` in interface `java.awt.Shape`

### getPathIterator

    public java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform at,
                                                      double flatness)

  Specified by:
    `getPathIterator` in interface `java.awt.Shape`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.