- java.lang.Object
-
- org.arakhne.afc.math.geometry.d3.ifx.AbstractShape3ifx<Path3ifx>
-
- org.arakhne.afc.math.geometry.d3.ifx.Path3ifx
-
- All Implemented Interfaces:
Serializable,Cloneable,Path3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>,Shape3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>,Shape3ifx<Path3ifx>,Path3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>,Shape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>,JsonableObject
public class Path3ifx extends AbstractShape3ifx<Path3ifx> implements Path3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>
Path with 3 integer FX properties.- Since:
- 13.0
- Version:
- 17.0 2020-01-04 14:41:49
- Author:
- Stéphane GALLAND, Thomas PIOTROWSKI
- See Also:
- Serialized Form
- Maven Group Id:
- org.arakhne.afc.advanced
- Maven Artifact Id:
- mathfx
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.arakhne.afc.math.geometry.d3.ai.Path3ai
Path3ai.AbstractPathIterator<E extends PathElement3ai>, Path3ai.FlatteningPathIterator<E extends PathElement3ai>, Path3ai.PathPathIterator<E extends PathElement3ai>, Path3ai.PixelIterator<P extends Point3D<? super P,? super V>,V extends Vector3D<? super V,? super P>>, Path3ai.PointCollection<P extends Point3D<? super P,? super V>,V extends Vector3D<? super V,? super P>>, Path3ai.PointIterator<P extends Point3D<? super P,? super V>,V extends Vector3D<? super V,? super P>>, Path3ai.PrivateAPI, Path3ai.TransformedPathIterator<E extends PathElement3ai>
-
Nested classes/interfaces inherited from interface org.arakhne.afc.math.geometry.d3.Path3D
Path3D.ArcType
-
-
Field Summary
-
Fields inherited from class org.arakhne.afc.math.geometry.d3.ifx.AbstractShape3ifx
boundingBox
-
Fields inherited from interface org.arakhne.afc.math.geometry.d3.ai.Path3ai
DEFAULT_FLATTENING_LIMIT, DEFAULT_WINDING_RULE, GROW_SIZE
-
-
Constructor Summary
Constructors Constructor Description Path3ifx()Construct an empty path.Path3ifx(Iterator<PathElement3ifx> iterator)Construct a path by copying the given elements.Path3ifx(Path3ai<?,?,?,?,?,?> path)Constructor by copy.Path3ifx(PathWindingRule windingRule)Construct an empty path with the given path winding rule.Path3ifx(PathWindingRule windingRule, Iterator<PathElement3ifx> iterator)Construct a path by copying the given elements, and the given path winding rule.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javafx.beans.property.ObjectProperty<RectangularPrism3ifx>boundingBoxProperty()Replies the property that contains the bounding box for this shape.voidclear()Reset this shape to be equivalent to an just-created instance of this shape type.Path3ifxclone()Clone this shape.voidclosePath()Closes the current subpath by drawing a straight line back to the coordinates of the lastmoveTo.booleancontainsControlPoint(Point3D<?,?> pt)Replies if the given points exists in the coordinates of this path.javafx.beans.property.ObjectProperty<RectangularPrism3ifx>controlPointBoundingBoxProperty()Replies the property that corresponds to the bounding box of the control points.javafx.beans.property.ReadOnlyListProperty<Point3ifx>coordinatesProperty()Replies the coordinates property.voidcurveTo(int x1, int y1, int z1, int x2, int y2, int z2, int x3, int y3, int z3)Adds a curved segment, defined by three new points, to the path by drawing a Bézier curve that intersects both the current coordinates and the specified coordinates(x3,y3), using the specified points(x1,y1)and(x2,y2)as Bézier control points.voidcurveTo(Point3D<?,?> ctrl1, Point3D<?,?> ctrl2, Point3D<?,?> to)Adds a curved segment, defined by three new points, to the path by drawing a Bézier curve that intersects both the current coordinates and the specified coordinates(x3,y3), using the specified points(x1,y1)and(x2,y2)as Bézier control points.intgetCoordAt(int index)Replies the coordinate at the given index.Point3ifxgetCurrentPoint()Replies the last point in the path.intgetCurrentX()Replies the x coordinate of the last point in the path.intgetCurrentY()Replies the x coordinate of the last point in the path.intgetCurrentZ()Replies the z coordinate of the last point in the path.intgetPathElementCount()Replies the number of path elements in this path.PathElementTypegetPathElementTypeAt(int index)Replies the type of the path element at the given position in this path.Point3ifxgetPointAt(int index)Replies the point at the given index.PathWindingRulegetWindingRule()Replies the winding rule for the path.inthashCode()protected javafx.beans.property.ReadOnlyListWrapper<Point3ifx>innerCoordinatesProperty()Replies the private coordinates property.protected javafx.beans.property.ReadOnlyListWrapper<PathElementType>innerTypesProperty()Replies the private types property.booleanisCurved()Replies the path contains a curve..javafx.beans.property.BooleanPropertyisCurvedProperty()Replies the isCurved property.booleanisEmpty()Replies if this shape is empty.javafx.beans.property.BooleanPropertyisEmptyProperty()Replies the isEmpty property.booleanisMultiParts()Replies the path has multiple parts, i.e. multipleMOVE_TOare inside.javafx.beans.property.BooleanPropertyisMultiPartsProperty()Replies the isMultiParts property.booleanisPolygon()Replies the path is composed only by oneMOVE_TO, a sequence ofLINE_TOorQUAD_TOorCURVE_TO, and a singleCLOSEprimitives.javafx.beans.property.BooleanPropertyisPolygonProperty()Replies the isPolygon property.booleanisPolyline()Replies the path is composed only by oneMOVE_TO, and a sequence ofLINE_TOprimitives.javafx.beans.property.BooleanPropertyisPolylineProperty()Replies the isPolyline property.voidlineTo(int x, int y, int z)Adds a point to the path by drawing a straight line from the current coordinates to the new specified coordinates specified in double precision.voidlineTo(Point3D<?,?> to)Adds a point to the path by drawing a straight line from the current coordinates to the new specified coordinates specified in double precision.voidmoveTo(int x, int y, int z)Adds a point to the path by moving to the specified coordinates specified in double precision.voidmoveTo(Point3D<?,?> position)Adds a point to the path by moving to the specified coordinates specified in double precision.voidquadTo(int x1, int y1, int z1, int x2, int y2, int z2)Adds a curved segment, defined by two new points, to the path by drawing a Quadratic curve that intersects both the current coordinates and the specified coordinates(x2,y2), using the specified point(x1,y1)as a quadratic parametric control point.voidquadTo(Point3D<?,?> ctrl, Point3D<?,?> to)Adds a curved segment, defined by two new points, to the path by drawing a Quadratic curve that intersects both the current coordinates and the specified coordinates(x2,y2), using the specified point(x1,y1)as a quadratic parametric control point.booleanremove(int x, int y, int z)Remove the point with the given coordinates.booleanremove(Point3D<?,?> point)Remove the point from this path.voidremoveLast()Remove the last action.voidset(Path3ifx path)Set this shape with the attributes of the given shape.voidsetLastPoint(int x, int y, int z)Change the coordinates of the last inserted point.voidsetWindingRule(PathWindingRule rule)Set the winding rule for the path.intsize()Replies the number of points in the path.RectangularPrism3ifxtoBoundingBox()Replies the bounding box of this shape.voidtoBoundingBox(RectangularPrism3ifx box)Replies the bounds of the shape.RectangularPrism3ifxtoBoundingBoxWithCtrlPoints()Replies the bounding box of all the points added in this path.voidtoBoundingBoxWithCtrlPoints(RectangularPrism3ifx box)Compute the bounding box of all the points added in this path.double[]toDoubleArray(Transform3D transform)Replies the coordinates of this path in an array of double precision floating-point numbers.float[]toFloatArray(Transform3D transform)Replies the coordinates of this path in an array of single precision floating-point numbers.int[]toIntArray(Transform3D transform)Replies the coordinates of this path in an array of integer numbers.Point3ifx[]toPointArray(Transform3D transform)Replies the points of this path in an array.voidtransform(Transform3D transform)Transform the current path.voidtranslate(int dx, int dy, int dz)Translate the shape.javafx.beans.property.ReadOnlyListProperty<PathElementType>typesProperty()Replies the types property.javafx.beans.property.ObjectProperty<PathWindingRule>windingRuleProperty()Replies the windingRule property.-
Methods inherited from class org.arakhne.afc.math.geometry.d3.ifx.AbstractShape3ifx
equals, getGeomFactory, toJson, toString
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.arakhne.afc.vmutil.json.JsonableObject
toJson
-
Methods inherited from interface org.arakhne.afc.math.geometry.d3.ai.Path3ai
add, contains, contains, equalsToShape, getClosestPointTo, getClosestPointTo, getClosestPointTo, getClosestPointTo, getClosestPointTo, getClosestPointTo, getDistanceL1, getDistanceLinf, getDistanceSquared, getFarthestPointTo, getLengthSquared, getPathIterator, getPathIterator, getPointIterator, intersects, intersects, intersects, intersects, intersects, set, setLastPoint, toCollection
-
Methods inherited from interface org.arakhne.afc.math.geometry.d3.Path3D
getLength, toDoubleArray, toFloatArray, toIntArray, toPointArray
-
Methods inherited from interface org.arakhne.afc.math.geometry.d3.ai.Shape3ai
contains, contains, createTransformedShape, getClosestPointTo, getDistanceSquared, getDistanceSquared, getDistanceSquared, getDistanceSquared, getDistanceSquared, getDistanceSquared, getGeomFactory, intersects, intersects, translate
-
Methods inherited from interface org.arakhne.afc.math.geometry.d3.Shape3D
equalsToPathIterator, getDistance, getDistance, getPathIterator, operator_add, operator_and, operator_and, operator_minus, operator_multiply, operator_plus, operator_remove, operator_upTo
-
-
-
-
Constructor Detail
-
Path3ifx
public Path3ifx()
Construct an empty path.
-
Path3ifx
public Path3ifx(Iterator<PathElement3ifx> iterator)
Construct a path by copying the given elements.- Parameters:
iterator- the iterator that provides the elements to copy.
-
Path3ifx
public Path3ifx(PathWindingRule windingRule)
Construct an empty path with the given path winding rule.- Parameters:
windingRule- the path winding rule.
-
Path3ifx
public Path3ifx(PathWindingRule windingRule, Iterator<PathElement3ifx> iterator)
Construct a path by copying the given elements, and the given path winding rule.- Parameters:
windingRule- the path winding rule.iterator- the iterator that provides the elements to copy.
-
Path3ifx
public Path3ifx(Path3ai<?,?,?,?,?,?> path)
Constructor by copy.- Parameters:
path- the path to copy.
-
-
Method Detail
-
containsControlPoint
@Pure public boolean containsControlPoint(Point3D<?,?> pt)
Description copied from interface:Path3DReplies if the given points exists in the coordinates of this path.- Specified by:
containsControlPointin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
pt- the point.- Returns:
trueif the point is a control point of the path.
-
clear
public void clear()
Description copied from interface:Shape3DReset this shape to be equivalent to an just-created instance of this shape type.- Specified by:
clearin interfaceShape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>
-
clone
@Pure public Path3ifx clone()
Description copied from interface:Shape3DClone this shape.- Specified by:
clonein interfaceShape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Overrides:
clonein classAbstractShape3ifx<Path3ifx>- Returns:
- the clone.
-
hashCode
@Pure public int hashCode()
- Specified by:
hashCodein classAbstractShape3ifx<Path3ifx>
-
translate
public void translate(int dx, int dy, int dz)Description copied from interface:Shape3aiTranslate the shape.- Specified by:
translatein interfaceShape3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
dx- x translation.dy- y translation.dz- z translation.
-
transform
public void transform(Transform3D transform)
Description copied from interface:Path3aiTransform the current path. This function changes the current path.- Specified by:
transformin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
transform- is the affine transformation to apply.- See Also:
Shape3ai.createTransformedShape(org.arakhne.afc.math.geometry.d3.Transform3D)
-
isEmptyProperty
public javafx.beans.property.BooleanProperty isEmptyProperty()
Replies the isEmpty property.- Returns:
- the isEmpty property.
-
isEmpty
public boolean isEmpty()
Description copied from interface:Shape3DReplies if this shape is empty. The semantic associated to the state "empty" depends on the implemented shape. See the subclasses for details.- Specified by:
isEmptyin interfaceShape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
trueif the shape is empty;falseotherwise.
-
boundingBoxProperty
public javafx.beans.property.ObjectProperty<RectangularPrism3ifx> boundingBoxProperty()
Description copied from interface:Shape3ifxReplies the property that contains the bounding box for this shape.- Specified by:
boundingBoxPropertyin interfaceShape3ifx<Path3ifx>- Returns:
- the bounding box.
-
controlPointBoundingBoxProperty
public javafx.beans.property.ObjectProperty<RectangularPrism3ifx> controlPointBoundingBoxProperty()
Replies the property that corresponds to the bounding box of the control points.The replied box is not the one corresponding to the drawable elements, as replied by
boundingBoxProperty().- Returns:
- the bounding box of the control points.
-
toBoundingBox
public RectangularPrism3ifx toBoundingBox()
Description copied from interface:Shape3DReplies the bounding box of this shape.- Specified by:
toBoundingBoxin interfaceShape3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Specified by:
toBoundingBoxin interfaceShape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the bounding box of this shape.
-
toBoundingBox
public void toBoundingBox(RectangularPrism3ifx box)
Description copied from interface:Shape3DReplies the bounds of the shape.- Specified by:
toBoundingBoxin interfaceShape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
box- is set with the bounds of the shape.
-
windingRuleProperty
public javafx.beans.property.ObjectProperty<PathWindingRule> windingRuleProperty()
Replies the windingRule property.- Returns:
- the windingRule property.
-
getWindingRule
public PathWindingRule getWindingRule()
Description copied from interface:Path3DReplies the winding rule for the path.- Specified by:
getWindingRulein interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the winding rule for the path.
-
setWindingRule
public void setWindingRule(PathWindingRule rule)
Description copied from interface:Path3DSet the winding rule for the path.- Specified by:
setWindingRulein interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
rule- is the winding rule for the path.
-
isPolylineProperty
public javafx.beans.property.BooleanProperty isPolylineProperty()
Replies the isPolyline property.- Returns:
- the isPolyline property.
-
isPolyline
public boolean isPolyline()
Description copied from interface:Path3DReplies the path is composed only by oneMOVE_TO, and a sequence ofLINE_TOprimitives.- Specified by:
isPolylinein interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
trueif the path does not contain curve primitives,falseotherwise.
-
isCurvedProperty
public javafx.beans.property.BooleanProperty isCurvedProperty()
Replies the isCurved property.- Returns:
- the isCurved property.
-
isCurved
public boolean isCurved()
Description copied from interface:Path3DReplies the path contains a curve..- Specified by:
isCurvedin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
trueif the path does not contain curve primitives,falseotherwise.
-
isMultiPartsProperty
public javafx.beans.property.BooleanProperty isMultiPartsProperty()
Replies the isMultiParts property.- Returns:
- the isMultiParts property.
-
isMultiParts
public boolean isMultiParts()
Description copied from interface:Path3DReplies the path has multiple parts, i.e. multipleMOVE_TOare inside. primitives.- Specified by:
isMultiPartsin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
trueif the path has multiple move-to primitive,falseotherwise.
-
isPolygonProperty
public javafx.beans.property.BooleanProperty isPolygonProperty()
Replies the isPolygon property.- Returns:
- the isPolygon property.
-
isPolygon
public boolean isPolygon()
Description copied from interface:Path3DReplies the path is composed only by oneMOVE_TO, a sequence ofLINE_TOorQUAD_TOorCURVE_TO, and a singleCLOSEprimitives.- Specified by:
isPolygonin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
trueif the path does not contain curve primitives,falseotherwise.
-
closePath
public void closePath()
Description copied from interface:Path3DCloses the current subpath by drawing a straight line back to the coordinates of the lastmoveTo. If the path is already closed or if the previous coordinates are for amoveTothen this method has no effect.- Specified by:
closePathin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>
-
toBoundingBoxWithCtrlPoints
public RectangularPrism3ifx toBoundingBoxWithCtrlPoints()
Description copied from interface:Path3DReplies the bounding box of all the points added in this path.The replied bounding box includes the (invisible) control points.
- Specified by:
toBoundingBoxWithCtrlPointsin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the bounding box with the control points.
- See Also:
Shape3D.toBoundingBox()
-
toBoundingBoxWithCtrlPoints
public void toBoundingBoxWithCtrlPoints(RectangularPrism3ifx box)
Description copied from interface:Path3DCompute the bounding box of all the points added in this path.The replied bounding box includes the (invisible) control points.
- Specified by:
toBoundingBoxWithCtrlPointsin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
box- is the rectangle to set with the bounds.- See Also:
Shape3D.toBoundingBox()
-
toIntArray
public int[] toIntArray(Transform3D transform)
Description copied from interface:Path3DReplies the coordinates of this path in an array of integer numbers.- Specified by:
toIntArrayin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
transform- is the transformation to apply to all the coordinates.- Returns:
- the coordinates.
-
toFloatArray
public float[] toFloatArray(Transform3D transform)
Description copied from interface:Path3DReplies the coordinates of this path in an array of single precision floating-point numbers.- Specified by:
toFloatArrayin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
transform- is the transformation to apply to all the coordinates.- Returns:
- the coordinates.
-
toDoubleArray
public double[] toDoubleArray(Transform3D transform)
Description copied from interface:Path3DReplies the coordinates of this path in an array of double precision floating-point numbers.- Specified by:
toDoubleArrayin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
transform- is the transformation to apply to all the coordinates.- Returns:
- the coordinates.
-
toPointArray
public Point3ifx[] toPointArray(Transform3D transform)
Description copied from interface:Path3DReplies the points of this path in an array.- Specified by:
toPointArrayin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
transform- is the transformation to apply to all the points.- Returns:
- the points.
-
getPointAt
public Point3ifx getPointAt(int index)
Description copied from interface:Path3DReplies the point at the given index. The index is in [0;Path3D.size()).- Specified by:
getPointAtin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
index- the index.- Returns:
- the point at the given index.
-
getCurrentX
@Pure public int getCurrentX()
Description copied from interface:Path3aiReplies the x coordinate of the last point in the path.- Specified by:
getCurrentXin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the x coordinate of the last point in the path.
-
getCurrentY
@Pure public int getCurrentY()
Description copied from interface:Path3aiReplies the x coordinate of the last point in the path.- Specified by:
getCurrentYin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the x coordinate of the last point in the path.
-
getCurrentZ
@Pure public int getCurrentZ()
Description copied from interface:Path3aiReplies the z coordinate of the last point in the path.- Specified by:
getCurrentZin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the z coordinate of the last point in the path.
-
getCurrentPoint
@Pure public Point3ifx getCurrentPoint()
Description copied from interface:Path3DReplies the last point in the path.- Specified by:
getCurrentPointin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Specified by:
getCurrentPointin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the last point.
-
size
public int size()
Description copied from interface:Path3DReplies the number of points in the path.- Specified by:
sizein interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the number of points in the path.
-
removeLast
public void removeLast()
Description copied from interface:Path3DRemove the last action.- Specified by:
removeLastin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>
-
moveTo
public void moveTo(int x, int y, int z)Description copied from interface:Path3aiAdds a point to the path by moving to the specified coordinates specified in double precision.- Specified by:
moveToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
x- the specified X coordinatey- the specified Y coordinatez- the specified Y coordinate
-
moveTo
public void moveTo(Point3D<?,?> position)
Description copied from interface:Path3DAdds a point to the path by moving to the specified coordinates specified in double precision.- Specified by:
moveToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Specified by:
moveToin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
position- the new position.
-
lineTo
public void lineTo(int x, int y, int z)Description copied from interface:Path3aiAdds a point to the path by drawing a straight line from the current coordinates to the new specified coordinates specified in double precision.- Specified by:
lineToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
x- the specified X coordinatey- the specified Y coordinatez- the specified Y coordinate
-
lineTo
public void lineTo(Point3D<?,?> to)
Description copied from interface:Path3DAdds a point to the path by drawing a straight line from the current coordinates to the new specified coordinates specified in double precision.- Specified by:
lineToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Specified by:
lineToin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
to- the end point
-
quadTo
public void quadTo(int x1, int y1, int z1, int x2, int y2, int z2)Description copied from interface:Path3aiAdds a curved segment, defined by two new points, to the path by drawing a Quadratic curve that intersects both the current coordinates and the specified coordinates(x2,y2), using the specified point(x1,y1)as a quadratic parametric control point. All coordinates are specified in double precision.- Specified by:
quadToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
x1- the X coordinate of the quadratic control pointy1- the Y coordinate of the quadratic control pointz1- the Z coordinate of the quadratic control pointx2- the X coordinate of the final end pointy2- the Y coordinate of the final end pointz2- the Z coordinate of the final end point
-
quadTo
public void quadTo(Point3D<?,?> ctrl, Point3D<?,?> to)
Description copied from interface:Path3DAdds a curved segment, defined by two new points, to the path by drawing a Quadratic curve that intersects both the current coordinates and the specified coordinates(x2,y2), using the specified point(x1,y1)as a quadratic parametric control point. All coordinates are specified in double precision.- Specified by:
quadToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Specified by:
quadToin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
ctrl- the quadratic control pointto- the final end point
-
curveTo
public void curveTo(int x1, int y1, int z1, int x2, int y2, int z2, int x3, int y3, int z3)Description copied from interface:Path3aiAdds a curved segment, defined by three new points, to the path by drawing a Bézier curve that intersects both the current coordinates and the specified coordinates(x3,y3), using the specified points(x1,y1)and(x2,y2)as Bézier control points. All coordinates are specified in double precision.- Specified by:
curveToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
x1- the X coordinate of the first Bézier control pointy1- the Y coordinate of the first Bézier control pointz1- the Z coordinate of the first Bézier control pointx2- the X coordinate of the second Bézier control pointy2- the Y coordinate of the second Bézier control pointz2- the Z coordinate of the second Bézier control pointx3- the X coordinate of the final end pointy3- the Y coordinate of the final end pointz3- the Z coordinate of the final end point
-
curveTo
public void curveTo(Point3D<?,?> ctrl1, Point3D<?,?> ctrl2, Point3D<?,?> to)
Description copied from interface:Path3DAdds a curved segment, defined by three new points, to the path by drawing a Bézier curve that intersects both the current coordinates and the specified coordinates(x3,y3), using the specified points(x1,y1)and(x2,y2)as Bézier control points. All coordinates are specified in double precision.- Specified by:
curveToin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Specified by:
curveToin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
ctrl1- the first Bézier control pointctrl2- the second Bézier control pointto- the final end point
-
innerCoordinatesProperty
protected javafx.beans.property.ReadOnlyListWrapper<Point3ifx> innerCoordinatesProperty()
Replies the private coordinates property.- Returns:
- the private coordinates property.
-
coordinatesProperty
public javafx.beans.property.ReadOnlyListProperty<Point3ifx> coordinatesProperty()
Replies the coordinates property.- Returns:
- the coordinates property.
-
getCoordAt
public int getCoordAt(int index)
Description copied from interface:Path3aiReplies the coordinate at the given index. The index is in [0;Path3D.size()*3).- Specified by:
getCoordAtin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
index- the index- Returns:
- the coordinate at the given index.
-
setLastPoint
public void setLastPoint(int x, int y, int z)Description copied from interface:Path3aiChange the coordinates of the last inserted point.- Specified by:
setLastPointin interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
x- the new x coordinate of the last point.y- the new y coordinate of the last point.z- the new z coordinate of the last point.
-
remove
public boolean remove(int x, int y, int z)Description copied from interface:Path3aiRemove the point with the given coordinates.If the given coordinates do not match exactly a point in the path, nothing is removed.
- Specified by:
removein interfacePath3ai<Shape3ifx<?>,Path3ifx,PathElement3ifx,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
x- the x coordinate of the point to remove.y- the y coordinate of the point to remove.z- the z coordinate of the point to remove.- Returns:
trueif the point was removed;falseotherwise.
-
remove
public boolean remove(Point3D<?,?> point)
Remove the point from this path.If the given point do not match exactly a point in the path, nothing is removed.
- Parameters:
point- the point to remove.- Returns:
trueif the point was removed;falseotherwise.
-
set
public void set(Path3ifx path)
Description copied from interface:Shape3DSet this shape with the attributes of the given shape.- Specified by:
setin interfaceShape3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
path- the shape.
-
innerTypesProperty
protected javafx.beans.property.ReadOnlyListWrapper<PathElementType> innerTypesProperty()
Replies the private types property.- Returns:
- the private types property.
-
typesProperty
public javafx.beans.property.ReadOnlyListProperty<PathElementType> typesProperty()
Replies the types property.- Returns:
- the types property.
-
getPathElementCount
public int getPathElementCount()
Description copied from interface:Path3DReplies the number of path elements in this path.- Specified by:
getPathElementCountin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Returns:
- the number of path elements.
- See Also:
Path3D.getPathElementTypeAt(int)
-
getPathElementTypeAt
public PathElementType getPathElementTypeAt(int index)
Description copied from interface:Path3DReplies the type of the path element at the given position in this path.- Specified by:
getPathElementTypeAtin interfacePath3D<Shape3ifx<?>,Path3ifx,PathIterator3ai<PathElement3ifx>,Point3ifx,Vector3ifx,RectangularPrism3ifx>- Parameters:
index- the index of the path element.- Returns:
- the type of the path element.
- See Also:
Path3D.getPathElementCount()
-
-