public class ParabolaArc2D extends AbstractSmoothCurve2D implements SmoothOrientedCurve2D, Cloneable
Modifier and Type | Field and Description |
---|---|
protected Parabola2D |
parabola |
protected double |
t0 |
protected double |
t1 |
Constructor and Description |
---|
ParabolaArc2D(Parabola2D parabola,
double t0,
double t1) |
Modifier and Type | Method and Description |
---|---|
GeneralPath |
appendPath(GeneralPath path)
Append the path of the curve to the given path.
|
CurveSet2D<? extends ParabolaArc2D> |
clip(Box2D box)
Clip the parabola arc by a box.
|
ParabolaArc2D |
clone()
Overrides Object declaration to ensure Curve2D implementation are
cloned as Curve2D.
|
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.
|
boolean |
equals(Object obj) |
Box2D |
getBoundingBox()
Returns the bounding box of the shape.
|
double |
getCurvature(double t)
Returns the curvature of the parabola arc.
|
double |
getDistance(double x,
double y)
get 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.
|
double |
getDistance(Point2D p)
get 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.
|
GeneralPath |
getGeneralPath() |
Collection<Point2D> |
getIntersections(LinearShape2D line)
Returns the intersection points of the curve with the specified line.
|
Parabola2D |
getParabola() |
Point2D |
getPoint(double t)
Gets the point from a parametric representation of the curve.
|
double |
getPosition(Point2D point)
Get position of the point on the curve.
|
ParabolaArc2D |
getReverseCurve()
Returns the parabola arc which refers to the reversed parent parabola,
and with inverted parametrization bounds.
|
double |
getSignedDistance(double x,
double y)
The same as getSignedDistance(Point2D), but by passing 2 double as
arguments.
|
double |
getSignedDistance(Point2D p)
Get the signed distance of the curve to the given point: this distance is
positive if the point lies outside the shape, and is negative if the
point lies inside the shape.
|
ParabolaArc2D |
getSubCurve(double t0,
double t1)
Returns a portion of the original curve, delimited by two positions on
the curve.
|
double |
getT0()
Returns the position of the first point of the parabola arc.
|
double |
getT1()
Returns the position of the last point of the parabola arc.
|
Vector2D |
getTangent(double t) |
double |
getWindingAngle(Point2D point)
Return the angle portion that the curve turn around the given point.
|
boolean |
isBounded()
Returns true if the arc is bounded, i.e.
|
boolean |
isClosed()
Returns false, by definition of a parabola arc
|
boolean |
isEmpty()
Return true if t1 |
boolean |
isInside(Point2D point)
Returns true if the point is 'inside' the domain bounded by the curve.
|
double |
project(Point2D point)
Returns the position of the closest orthogonal projection of the point on
the curve, or of the closest singular point.
|
String |
toString() |
ParabolaArc2D |
transform(AffineTransform2D trans)
Transforms the curve by an affine transform.
|
getLeftTangent, getRightTangent, getSingularPoints, getSmoothPieces, isSingular
draw, getAsAWTShape, getAsPolyline, getContinuousCurves, getFirstPoint, getLastPoint, wrapCurve
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getAsPolyline, getLeftTangent, getRightTangent, getSmoothPieces
draw, getAsAWTShape, getContinuousCurves, getFirstPoint, getLastPoint, getSingularPoints, isSingular
protected Parabola2D parabola
protected double t0
protected double t1
public ParabolaArc2D(Parabola2D parabola, double t0, double t1)
public Parabola2D getParabola()
public double getWindingAngle(Point2D point)
OrientedCurve2D
getWindingAngle
in interface OrientedCurve2D
point
- a point of the planepublic double getSignedDistance(Point2D p)
OrientedCurve2D
getSignedDistance
in interface OrientedCurve2D
p
- a point of the planepublic double getSignedDistance(double x, double y)
OrientedCurve2D
getSignedDistance
in interface OrientedCurve2D
x
- x-coord of a pointy
- y-coord of a pointpublic boolean isInside(Point2D point)
OrientedCurve2D
isInside
in interface OrientedCurve2D
point
- a point in the planepublic Vector2D getTangent(double t)
getTangent
in interface SmoothCurve2D
public double getCurvature(double t)
getCurvature
in interface SmoothCurve2D
public boolean isClosed()
isClosed
in interface ContinuousCurve2D
public double getT0()
public double getT1()
public Point2D getPoint(double t)
Curve2D
public double getPosition(Point2D point)
Curve2D
getPosition
in interface Curve2D
point
- a point belonging to the curvepublic double project(Point2D point)
Curve2D
public Collection<Point2D> getIntersections(LinearShape2D line)
Curve2D
getIntersections
in interface Curve2D
public ParabolaArc2D getReverseCurve()
getReverseCurve
in interface ContinuousCurve2D
getReverseCurve
in interface Curve2D
getReverseCurve
in interface SmoothCurve2D
getReverseCurve
in interface ContinuousOrientedCurve2D
getReverseCurve
in interface OrientedCurve2D
getReverseCurve
in interface SmoothOrientedCurve2D
public ParabolaArc2D getSubCurve(double t0, double t1)
Curve2D
getSubCurve
in interface ContinuousCurve2D
getSubCurve
in interface Curve2D
getSubCurve
in interface SmoothCurve2D
getSubCurve
in interface ContinuousOrientedCurve2D
getSubCurve
in interface SmoothOrientedCurve2D
t0
- position of the start of the sub-curvet1
- position of the end of the sub-curvepublic double getDistance(Point2D p)
Shape2D
getDistance
in interface Shape2D
public double getDistance(double x, double y)
Shape2D
getDistance
in interface Shape2D
public boolean isBounded()
public boolean isEmpty()
public CurveSet2D<? extends ParabolaArc2D> clip(Box2D box)
clip
in interface ContinuousCurve2D
clip
in interface Curve2D
clip
in interface SmoothCurve2D
clip
in interface ContinuousOrientedCurve2D
clip
in interface OrientedCurve2D
clip
in interface SmoothOrientedCurve2D
clip
in interface Shape2D
box
- the clipping boxpublic Box2D getBoundingBox()
Shape2D
getBoundingBox
in interface Shape2D
public ParabolaArc2D transform(AffineTransform2D trans)
Curve2D
transform
in interface ContinuousCurve2D
transform
in interface Curve2D
transform
in interface SmoothCurve2D
transform
in interface ContinuousOrientedCurve2D
transform
in interface OrientedCurve2D
transform
in interface SmoothOrientedCurve2D
transform
in interface Shape2D
trans
- an affine transformpublic boolean contains(double x, double y)
Shape2D
public boolean contains(Point2D point)
Shape2D
public GeneralPath appendPath(GeneralPath path)
ContinuousCurve2D
appendPath
in interface ContinuousCurve2D
path
- a path to modifypublic GeneralPath getGeneralPath()
public ParabolaArc2D clone()
Curve2D
clone
in interface Curve2D
clone
in class AbstractSmoothCurve2D
Copyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.