java.awt
public interface Shape
A point is inside if it is completely inside, or on the boundary and
adjacent points in the increasing x or y direction are completely inside.
Unclosed shapes are considered as implicitly closed when performing
contains
or intersects
.
Since: 1.0
See Also: PathIterator AffineTransform FlatteningPathIterator GeneralPath
UNKNOWN: updated to 1.4
Method Summary | |
---|---|
boolean | contains(double x, double y)
Test if the coordinates lie in the shape.
|
boolean | contains(Point2D p)
Test if the point lie in the shape.
|
boolean | contains(double x, double y, double w, double h)
Test if a high-precision rectangle lies completely in the shape. |
boolean | contains(Rectangle2D r)
Test if a high-precision rectangle lies completely in the shape. |
Rectangle | getBounds()
Returns a Rectange that bounds the shape. |
Rectangle2D | getBounds2D()
Returns a high precision bounding box of the shape. |
PathIterator | getPathIterator(AffineTransform transform)
Return an iterator along the shape boundary. |
PathIterator | getPathIterator(AffineTransform transform, double flatness)
Return an iterator along the flattened version of the shape boundary.
|
boolean | intersects(double x, double y, double w, double h)
Test if a high-precision rectangle intersects the shape. |
boolean | intersects(Rectangle2D r)
Test if a high-precision rectangle intersects the shape. |
Parameters: x the x coordinate y the y coordinate
Returns: true if (x,y) lies inside the shape
Since: 1.2
Parameters: p the high-precision point
Returns: true if p lies inside the shape
Throws: NullPointerException if p is null
Since: 1.2
Parameters: x the x coordinate of the rectangle y the y coordinate of the rectangle w the width of the rectangle, undefined results if negative h the height of the rectangle, undefined results if negative
Returns: true if the rectangle is contained in this shape
Since: 1.2
See Also: Area
Parameters: r the rectangle
Returns: true if the rectangle is contained in this shape
Throws: NullPointerException if r is null
Since: 1.2
See Also: Shape
Rectange
that bounds the shape. There is no
guarantee that this is the minimum bounding box, particularly if
the shape overflows the finite integer range of a bound. Generally,
getBounds2D
returns a tighter bound.
Returns: the shape's bounding box
See Also: getBounds2D
Returns: the shape's bounding box
Since: 1.2
See Also: getBounds
Parameters: transform an optional transform to apply to the
iterator (null
permitted).
Returns: a new iterator over the boundary
Since: 1.2
If the optional transform is provided, the iterator is transformed accordingly. Each call returns a new object, independent from others in use. It is recommended, but not required, that the Shape isolate iterations from future changes to the boundary, and document this fact.
Parameters: transform an optional transform to apply to the
iterator (null
permitted). flatness the maximum distance for deviation from the real boundary
Returns: a new iterator over the boundary
Since: 1.2
Parameters: x the x coordinate of the rectangle y the y coordinate of the rectangle w the width of the rectangle, undefined results if negative h the height of the rectangle, undefined results if negative
Returns: true if the rectangle intersects this shape
Since: 1.2
See Also: Area
Parameters: r the rectangle
Returns: true if the rectangle intersects this shape
Throws: NullPointerException if r is null
Since: 1.2
See Also: Shape