Interface Prism3afp<ST extends Shape3afp<?,​?,​IE,​P,​V,​B>,​IT extends Prism3afp<?,​?,​IE,​P,​V,​B>,​IE extends PathElement3afp,​P extends Point3D<? super P,​? super V>,​V extends Vector3D<? super V,​? super P>,​B extends RectangularPrism3afp<?,​?,​IE,​P,​V,​B>>

    • Method Detail

      • set

        default void set​(double x,
                         double y,
                         double z,
                         double width,
                         double height,
                         double depth)
        Change the frame of the prism.
        Parameters:
        x - x coordinate of the lower front corner of the prism.
        y - y coordinate of the lower front corner of the prism.
        z - z coordinate of the lower front corner of the prism.
        width - width of the prism.
        height - height of the prism.
        depth - depth of the prism.
      • set

        default void set​(Point3D<?,​?> min,
                         Point3D<?,​?> max)
        Change the frame of the prism.
        Parameters:
        min - is the min corner of the rectangular prism.
        max - is the max corner of the rectangular prism.
      • setWidth

        default void setWidth​(double width)
        Change the width of the prism, not the min corner.
        Parameters:
        width - the width of the prism.
      • setHeight

        default void setHeight​(double height)
        Change the height of the prism, not the min corner.
        Parameters:
        height - the heigth of the prism.
      • setDepth

        default void setDepth​(double depth)
        Change the depth of the prism, not the min corner.
        Parameters:
        depth - the depth of the prism
      • setFromCorners

        void setFromCorners​(double x1,
                            double y1,
                            double z1,
                            double x2,
                            double y2,
                            double z2)
        Change the frame of the rectangular prism conserving previous min and max if needed.
        Parameters:
        x1 - is the coordinate of the first corner.
        y1 - is the coordinate of the first corner.
        z1 - is the coordinate of the first corner.
        x2 - is the coordinate of the second corner.
        y2 - is the coordinate of the second corner.
        z2 - is the coordinate of the second corner.
      • setFromCorners

        default void setFromCorners​(Point3D<?,​?> p1,
                                    Point3D<?,​?> p2)
        Change the frame of the rectangular prism conserving previous min and max if needed.
        Parameters:
        p1 - the first corner.
        p2 - the second corner.
      • setFromCenter

        default void setFromCenter​(double centerX,
                                   double centerY,
                                   double centerZ,
                                   double cornerX,
                                   double cornerY,
                                   double cornerZ)
        Sets the framing rectangular prism of this Shape based on the specified center point coordinates and corner point coordinates. The framing rectangular prism is used by the subclasses of RectangularShape to define their geometry.
        Parameters:
        centerX - the X coordinate of the specified center point
        centerY - the Y coordinate of the specified center point
        centerZ - the Z coordinate of the specified center point
        cornerX - the X coordinate of the specified corner point
        cornerY - the Y coordinate of the specified corner point
        cornerZ - the Z coordinate of the specified corner point
      • setFromCenter

        default void setFromCenter​(Point3D<?,​?> center,
                                   Point3D<?,​?> corner)
        Sets the framing rectangular prism of this Shape based on the specified center point coordinates and corner point coordinates. The framing rectangular prism is used by the subclasses of RectangularShape to define their geometry.
        Parameters:
        center - the specified center point
        corner - the specified corner point
      • getMinX

        @Pure
        double getMinX()
        Replies the min X.
        Returns:
        the min x.
      • setMinX

        void setMinX​(double x)
        Set the min X conserving previous min if needed.
        Parameters:
        x - the min x.
      • getCenterX

        @Pure
        default double getCenterX()
        Replies the center x.
        Returns:
        the center x.
      • getMaxX

        @Pure
        double getMaxX()
        Replies the max x.
        Returns:
        the max x.
      • setMaxX

        void setMaxX​(double x)
        Set the max X conserving previous max if needed.
        Parameters:
        x - the max x.
      • getMinY

        @Pure
        double getMinY()
        Replies the min y.
        Returns:
        the min y.
      • setMinY

        void setMinY​(double y)
        Set the min Y conserving previous min if needed.
        Parameters:
        y - the min y.
      • getCenterY

        @Pure
        default double getCenterY()
        Replies the center y.
        Returns:
        the center y.
      • getMaxY

        @Pure
        double getMaxY()
        Replies the max y.
        Returns:
        the max y.
      • setMaxY

        void setMaxY​(double y)
        Set the max Y conserving previous max if needed.
        Parameters:
        y - the max y.
      • getMinZ

        @Pure
        double getMinZ()
        Replies the min z.
        Returns:
        the min z.
      • setMinZ

        void setMinZ​(double z)
        Set the min Z conserving previous min if needed.
        Parameters:
        z - the min z.
      • getCenterZ

        @Pure
        default double getCenterZ()
        Replies the center z.
        Returns:
        the center z.
      • getMaxZ

        @Pure
        double getMaxZ()
        Replies the max z.
        Returns:
        the max z.
      • setMaxZ

        void setMaxZ​(double z)
        Set the max Z conserving previous max if needed.
        Parameters:
        z - the max z.
      • getCenter

        default P getCenter()
        Replies the center.
        Returns:
        the center.
      • setCenter

        default void setCenter​(double cx,
                               double cy,
                               double cz)
        Set the center.
        Parameters:
        cx - the center x.
        cy - the center y.
        cz - the center z.
      • setCenter

        default void setCenter​(Point3D<?,​?> center)
        Set the center.
        Parameters:
        center - the center point.
      • setCenterX

        default void setCenterX​(double cx)
        Set the center's x.
        Parameters:
        cx - the center x.
      • setCenterY

        default void setCenterY​(double cy)
        Set the center's y.
        Parameters:
        cy - the center y.
      • setCenterZ

        default void setCenterZ​(double cz)
        Set the center's z.
        Parameters:
        cz - the center z.
      • getWidth

        @Pure
        default double getWidth()
        Replies the width.
        Returns:
        the width.
      • getHeight

        @Pure
        default double getHeight()
        Replies the height.
        Returns:
        the height.
      • getDepth

        @Pure
        default double getDepth()
        Replies the depth.
        Returns:
        the depth.
      • isEmpty

        @Pure
        default boolean isEmpty()
        Description copied from interface: Shape3D
        Replies if this shape is empty. The semantic associated to the state "empty" depends on the implemented shape. See the subclasses for details.
        Specified by:
        isEmpty in interface Shape3D<ST extends Shape3afp<?,​?,​IE,​P,​V,​B>,​IT extends Prism3afp<?,​?,​IE,​P,​V,​B>,​IE extends PathElement3afp,​P extends Point3D<? super P,​? super V>,​V extends Vector3D<? super V,​? super P>,​B extends RectangularPrism3afp<?,​?,​IE,​P,​V,​B>>
        Returns:
        true if the shape is empty; false otherwise.
      • inflate

        default void inflate​(double minXBorder,
                             double minYBorder,
                             double minZBorder,
                             double maxXBorder,
                             double maxYBorder,
                             double maxZBorder)
        Inflate this rectangular prism with the given amounts.

        All borders may be inflated. If the value associated to a border is positive, the border is moved outside the current prism. If the value is negative, the border is moved inside the prism.

        Parameters:
        minXBorder - the value to substract to the minimum x.
        minYBorder - the value to substract to the minimum y.
        minZBorder - the value to substract to the minimum z.
        maxXBorder - the value to add to the maximum x.
        maxYBorder - the value to add to the maximum y.
        maxZBorder - the value to add to the maximum z.