Class Sphere3ai.AbstractCirclePathIterator<IE extends PathElement3ai>
- java.lang.Object
-
- org.arakhne.afc.math.geometry.d3.ai.Sphere3ai.AbstractCirclePathIterator<IE>
-
- Type Parameters:
IE
- is the type of the path elements.
- All Implemented Interfaces:
Iterator<IE>
,PathIterator3ai<IE>
,PathIterator3D<IE>
- Direct Known Subclasses:
Sphere3ai.SpherePathIterator
,Sphere3ai.TransformedCirclePathIterator
- Enclosing interface:
- Sphere3ai<ST extends Shape3ai<?,?,IE,P,V,B>,IT extends Sphere3ai<?,?,IE,P,V,B>,IE extends PathElement3ai,P extends Point3D<? super P,? super V>,V extends Vector3D<? super V,? super P>,B extends RectangularPrism3ai<?,?,IE,P,V,B>>
public abstract static class Sphere3ai.AbstractCirclePathIterator<IE extends PathElement3ai> extends Object implements PathIterator3ai<IE>
Abstract iterator on the path elements of the sphere.- Since:
- 13.0
- Version:
- 17.0 2020-01-04 14:41:43
- Author:
- Stéphane GALLAND
- Maven Group Id:
- org.arakhne.afc.core
- Maven Artifact Id:
- mathgeom
-
-
Field Summary
Fields Modifier and Type Field Description protected static double[][]
CTRL_PTS
ctrlpts contains the control points for a set of 4 cubic bezier curves that approximate a sphere of radius 0.5 centered at 0.5, 0.5.protected static double
CTRL_VAL
ArcIterator.btan(Math.PI/2).protected static double
NCV
ctrlpts contains the control points for a set of 4 cubic bezier curves that approximate a sphere of radius 0.5 centered at 0.5, 0.5.protected static double
PCV
ctrlpts contains the control points for a set of 4 cubic bezier curves that approximate a sphere of radius 0.5 centered at 0.5, 0.5.protected Sphere3ai<?,?,IE,?,?,?>
sphere
The element factory.
-
Constructor Summary
Constructors Constructor Description AbstractCirclePathIterator(Sphere3ai<?,?,IE,?,?,?> sphere)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GeomFactory3ai<IE,?,?,?>
getGeomFactory()
Replies the factory of geometrical elements.PathWindingRule
getWindingRule()
Replies the winding rule for the path.boolean
isCurved()
Replies the path contains a curve.boolean
isMultiParts()
Replies the path has multiple parts, i.e. multipleMOVE_TO
are inside.boolean
isPolygon()
Replies the path is composed only by oneMOVE_TO
, a sequence ofLINE_TO
orQUAD_TO
orCURVE_TO
, and a singleCLOSE
primitives.boolean
isPolyline()
Replies the path is composed only by oneMOVE_TO
, and a sequence ofLINE_TO
primitives.void
remove()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.util.Iterator
forEachRemaining, hasNext, next
-
Methods inherited from interface org.arakhne.afc.math.geometry.d3.ai.PathIterator3ai
restartIterations
-
-
-
-
Field Detail
-
CTRL_VAL
protected static final double CTRL_VAL
ArcIterator.btan(Math.PI/2).- See Also:
- Constant Field Values
-
PCV
protected static final double PCV
ctrlpts contains the control points for a set of 4 cubic bezier curves that approximate a sphere of radius 0.5 centered at 0.5, 0.5.- See Also:
- Constant Field Values
-
NCV
protected static final double NCV
ctrlpts contains the control points for a set of 4 cubic bezier curves that approximate a sphere of radius 0.5 centered at 0.5, 0.5.- See Also:
- Constant Field Values
-
CTRL_PTS
protected static final double[][] CTRL_PTS
ctrlpts contains the control points for a set of 4 cubic bezier curves that approximate a sphere of radius 0.5 centered at 0.5, 0.5.
-
sphere
protected final Sphere3ai<?,?,IE extends PathElement3ai,?,?,?> sphere
The element factory.
-
-
Method Detail
-
remove
public void remove()
- Specified by:
remove
in interfaceIterator<IE extends PathElement3ai>
-
getWindingRule
@Pure public PathWindingRule getWindingRule()
Description copied from interface:PathIterator3D
Replies the winding rule for the path.- Specified by:
getWindingRule
in interfacePathIterator3D<IE extends PathElement3ai>
- Returns:
- the winding rule for the path.
-
isPolyline
@Pure public boolean isPolyline()
Description copied from interface:PathIterator3D
Replies the path is composed only by oneMOVE_TO
, and a sequence ofLINE_TO
primitives.- Specified by:
isPolyline
in interfacePathIterator3D<IE extends PathElement3ai>
- Returns:
true
if the path does not contain curve primitives,false
otherwise.
-
getGeomFactory
public GeomFactory3ai<IE,?,?,?> getGeomFactory()
Description copied from interface:PathIterator3ai
Replies the factory of geometrical elements.- Specified by:
getGeomFactory
in interfacePathIterator3ai<IE extends PathElement3ai>
- Returns:
- the factory.
-
isCurved
public boolean isCurved()
Description copied from interface:PathIterator3D
Replies the path contains a curve.- Specified by:
isCurved
in interfacePathIterator3D<IE extends PathElement3ai>
- Returns:
true
if the path contains curve primitives,false
otherwise.
-
isMultiParts
public boolean isMultiParts()
Description copied from interface:PathIterator3D
Replies the path has multiple parts, i.e. multipleMOVE_TO
are inside. primitives.- Specified by:
isMultiParts
in interfacePathIterator3D<IE extends PathElement3ai>
- Returns:
true
if the path has multiple move-to primitive,false
otherwise.
-
isPolygon
public boolean isPolygon()
Description copied from interface:PathIterator3D
Replies the path is composed only by oneMOVE_TO
, a sequence ofLINE_TO
orQUAD_TO
orCURVE_TO
, and a singleCLOSE
primitives.- Specified by:
isPolygon
in interfacePathIterator3D<IE extends PathElement3ai>
- Returns:
true
if the path does not contain curve primitives,false
otherwise.
-
-