Class GeomFactory2ifx
- java.lang.Object
-
- org.arakhne.afc.math.geometry.AbstractGeomFactoryBase
-
- org.arakhne.afc.math.geometry.d2.AbstractGeomFactory2D<Vector2ifx,Point2ifx>
-
- org.arakhne.afc.math.geometry.d2.ifx.GeomFactory2ifx
-
- All Implemented Interfaces:
GeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
,GeomFactory2D<Vector2ifx,Point2ifx>
,GeomFactoryBase
public class GeomFactory2ifx extends AbstractGeomFactory2D<Vector2ifx,Point2ifx> implements GeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
Factory of geometrical elements.- Since:
- 13.0
- Version:
- 17.0 2020-01-04 14:41:49
- Author:
- Stéphane GALLAND
- Maven Group Id:
- org.arakhne.afc.advanced
- Maven Artifact Id:
- mathfx
-
-
Field Summary
Fields Modifier and Type Field Description static GeomFactory2ifx
SINGLETON
The singleton of the factory.
-
Constructor Summary
Constructors Constructor Description GeomFactory2ifx()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Point2ifx
convertToPoint(Point2D<?,?> point)
Convert the given point if it is not of the right type.Point2ifx
convertToPoint(Vector2D<?,?> vector)
Convert the given vector.Vector2ifx
convertToVector(Point2D<?,?> point)
Convert the given point.Vector2ifx
convertToVector(Vector2D<?,?> vector)
Convert the given vector.PathElement2ifx
newArcPathElement(int startX, int startY, int targetX, int targetY, int radiusX, int radiusY, double xAxisRotation, boolean largeArcFlag, boolean sweepFlag)
Create an arc-to path element to the given point by following an ellipse arc.Rectangle2ifx
newBox()
Create an empty bounding box.Rectangle2ifx
newBox(int x, int y, int width, int height)
Create a bounding box.PathElement2ifx
newClosePathElement(int lastPointX, int lastPointY, int firstPointX, int firstPointY)
Create a close path element.PathElement2ifx
newCurvePathElement(int startX, int startY, int controlX, int controlY, int targetX, int targetY)
Create a quadratic curve path element to the given point through the given control point.PathElement2ifx
newCurvePathElement(int startX, int startY, int controlX1, int controlY1, int controlX2, int controlY2, int targetX, int targetY)
Create a curve path element to the given point through the two given control points.PathElement2ifx
newLinePathElement(int startX, int startY, int targetX, int targetY)
Create a line-to path element to the given point.PathElement2ifx
newMovePathElement(int x, int y)
Create a move-to path element to the given point.MultiShape2ifx<?>
newMultiShape()
Create an empty bounding box.Path2ifx
newPath(PathWindingRule rule)
Create an empty path with the given winding rule.Point2ifx
newPoint()
Create a point.Point2ifx
newPoint(double x, double y)
Create a point.Point2ifx
newPoint(int x, int y)
Create a point.Point2ifx
newPoint(javafx.beans.property.IntegerProperty x, javafx.beans.property.IntegerProperty y)
Create a point with properties.Segment2ifx
newSegment(int x1, int y1, int x2, int y2)
Create a segment.Vector2ifx
newVector()
Create a vector.Vector2ifx
newVector(double x, double y)
Create a vector.Vector2ifx
newVector(int x, int y)
Create a vector.-
Methods inherited from class org.arakhne.afc.math.geometry.AbstractGeomFactoryBase
getGlobalSplineApproximationRatio, getSplineApproximationRatio, setGlobalSplineApproximationRatio, setSplineApproximationRatio
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.arakhne.afc.math.geometry.d2.ai.GeomFactory2ai
convert
-
Methods inherited from interface org.arakhne.afc.math.geometry.GeomFactoryBase
getSplineApproximationRatio, setSplineApproximationRatio
-
-
-
-
Field Detail
-
SINGLETON
public static final GeomFactory2ifx SINGLETON
The singleton of the factory.
-
-
Method Detail
-
convertToPoint
public Point2ifx convertToPoint(Point2D<?,?> point)
Description copied from interface:GeomFactory2D
Convert the given point if it is not of the right type.- Specified by:
convertToPoint
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
point
- the point to convert.- Returns:
p
if it is of typeP
, or a copy ofp
.
-
convertToPoint
public Point2ifx convertToPoint(Vector2D<?,?> vector)
Description copied from interface:GeomFactory2D
Convert the given vector.- Specified by:
convertToPoint
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
vector
- the vector to convert.- Returns:
- the point.
-
convertToVector
public Vector2ifx convertToVector(Point2D<?,?> point)
Description copied from interface:GeomFactory2D
Convert the given point.- Specified by:
convertToVector
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
point
- the point to convert.- Returns:
- the vector.
-
convertToVector
public Vector2ifx convertToVector(Vector2D<?,?> vector)
Description copied from interface:GeomFactory2D
Convert the given vector.- Specified by:
convertToVector
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
vector
- the vector to convert.- Returns:
- the vector.
-
newPoint
public Point2ifx newPoint(int x, int y)
Description copied from interface:GeomFactory2D
Create a point.- Specified by:
newPoint
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
x
- x coordinate of the point.y
- y coordinate of the point.- Returns:
- the point.
-
newPoint
public Point2ifx newPoint(double x, double y)
Description copied from interface:GeomFactory2D
Create a point.- Specified by:
newPoint
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
x
- x coordinate of the point.y
- y coordinate of the point.- Returns:
- the point.
-
newPoint
public Point2ifx newPoint()
Description copied from interface:GeomFactory2D
Create a point.- Specified by:
newPoint
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Returns:
- the point.
-
newPoint
public Point2ifx newPoint(javafx.beans.property.IntegerProperty x, javafx.beans.property.IntegerProperty y)
Create a point with properties.- Parameters:
x
- the x property.y
- the y property.- Returns:
- the vector.
-
newVector
public Vector2ifx newVector(int x, int y)
Description copied from interface:GeomFactory2D
Create a vector.- Specified by:
newVector
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
x
- x coordinate of the vector.y
- y coordinate of the vector.- Returns:
- the vector.
-
newVector
public Vector2ifx newVector(double x, double y)
Description copied from interface:GeomFactory2D
Create a vector.- Specified by:
newVector
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Parameters:
x
- x coordinate of the vector.y
- y coordinate of the vector.- Returns:
- the vector.
-
newVector
public Vector2ifx newVector()
Description copied from interface:GeomFactory2D
Create a vector.- Specified by:
newVector
in interfaceGeomFactory2D<Vector2ifx,Point2ifx>
- Returns:
- the vector.
-
newPath
public Path2ifx newPath(PathWindingRule rule)
Description copied from interface:GeomFactory2ai
Create an empty path with the given winding rule.- Specified by:
newPath
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
rule
- the rule.- Returns:
- the new path.
-
newBox
public Rectangle2ifx newBox()
Description copied from interface:GeomFactory2ai
Create an empty bounding box.- Specified by:
newBox
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Returns:
- the box.
-
newBox
public Rectangle2ifx newBox(int x, int y, int width, int height)
Description copied from interface:GeomFactory2ai
Create a bounding box.- Specified by:
newBox
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
x
- the x coordinate of the lower corner.y
- the y coordinate of the lower corner.width
- the width of the box.height
- the height of the box.- Returns:
- the box.
-
newMovePathElement
public PathElement2ifx newMovePathElement(int x, int y)
Description copied from interface:GeomFactory2ai
Create a move-to path element to the given point.- Specified by:
newMovePathElement
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
x
- x coordinate of the target point.y
- y coordinate of the target point.- Returns:
- the path element.
-
newLinePathElement
public PathElement2ifx newLinePathElement(int startX, int startY, int targetX, int targetY)
Description copied from interface:GeomFactory2ai
Create a line-to path element to the given point.- Specified by:
newLinePathElement
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
startX
- x coordinate of the start point.startY
- y coordinate of the start point.targetX
- x coordinate of the target point.targetY
- y coordinate of the target point.- Returns:
- the path element.
-
newClosePathElement
public PathElement2ifx newClosePathElement(int lastPointX, int lastPointY, int firstPointX, int firstPointY)
Description copied from interface:GeomFactory2ai
Create a close path element.- Specified by:
newClosePathElement
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
lastPointX
- x coordinate of the last point on the pathlastPointY
- y coordinate of the last point on the pathfirstPointX
- x coordinate of the first point on the path.firstPointY
- y coordinate of the first point on the path.- Returns:
- the path element.
-
newCurvePathElement
public PathElement2ifx newCurvePathElement(int startX, int startY, int controlX, int controlY, int targetX, int targetY)
Description copied from interface:GeomFactory2ai
Create a quadratic curve path element to the given point through the given control point.- Specified by:
newCurvePathElement
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
startX
- x coordinate of the start point.startY
- y coordinate of the start point.controlX
- x coordinate of the control point.controlY
- y coordinate of the control point.targetX
- x coordinate of the target point.targetY
- y coordinate of the target point.- Returns:
- the path element.
-
newCurvePathElement
public PathElement2ifx newCurvePathElement(int startX, int startY, int controlX1, int controlY1, int controlX2, int controlY2, int targetX, int targetY)
Description copied from interface:GeomFactory2ai
Create a curve path element to the given point through the two given control points.- Specified by:
newCurvePathElement
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
startX
- x coordinate of the start point.startY
- y coordinate of the start point.controlX1
- x coordinate of the control point.controlY1
- y coordinate of the control point.controlX2
- x coordinate of the control point.controlY2
- y coordinate of the control point.targetX
- x coordinate of the target point.targetY
- y coordinate of the target point.- Returns:
- the path element.
-
newArcPathElement
public PathElement2ifx newArcPathElement(int startX, int startY, int targetX, int targetY, int radiusX, int radiusY, double xAxisRotation, boolean largeArcFlag, boolean sweepFlag)
Description copied from interface:GeomFactory2ai
Create an arc-to path element to the given point by following an ellipse arc.- Specified by:
newArcPathElement
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
startX
- x coordinate of the start point.startY
- y coordinate of the start point.targetX
- x coordinate of the target point.targetY
- y coordinate of the target point.radiusX
- the X radius of the tilted ellipse.radiusY
- the Y radius of the tilted ellipse.xAxisRotation
- the angle of tilt of the ellipse.largeArcFlag
-true
iff the path will sweep the long way around the ellipse.sweepFlag
-true
iff the path will sweep clockwise around the ellipse.- Returns:
- the path element.
-
newSegment
public Segment2ifx newSegment(int x1, int y1, int x2, int y2)
Description copied from interface:GeomFactory2ai
Create a segment.- Specified by:
newSegment
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Parameters:
x1
- the x coordinate of the first point of the segment.y1
- the y coordinate of the first point of the segment.x2
- the x coordinate of the second point of the segment.y2
- the y coordinate of the second point of the segment.- Returns:
- the new segment.
-
newMultiShape
public MultiShape2ifx<?> newMultiShape()
Description copied from interface:GeomFactory2ai
Create an empty bounding box.- Specified by:
newMultiShape
in interfaceGeomFactory2ai<PathElement2ifx,Point2ifx,Vector2ifx,Rectangle2ifx>
- Returns:
- the box.
-
-