Class java.awt.geom.Area
java.lang.Object
|
+----java.awt.geom.Area
- public class Area
- extends Object
- implements Shape, Cloneable
Area is a device-independent specification of an arbitrarily-shaped area.
The Area object is defined as an object that performs certain binary CAG
(Constructive Area Geometry) operations on other area-enclosing geometries,
such as rectangles, ellipses, and polygons. The CAG operations are
Add(union), Subtract, Intersect, and ExclusiveOR. For instance, an Area
can be made up of the area of a rectangle minus the area of an ellipse.
Constructor Summary
|
Area()
Default constructor which creates an empty area.
|
Area(Shape g)
Creates an area geometry from the specified Shape object.
|
Area(Polygon geometry)
Creates an area geometry from the specified polygon.
|
Area(Rectangle2D r)
Creates an area geometry from the specified rectangle.
|
Area(Ellipse2D e)
Creates an area geometry of a ellipse inside the specified rectangle.
|
Method Summary
|
void
|
add(Area rhs)
Adds the shape of the specified Area to the current shape.
|
Object
|
clone()
clone function ...
|
boolean
|
contains(double x,
double y)
Tests if a given coordinate lies inside the boundary of the shape.
|
boolean
|
contains(Point2D p)
Tests if a given coordinate lies inside the boundary of the shape.
|
boolean
|
contains(double x,
double y,
double w,
double h)
Tests whether the interior of the area completely contains the
given rectangle.
|
boolean
|
contains(Rectangle2D r)
Tests whether the interior of the area completely contains the
given rectangle.
|
Area
|
createTransformedArea(AffineTransform t)
Creates a new Area from this Area object representing the geometry
of the original transformed by the specified AffineTransform.
|
boolean
|
equals(Area rhs)
Tests whether the two objects are equal.
|
void
|
exclusiveOr(Area rhs)
Sets the shape of this Area to the combined area of the current
shape and the shape of the specified Area, minus their intersection.
|
Rectangle
|
getBounds()
Returns a bounding rectangle that completely encloses the area.
|
Rectangle2D
|
getBounds2D()
Returns a high precision bounding rectangle that completely
encloses the area.
|
PathIterator
|
getPathIterator(AffineTransform t)
Creates a PathIterator for the outline of this Area object.
|
PathIterator
|
getPathIterator(AffineTransform t,
double f)
Create a PathIterator for the flattened outline of this Area object.
|
void
|
intersect(Area rhs)
Sets the shape of this Area to the intersection of the current
shape with the shape of the specified Area.
|
boolean
|
intersects(double x,
double y,
double w,
double h)
Tests whether the interior of the area intersects the interior
of the given rectangle.
|
boolean
|
intersects(Rectangle2D r)
Tests whether the interior of the area intersects the interior
of the given rectangle.
|
boolean
|
isEmpty()
Tests whether this area contains any geometry.
|
boolean
|
isPolygonal()
Tests whether the area consists entirely of straight edged
polygonal geometry.
|
boolean
|
isRectangular()
Tests whether the area is rectangular in shape.
|
boolean
|
isSingular()
Tests whether the area is comprised of a single basic geometry.
|
void
|
reset()
Removes all the basic geometry from this area and restores it to
an empty area.
|
void
|
subtract(Area rhs)
Subtracts the shape of the specified Area from the current shape.
|
void
|
transform(AffineTransform t)
Transforms the geometry of this Area using the specified transform.
|
Methods inherited from class java.lang.Object
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Area
public Area()
- Default constructor which creates an empty area.
Area
public Area(Shape g)
- Creates an area geometry from the specified Shape object.
The geometry is explicitly closed, if the shape is not already closed.
The fill rule (even-odd or winding) specified by the shape
geometry is used to determined the resulting enclosed area.
- Parameters:
g
- The shape from which the area is to be constructed.
Area
public Area(Polygon geometry)
- Creates an area geometry from the specified polygon.
Even-odd fill rule is assumed as per the definition of the
java.awt.Polygon class.
- Parameters:
geometry
- The polygon from which the area is to be
constructed.
Area
public Area(Rectangle2D r)
- Creates an area geometry from the specified rectangle.
- Parameters:
r
- The rectangle from which the area is to be constructed.
Area
public Area(Ellipse2D e)
- Creates an area geometry of a ellipse inside the specified rectangle.
- Parameters:
e
- The ellipse geometry from which the area is to be
constructed
transform
public void transform(AffineTransform t)
- Transforms the geometry of this Area using the specified transform.
The geometry is transformed in place permanently changing the
enclosed area defined by this object.
- Parameters:
t
- The matrix used to transform the area.
reset
public void reset()
- Removes all the basic geometry from this area and restores it to
an empty area.
isEmpty
public boolean isEmpty()
- Tests whether this area contains any geometry.
- Returns:
- True if this area contains no basic geometry, or is an
empty area.
isPolygonal
public boolean isPolygonal()
- Tests whether the area consists entirely of straight edged
polygonal geometry.
- Returns:
- True if the area consists completely of polygon edges
isRectangular
public boolean isRectangular()
- Tests whether the area is rectangular in shape.
- Returns:
- True if the area is rectangular in shape.
isSingular
public boolean isSingular()
- Tests whether the area is comprised of a single basic geometry.
- Returns:
- True if the area is comprised of a single basic geometry.
getBounds
public Rectangle getBounds()
- Returns a bounding rectangle that completely encloses the area.
- Implements:
- getBounds in interface Shape
- Returns:
- The bounding rectangle for the area.
getBounds2D
public Rectangle2D getBounds2D()
- Returns a high precision bounding rectangle that completely
encloses the area.
- Implements:
- getBounds2D in interface Shape
- Returns:
- The bounding rectangle for the area.
intersects
public boolean intersects(double x,
double y,
double w,
double h)
- Tests whether the interior of the area intersects the interior
of the given rectangle.
- Implements:
- intersects in interface Shape
- Returns:
- True if the interior intersects the given rectangle.
intersects
public boolean intersects(Rectangle2D r)
- Tests whether the interior of the area intersects the interior
of the given rectangle.
- Implements:
- intersects in interface Shape
- Parameters:
r
- The rectangle to test for intersection.
- Returns:
- True if the interior intersects the given rectangle.
contains
public boolean contains(double x,
double y)
- Tests if a given coordinate lies inside the boundary of the shape.
- Implements:
- contains in interface Shape
- Parameters:
x
- x value of the point
y
- y value of the point
- Returns:
- True if the point lies completely within the interior
of the area
contains
public boolean contains(Point2D p)
- Tests if a given coordinate lies inside the boundary of the shape.
- Implements:
- contains in interface Shape
- Parameters:
p
- The point to test for inclusion within the area.
- Returns:
- True if the point lies completely within the interior
of the area
contains
public boolean contains(double x,
double y,
double w,
double h)
- Tests whether the interior of the area completely contains the
given rectangle.
- Implements:
- contains in interface Shape
- Returns:
- True if the rectangle lies completely within the interior
of the area
contains
public boolean contains(Rectangle2D r)
- Tests whether the interior of the area completely contains the
given rectangle.
- Implements:
- contains in interface Shape
- Parameters:
r
- The rectangle to test for inclusion within the area.
- Returns:
- True if the rectangle lies completely within the interior
of the area
add
public void add(Area rhs)
- Adds the shape of the specified Area to the current shape.
Addition is achieved through union.
- Parameters:
rhs
- The shape to be added to the current area.
subtract
public void subtract(Area rhs)
- Subtracts the shape of the specified Area from the current shape.
- Parameters:
rhs
- The shape to be subtracted from the current area.
intersect
public void intersect(Area rhs)
- Sets the shape of this Area to the intersection of the current
shape with the shape of the specified Area.
- Parameters:
rhs
- The area to be intersected with this one.
exclusiveOr
public void exclusiveOr(Area rhs)
- Sets the shape of this Area to the combined area of the current
shape and the shape of the specified Area, minus their intersection.
- Parameters:
rhs
- The area to be exclusive ORed with this one.
clone
public Object clone()
- clone function ... to be compatible with Cloneable
- Returns:
- Created clone object
- Overrides:
- clone in class Object
equals
public boolean equals(Area rhs)
- Tests whether the two objects are equal.
- Parameters:
rhs
- The area geometry to be compared to this one.
- Returns:
- True if the two area geometries are equal.
getPathIterator
public PathIterator getPathIterator(AffineTransform t)
- Creates a PathIterator for the outline of this Area object.
This Area object is unchanged.
- Implements:
- getPathIterator in interface Shape
- Parameters:
t
- an optional AffineTransform to be applied to the
coordinates as they are returned in the iteration, or null
if the untransformed coordinates are desired.
- Returns:
- The PathIterator object which returns the geometry
of the outline of this area one segment at a time
getPathIterator
public PathIterator getPathIterator(AffineTransform t,
double f)
- Create a PathIterator for the flattened outline of this Area object.
Only uncurved path segments represented by the SEG_MOVETO, SEG_LINETO,
and SEG_CLOSE point types will be returned by the iterator.
This Area object is unchanged.
- Implements:
- getPathIterator in interface Shape
- Parameters:
t
- an optional AffineTransform to be applied to the
coordinates as they are returned in the iteration, or null
if the untransformed coordinates are desired.
flatness
- the maximum amount that the control points
for a given curve can vary from colinear before a subdivided
curve is replaced by a straight line connecting the endpoints.
- Returns:
- The PathIterator object which returns the geometry
of the outline of this area one segment at a time
createTransformedArea
public Area createTransformedArea(AffineTransform t)
- Creates a new Area from this Area object representing the geometry
of the original transformed by the specified AffineTransform.
This Area object is unchanged.
- Parameters:
t
- The transformation matrix used to transform the new area.
- Returns:
- A new Area object representing the transformed geometry.
Submit a bug or feature
Submit comments/suggestions about new javadoc look.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.