Interface GeomFactory3ai<E extends PathElement3ai,​P extends Point3D<? super P,​? super V>,​V extends Vector3D<? super V,​? super P>,​B extends RectangularPrism3ai<?,​?,​E,​P,​V,​B>>

  • Type Parameters:
    E - the types of the path elements.
    P - is the type of the points.
    V - is the type of the vectors.
    B - is the type of the bounding boxes.
    All Superinterfaces:
    GeomFactory3D<V,​P>, GeomFactoryBase
    All Known Implementing Classes:
    GeomFactory3i, GeomFactory3ifx

    public interface GeomFactory3ai<E extends PathElement3ai,​P extends Point3D<? super P,​? super V>,​V extends Vector3D<? super V,​? super P>,​B extends RectangularPrism3ai<?,​?,​E,​P,​V,​B>>
    extends GeomFactory3D<V,​P>
    Factory of geometrical elements.
    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
    • Method Detail

      • newPath

        Path3ai<?,​?,​E,​P,​V,​B> newPath​(PathWindingRule rule)
        Create an empty path with the given winding rule.
        Parameters:
        rule - the rule.
        Returns:
        the new path.
      • newSegment

        Segment3ai<?,​?,​E,​P,​V,​B> newSegment​(int x1,
                                                                         int y1,
                                                                         int z1,
                                                                         int x2,
                                                                         int y2,
                                                                         int z2)
        Create a segment.
        Parameters:
        x1 - the x coordinate of the first point of the segment.
        y1 - the y coordinate of the first point of the segment.
        z1 - 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.
        z2 - the y coordinate of the second point of the segment.
        Returns:
        the new segment.
      • newBox

        B newBox()
        Create an empty bounding box.
        Returns:
        the box.
      • newBox

        B newBox​(int x,
                 int y,
                 int z,
                 int width,
                 int height,
                 int depth)
        Create a bounding box.
        Parameters:
        x - the x coordinate of the lower corner.
        y - the y coordinate of the lower corner.
        z - the z coordinate of the lower corner.
        width - the width of the box.
        height - the height of the box.
        depth - the depth of the box.
        Returns:
        the box.
      • newMultiShape

        MultiShape3ai<?,​?,​?,​E,​P,​V,​B> newMultiShape()
        Create an empty bounding box.
        Returns:
        the box.
      • newMovePathElement

        E newMovePathElement​(int x,
                             int y,
                             int z)
        Create a move-to path element to the given point.
        Parameters:
        x - x coordinate of the target point.
        y - y coordinate of the target point.
        z - z coordinate of the target point.
        Returns:
        the path element.
      • newLinePathElement

        E newLinePathElement​(int startX,
                             int startY,
                             int startZ,
                             int targetX,
                             int targetY,
                             int targetZ)
        Create a line-to path element to the given point.
        Parameters:
        startX - x coordinate of the start point.
        startY - y coordinate of the start point.
        startZ - z coordinate of the start point.
        targetX - x coordinate of the target point.
        targetY - y coordinate of the target point.
        targetZ - z coordinate of the target point.
        Returns:
        the path element.
      • newClosePathElement

        E newClosePathElement​(int lastPointX,
                              int lastPointY,
                              int lastPointZ,
                              int firstPointX,
                              int firstPointY,
                              int firstPointZ)
        Create a close path element.
        Parameters:
        lastPointX - x coordinate of the last point on the path
        lastPointY - y coordinate of the last point on the path
        lastPointZ - z coordinate of the last point on the path
        firstPointX - x coordinate of the first point on the path.
        firstPointY - y coordinate of the first point on the path.
        firstPointZ - z coordinate of the first point on the path.
        Returns:
        the path element.
      • newCurvePathElement

        E newCurvePathElement​(int startX,
                              int startY,
                              int startZ,
                              int controlX,
                              int controlY,
                              int controlZ,
                              int targetX,
                              int targetY,
                              int targetZ)
        Create a quadratic curve path element to the given point through the given control point.
        Parameters:
        startX - x coordinate of the start point.
        startY - y coordinate of the start point.
        startZ - z coordinate of the start point.
        controlX - x coordinate of the control point.
        controlY - y coordinate of the control point.
        controlZ - z coordinate of the control point.
        targetX - x coordinate of the target point.
        targetY - y coordinate of the target point.
        targetZ - z coordinate of the target point.
        Returns:
        the path element.
      • newCurvePathElement

        E newCurvePathElement​(int startX,
                              int startY,
                              int startZ,
                              int controlX1,
                              int controlY1,
                              int controlZ1,
                              int controlX2,
                              int controlY2,
                              int controlZ2,
                              int targetX,
                              int targetY,
                              int targetZ)
        Create a curve path element to the given point through the two given control points.
        Parameters:
        startX - x coordinate of the start point.
        startY - y coordinate of the start point.
        startZ - z coordinate of the start point.
        controlX1 - x coordinate of the control point.
        controlY1 - y coordinate of the control point.
        controlZ1 - z coordinate of the control point.
        controlX2 - x coordinate of the control point.
        controlY2 - y coordinate of the control point.
        controlZ2 - z coordinate of the control point.
        targetX - x coordinate of the target point.
        targetY - y coordinate of the target point.
        targetZ - z coordinate of the target point.
        Returns:
        the path element.