math.geom3d.curve
Interface Curve3D
-
- All Superinterfaces:
- Shape3D
- All Known Subinterfaces:
- ContinuousCurve3D
- All Known Implementing Classes:
- LineSegment3D, StraightLine3D
public interface Curve3D extends Shape3D
Interface for 3D space curve. Curve can be continuous, or a set of continuous curves.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description java.util.Collection<? extends ContinuousCurve3D>continuousCurves()Returns the collection of continuous curves which constitute this curve.Point3DfirstPoint()Get the first point of the curve.doublegetT0()Get value of parameter t for the first point of the curve.doublegetT1()Get value of parameter t for the last point of the curve.Point3DlastPoint()Get the last point of the curve.Point3Dpoint(double t)Gets the point from a parametric representation of the curve.doubleposition(Point3D point)Get position of the point on the curve.doubleproject(Point3D point)Returns the position of the closest orthogonal projection of the point on the curve, or of the closest singular point.Curve3DreverseCurve()Returns the curve with same trace on the plane with parametrization in reverse order.java.util.Collection<Point3D>singularPoints()Returns a set of singular points, i.Curve3DsubCurve(double t0, double t1)Returns a portion of the original curve, delimited by two positions on the curve.Curve3Dtransform(AffineTransform3D trans)Transforms the curve by an affine transform.
-
-
-
Method Detail
-
getT0
double getT0()
Get value of parameter t for the first point of the curve. It can be -Infinity, in this case the piece of curve is not bounded.
-
getT1
double getT1()
Get value of parameter t for the last point of the curve. It can be +Infinity, in this case the piece of curve is not bounded.
-
point
Point3D point(double t)
Gets the point from a parametric representation of the curve. If the parameter lies outside the definition range, the parameter corresponding to the closest bound is used instead. This method can be used to draw an approximated outline of a curve, by selecting multiple values for t and drawing lines between them.
-
firstPoint
Point3D firstPoint()
Get the first point of the curve. It must returns the same result asgetPoint(getT0()).- Returns:
- the first point of the curve
-
lastPoint
Point3D lastPoint()
Get the last point of the curve. It must returns the same result asgetPoint(getT1()).- Returns:
- the last point of the curve.
-
singularPoints
java.util.Collection<Point3D> singularPoints()
Returns a set of singular points, i. e. which do not locally admit derivative.- Returns:
- a collection of Point3D.
-
position
double position(Point3D point)
Get position of the point on the curve. If the point does not belong to the curve, return Double.NaN.- Parameters:
point- a point belonging to the curve- Returns:
- the position of the point on the curve
-
project
double project(Point3D point)
Returns the position of the closest orthogonal projection of the point on the curve, or of the closest singular point. This function should always returns a valid value.- Parameters:
point- a point to project- Returns:
- the position of the closest orthogonal projection
-
reverseCurve
Curve3D reverseCurve()
Returns the curve with same trace on the plane with parametrization in reverse order.
-
continuousCurves
java.util.Collection<? extends ContinuousCurve3D> continuousCurves()
Returns the collection of continuous curves which constitute this curve.- Returns:
- a collection of continuous curves.
-
subCurve
Curve3D subCurve(double t0, double t1)
Returns a portion of the original curve, delimited by two positions on the curve.- Parameters:
t0- position of the start of the sub-curvet1- position of the end of the sub-curve- Returns:
- the portion of original curve comprised between t0 and t1.
-
transform
Curve3D transform(AffineTransform3D trans)
Transforms the curve by an affine transform. The result is an instance of Curve3D.
-
-
DMelt 3.0 © DataMelt by jWork.ORG