Package de.intarsys.tools.geometry
Class ApplySpaceChangeShape
java.lang.Object
de.intarsys.tools.geometry.TransformedShape
de.intarsys.tools.geometry.ApplySpaceChangeShape
- All Implemented Interfaces:
IShapeWrapper
,Shape
,Cloneable
The transformation is defined by two matrices, each defining a coordinate
system. The source transformation is the space the shape is defined in, the
target transformation is the space for the resulting shape.
-
Field Summary
Fields inherited from class de.intarsys.tools.geometry.TransformedShape
IDENTITY
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
protected
ApplySpaceChangeShape
(Shape shape, AffineTransform sourceTransform, AffineTransform targetTransform) -
Method Summary
Modifier and TypeMethodDescriptionprotected Shape
apply()
clone()
Returns an exact copy of thisArea
object.static TransformedShape
create
(Shape shape, AffineTransform transform) Create a newShape
whose coordinates are specified in the space defined by "transform".static TransformedShape
create
(Shape shape, AffineTransform sourceTransform, AffineTransform targetTransform) static TransformedShape
setTransform
(Shape shape, AffineTransform targetTransform) Create a newShape
that behaves like the base shape with its coordinates relative to the new space defined by "newTransform".Methods inherited from class de.intarsys.tools.geometry.TransformedShape
contains, contains, contains, contains, getBaseShape, getBounds, getBounds2D, getPathIterator, getPathIterator, getShape, intersects, intersects, invalidate
-
Constructor Details
-
ApplySpaceChangeShape
-
ApplySpaceChangeShape
protected ApplySpaceChangeShape(Shape shape, AffineTransform sourceTransform, AffineTransform targetTransform)
-
-
Method Details
-
create
Create a newShape
whose coordinates are specified in the space defined by "transform".- Parameters:
shape
- The wrapped base shapetransform
- The coordinate space where "shape" is defined.- Returns:
- The new
TransformedShape
-
create
public static TransformedShape create(Shape shape, AffineTransform sourceTransform, AffineTransform targetTransform) -
setTransform
Create a newShape
that behaves like the base shape with its coordinates relative to the new space defined by "newTransform".You can use this to "view" on an already existing shape from another coordinate system.
- Parameters:
shape
- The base shapetargetTransform
- The new coordinate space- Returns:
- The transformed shape, showing "shape" from the space defined by "newTransform"
-
apply
- Specified by:
apply
in classTransformedShape
-
clone
Returns an exact copy of thisArea
object.- Specified by:
clone
in classTransformedShape
- Returns:
- Created clone object
-
getSourceTransform
-
getTargetTransform
-
getTransform
- Specified by:
getTransform
in classTransformedShape
-