Class Line2D.Double
- java.lang.Object
-
- java.awt.geom.Line2D
-
- java.awt.geom.Line2D.Double
- All Implemented Interfaces:
-
Shape
,Serializable
,Cloneable
- Enclosing class:
- Line2D
public static class Line2D.Double extends Line2D implements Serializable
A line segment specified with double coordinates.
- Since:
- 1.2
- See Also:
- Serialized Form
Nested Class Summary
Nested classes/interfaces declared in class java.awt.geom.Line2D
Line2D.Double, Line2D.Float
Field Summary
Modifier and Type | Field | Description |
---|---|---|
double | x1 | The X coordinate of the start point of the line segment. |
double | x2 | The X coordinate of the end point of the line segment. |
double | y1 | The Y coordinate of the start point of the line segment. |
double | y2 | The Y coordinate of the end point of the line segment. |
Constructor Summary
Constructor | Description |
---|---|
Double() | Constructs and initializes a Line with coordinates (0, 0) → (0, 0). |
Double(double x1,
double y1,
double x2,
double y2) | Constructs and initializes a |
Double(Point2D p1,
Point2D p2) | Constructs and initializes a |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
Rectangle2D | getBounds2D() | Returns a high precision and more accurate bounding box of the |
Point2D | getP1() | Returns the start |
Point2D | getP2() | Returns the end |
double | getX1() | Returns the X coordinate of the start point in double precision. |
double | getX2() | Returns the X coordinate of the end point in double precision. |
double | getY1() | Returns the Y coordinate of the start point in double precision. |
double | getY2() | Returns the Y coordinate of the end point in double precision. |
void | setLine(double x1,
double y1,
double x2,
double y2) | Sets the location of the end points of this |
Methods declared in class java.awt.geom.Line2D
clone, contains, contains, contains, contains, getBounds, getPathIterator, getPathIterator, intersects, intersects, intersectsLine, intersectsLine, linesIntersect, ptLineDist, ptLineDist, ptLineDist, ptLineDistSq, ptLineDistSq, ptLineDistSq, ptSegDist, ptSegDist, ptSegDist, ptSegDistSq, ptSegDistSq, ptSegDistSq, relativeCCW, relativeCCW, relativeCCW, setLine, setLine
Methods declared in class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Field Detail
x1
public double x1
The X coordinate of the start point of the line segment.
- Since:
- 1.2
y1
public double y1
The Y coordinate of the start point of the line segment.
- Since:
- 1.2
x2
public double x2
The X coordinate of the end point of the line segment.
- Since:
- 1.2
y2
public double y2
The Y coordinate of the end point of the line segment.
- Since:
- 1.2
Constructor Detail
Double
public Double()
Constructs and initializes a Line with coordinates (0, 0) → (0, 0).
- Since:
- 1.2
Double
public Double(double x1, double y1, double x2, double y2)
Constructs and initializes a Line2D
from the specified coordinates.
- Parameters:
-
x1
- the X coordinate of the start point -
y1
- the Y coordinate of the start point -
x2
- the X coordinate of the end point -
y2
- the Y coordinate of the end point - Since:
- 1.2
Double
public Double(Point2D p1, Point2D p2)
Constructs and initializes a Line2D
from the specified Point2D
objects.
- Parameters:
-
p1
- the startPoint2D
of this line segment -
p2
- the endPoint2D
of this line segment - Since:
- 1.2
Method Detail
getX1
public double getX1()
Returns the X coordinate of the start point in double precision.
- Specified by:
-
getX1
in classLine2D
- Returns:
- the X coordinate of the start point of this
Line2D
object. - Since:
- 1.2
getY1
public double getY1()
Returns the Y coordinate of the start point in double precision.
- Specified by:
-
getY1
in classLine2D
- Returns:
- the Y coordinate of the start point of this
Line2D
object. - Since:
- 1.2
getP1
public Point2D getP1()
Returns the start Point2D
of this Line2D
.
getX2
public double getX2()
Returns the X coordinate of the end point in double precision.
- Specified by:
-
getX2
in classLine2D
- Returns:
- the X coordinate of the end point of this
Line2D
object. - Since:
- 1.2
getY2
public double getY2()
Returns the Y coordinate of the end point in double precision.
- Specified by:
-
getY2
in classLine2D
- Returns:
- the Y coordinate of the end point of this
Line2D
object. - Since:
- 1.2
getP2
public Point2D getP2()
Returns the end Point2D
of this Line2D
.
setLine
public void setLine(double x1, double y1, double x2, double y2)
Sets the location of the end points of this Line2D
to the specified double coordinates.
- Specified by:
-
setLine
in classLine2D
- Parameters:
-
x1
- the X coordinate of the start point -
y1
- the Y coordinate of the start point -
x2
- the X coordinate of the end point -
y2
- the Y coordinate of the end point - Since:
- 1.2
getBounds2D
public Rectangle2D getBounds2D()
Returns a high precision and more accurate bounding box of the Shape
than the getBounds
method. Note that there is no guarantee that the returned Rectangle2D
is the smallest bounding box that encloses the Shape
, only that the Shape
lies entirely within the indicated Rectangle2D
. The bounding box returned by this method is usually tighter than that returned by the getBounds
method and never fails due to overflow problems since the return value can be an instance of the Rectangle2D
that uses double precision values to store the dimensions.
Note that the definition of insideness can lead to situations where points on the defining outline of the shape
may not be considered contained in the returned bounds
object, but only in cases where those points are also not considered contained in the original shape
.
If a point
is inside the shape
according to the contains(point)
method, then it must be inside the returned Rectangle2D
bounds object according to the contains(point)
method of the bounds
. Specifically:
shape.contains(p)
requires bounds.contains(p)
If a point
is not inside the shape
, then it might still be contained in the bounds
object:
bounds.contains(p)
does not imply shape.contains(p)
- Specified by:
-
getBounds2D
in interfaceShape
- Returns:
- an instance of
Rectangle2D
that is a high-precision bounding box of theShape
. - Since:
- 1.2
- See Also:
Shape.getBounds()