|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object math.geom2d.curve.AbstractContinuousCurve2D math.geom2d.curve.AbstractSmoothCurve2D math.geom2d.conic.Parabola2D
public class Parabola2D
A parabola, defined by its vertex, its orientation, and its pedal. Orientation is defined as the orientation of derivative at vertex point, with the second derivative pointing to the top.
Following parametric representation is used:
x(t)=t
y(t)=a*t^2
This is a signed parameter (negative a makes the parabola point to opposite side).
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface math.geom2d.conic.Conic2D |
---|
Conic2D.Type |
Field Summary |
---|
Fields inherited from interface math.geom2d.Shape2D |
---|
ACCURACY |
Constructor Summary | |
---|---|
Parabola2D()
|
|
Parabola2D(double xv,
double yv,
double a,
double theta)
|
|
Parabola2D(Point2D vertex,
double a,
double theta)
|
Method Summary | |
---|---|
boolean |
almostEquals(GeometricObject2D obj,
double eps)
Checks if the two objects are similar up to a given threshold value. |
java.awt.geom.GeneralPath |
appendPath(java.awt.geom.GeneralPath path)
Throws an infiniteShapeException |
Box2D |
boundingBox()
Returns the bounding box of the shape. |
CurveSet2D<ParabolaArc2D> |
clip(Box2D box)
Clip the parabola by a box. |
Parabola2D |
clone()
Overrides Object declaration to ensure Curve2D implementation are cloned as Curve2D. |
double[] |
conicCoefficients()
Returns the coefficient of the Cartesian representation of the conic. |
Conic2D.Type |
conicType()
|
boolean |
contains(double x,
double y)
Checks if the shape contains the planar point defined by (x,y). |
boolean |
contains(Point2D point)
Checks if the shape contains the given point. |
java.util.Collection<? extends Parabola2D> |
continuousCurves()
Returns the collection of continuous curves which constitute this curve. |
static Parabola2D |
create(Point2D vertex,
Point2D focus)
Creates a parabola by supplying the vertex and the focus. |
double |
curvature(double t)
Returns the curvature of the parabola at the given position. |
double |
distance(double x,
double y)
Returns the distance of the shape to the given point, specified by x and y, or the distance of point to the frontier of the shape in the case of a plain (i.e. fillable) shape. |
double |
distance(Point2D p)
Returns the distance of the shape to the given point, or the distance of point to the frontier of the shape in the case of a plain shape. |
Domain2D |
domain()
Returns the domain delimited by this boundary. |
double |
eccentricity()
Return 1, by definition for a parabola. |
boolean |
equals(java.lang.Object obj)
|
void |
fill(java.awt.Graphics2D g2)
Throws an infiniteShapeException |
double |
getAngle()
Returns orientation angle of parabola. |
Point2D |
getFocus()
Returns the focus of the parabola. |
double |
getFocusDistance()
|
double |
getParameter()
|
double |
getT0()
Deprecated. replaced by t0() (since 0.11.1). |
double |
getT1()
Deprecated. replaced by t1() (since 0.11.1). |
Vector2D |
getVector1()
Returns the first direction vector of the parabola |
Vector2D |
getVector2()
Returns the second direction vector of the parabola. |
Point2D |
getVertex()
|
java.util.Collection<Point2D> |
intersections(LinearShape2D line)
Returns the intersection points of the curve with the specified line. |
boolean |
isBounded()
Always returns false, because a parabola is not bounded. |
boolean |
isClosed()
Returns false, as a parabola is an open curve. |
boolean |
isDirect()
Returns true if the parameter a is positive. |
boolean |
isEmpty()
Returns false, as a parabola is never empty. |
boolean |
isInside(Point2D point)
Returns true if the point is 'inside' the domain bounded by the curve. |
Point2D |
point(double t)
Returns the point located at the given position on the curve. |
double |
position(Point2D point)
Returns position of point on the parabola. |
double |
project(Point2D point)
Returns position of point on the parabola. |
Parabola2D |
reverse()
Returns the parabola with same vertex, direction vector in opposite direction and opposite parameter p . |
double |
signedDistance(double x,
double y)
The same as distanceSigned(Point2D), but by passing 2 double as arguments. |
double |
signedDistance(Point2D p)
Returns the signed distance of the curve to the given point. |
ParabolaArc2D |
subCurve(double t0,
double t1)
Returns a new ParabolaArc2D, or null if t1 |
double |
t0()
Returns the parameter of the first point of the line, which is always Double.NEGATIVE_INFINITY. |
double |
t1()
Returns the parameter of the last point of the line, which is always Double.POSITIVE_INFINITY. |
Vector2D |
tangent(double t)
Returns the tangent of the curve at the given position. |
java.lang.String |
toString()
|
Parabola2D |
transform(AffineTransform2D trans)
Transforms the parabola by an affine transform. |
double |
windingAngle(Point2D point)
Return the angle portion that the curve turn around the given point. |
Methods inherited from class math.geom2d.curve.AbstractSmoothCurve2D |
---|
isSingular, leftTangent, normal, rightTangent, singularPoints, smoothPieces, vertices |
Methods inherited from class math.geom2d.curve.AbstractContinuousCurve2D |
---|
asAwtShape, asPolyline, draw, firstPoint, lastPoint |
Methods inherited from class java.lang.Object |
---|
getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface math.geom2d.curve.ContinuousCurve2D |
---|
asPolyline, leftTangent, rightTangent, smoothPieces |
Methods inherited from interface math.geom2d.curve.Curve2D |
---|
asAwtShape, draw, firstPoint, isSingular, lastPoint, singularPoints, vertices |
Constructor Detail |
---|
public Parabola2D()
public Parabola2D(Point2D vertex, double a, double theta)
public Parabola2D(double xv, double yv, double a, double theta)
Method Detail |
---|
public static final Parabola2D create(Point2D vertex, Point2D focus)
vertex
- the vertex point of the parabolafocus
- the focal point of the parabola
public Point2D getFocus()
public double getParameter()
public double getFocusDistance()
public Point2D getVertex()
public Vector2D getVector1()
public Vector2D getVector2()
public double getAngle()
public boolean isDirect()
public Conic2D.Type conicType()
conicType
in interface Conic2D
public double[] conicCoefficients()
Conic2D
a*x^2 + b*x*y + c*y^2 + d*x + e*y + f
The length of the array is then of size 6.
conicCoefficients
in interface Conic2D
public double eccentricity()
eccentricity
in interface Conic2D
public Domain2D domain()
Boundary2D
domain
in interface Boundary2D
public double windingAngle(Point2D point)
OrientedCurve2D
windingAngle
in interface OrientedCurve2D
point
- a point of the plane
public double signedDistance(Point2D p)
OrientedCurve2D
signedDistance
in interface OrientedCurve2D
p
- a point of the plane
public double signedDistance(double x, double y)
OrientedCurve2D
signedDistance
in interface OrientedCurve2D
x
- x-coord of a pointy
- y-coord of a point
public boolean isInside(Point2D point)
Boundary2D
isInside
in interface Boundary2D
isInside
in interface OrientedCurve2D
point
- a point in the plane
public Vector2D tangent(double t)
SmoothCurve2D
tangent
in interface SmoothCurve2D
t
- a position on the curve
SmoothCurve2D.normal(double)
public double curvature(double t)
curvature
in interface ContinuousCurve2D
t
- the position on the curve
public java.util.Collection<? extends Parabola2D> continuousCurves()
Curve2D
continuousCurves
in interface Curve2D
continuousCurves
in interface Boundary2D
continuousCurves
in class AbstractContinuousCurve2D
public boolean isClosed()
isClosed
in interface ContinuousCurve2D
public double t0()
t0
in interface Curve2D
@Deprecated public double getT0()
getT0
in interface Curve2D
public double t1()
t1
in interface Curve2D
@Deprecated public double getT1()
getT1
in interface Curve2D
public Point2D point(double t)
Curve2D
point
in interface Curve2D
public double position(Point2D point)
position
in interface Curve2D
point
- a point belonging to the curve
Curve2D.point(double)
public double project(Point2D point)
project
in interface Curve2D
point
- a point to project
public java.util.Collection<Point2D> intersections(LinearShape2D line)
Curve2D
intersections
in interface Curve2D
public Parabola2D reverse()
p
.
reverse
in interface Conic2D
reverse
in interface ContinuousCurve2D
reverse
in interface Curve2D
reverse
in interface SmoothCurve2D
reverse
in interface Boundary2D
reverse
in interface ContinuousOrientedCurve2D
reverse
in interface Contour2D
reverse
in interface OrientedCurve2D
public ParabolaArc2D subCurve(double t0, double t1)
subCurve
in interface ContinuousCurve2D
subCurve
in interface Curve2D
subCurve
in interface SmoothCurve2D
subCurve
in interface ContinuousOrientedCurve2D
t0
- position of the start of the sub-curvet1
- position of the end of the sub-curve
public double distance(Point2D p)
Shape2D
distance
in interface Shape2D
public double distance(double x, double y)
Shape2D
distance
in interface Shape2D
public java.awt.geom.GeneralPath appendPath(java.awt.geom.GeneralPath path)
appendPath
in interface ContinuousCurve2D
path
- a path to modify
public void fill(java.awt.Graphics2D g2)
fill
in interface Boundary2D
g2
- the Graphics to fill onpublic boolean isBounded()
isBounded
in interface Shape2D
public boolean isEmpty()
isEmpty
in interface Shape2D
public CurveSet2D<ParabolaArc2D> clip(Box2D box)
clip
in interface Conic2D
clip
in interface ContinuousCurve2D
clip
in interface Curve2D
clip
in interface SmoothCurve2D
clip
in interface ContinuousOrientedCurve2D
clip
in interface OrientedCurve2D
clip
in interface Shape2D
box
- the clipping box
public Box2D boundingBox()
Shape2D
boundingBox
in interface Shape2D
public Parabola2D transform(AffineTransform2D trans)
transform
in interface Conic2D
transform
in interface ContinuousCurve2D
transform
in interface Curve2D
transform
in interface SmoothCurve2D
transform
in interface Boundary2D
transform
in interface ContinuousOrientedCurve2D
transform
in interface Contour2D
transform
in interface OrientedCurve2D
transform
in interface Shape2D
trans
- an affine transform
public boolean contains(double x, double y)
Shape2D
contains
in interface Shape2D
public boolean contains(Point2D point)
Shape2D
contains
in interface Shape2D
public boolean almostEquals(GeometricObject2D obj, double eps)
GeometricObject2D
almostEquals
in interface GeometricObject2D
obj
- the object to compareeps
- a threshold value, for example the minimal coordinate difference
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public Parabola2D clone()
Curve2D
clone
in interface Curve2D
clone
in class AbstractSmoothCurve2D
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |