Class JDFRectangle

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<java.lang.Object>, java.util.Collection<java.lang.Object>, java.util.List<java.lang.Object>, java.util.RandomAccess, JDFBaseDataTypes

    public class JDFRectangle
    extends JDFNumList
    This class represents a rectangle JDFRectangle) consisting of a lower left x value (llx), a lower left y value (lly), an upper right x value (urx) and an upper right y value (ury) all values are Double types.
    See Also:
    Serialized Form
    • Constructor Detail

      • JDFRectangle

        public JDFRectangle()
        constructs a rectangle with all 4 values set to 0.0 Double
      • JDFRectangle

        @Deprecated
        public JDFRectangle​(java.util.Vector v)
                     throws java.util.zip.DataFormatException
        Deprecated.
        use typesafe constructors
        constructs a rectangle with all values set via a Vector of Double objects
        Parameters:
        v - the given Vector with MAX_RECTANGLE_DIMENSION objects of type Double
        Throws:
        java.util.zip.DataFormatException - - if the Vector has not a valid format
      • JDFRectangle

        public JDFRectangle​(java.lang.String s)
                     throws java.util.zip.DataFormatException
        constructs a rectangle with all values set via a String
        Parameters:
        s - the given String, blank separated numbers
        Throws:
        java.util.zip.DataFormatException - - if the String has not a valid format
      • JDFRectangle

        public JDFRectangle​(JDFRectangle rec)
        constructs a rectangle with all values set via a JDFRectangle
        Parameters:
        rec - the given rectangle
      • JDFRectangle

        public JDFRectangle​(JDFXYPair size)
        constructs a rectangle with all values set via a JDFRectangle
        Parameters:
        rec - the given rectangle
      • JDFRectangle

        public JDFRectangle​(JDFNumList nl)
                     throws java.util.zip.DataFormatException
        constructs a rectangle with all values set via a JDFNumberList
        Parameters:
        nl - the given number list
        Throws:
        java.util.zip.DataFormatException - - if the JDFNumberList has not a valid format
      • JDFRectangle

        public JDFRectangle​(double llx,
                            double lly,
                            double urx,
                            double ury)
        constructs a new JDFRectangle with the given double values
        Parameters:
        llx - lower left x coordinate
        lly - lower left y coordinate
        urx - lower left x coordinate
        ury - lower left y coordinate
      • JDFRectangle

        public JDFRectangle​(JDFXYPair ll,
                            JDFXYPair ur)
        Parameters:
        ll -
        ur -
    • Method Detail

      • createRectangle

        public static JDFRectangle createRectangle​(java.lang.String s)
        factory for JDFRectangle that silently returns null in case of illegal strings
        Parameters:
        s - the string to parse
        Returns:
        the JDFRectangle, null if s is not compatible
      • isValid

        public boolean isValid()
                        throws java.util.zip.DataFormatException
        isValid - true if the size of the vector is 4 and all instances are Double types
        Specified by:
        isValid in class JDFNumList
        Returns:
        boolean - true if all instances are Double or Integer types
        Throws:
        java.util.zip.DataFormatException - - if the Vector has not a valid format
      • getLlx

        public double getLlx()
        getLlx - returns the lower left x coordinate
        Returns:
        double - the lower left x coordinate
      • setLlx

        public void setLlx​(double x)
        setLlx - sets the lower left x coordinate
        Parameters:
        x - the lower left x coordinate
      • setLlxMm

        public void setLlxMm​(double mmX)
        setLlXMm - sets the lower left x coordinate in millimeter
        Parameters:
        mmX - the lower left x coordinate in millimeter
      • getLly

        public double getLly()
        getLly - returns the lower left y coordinate
        Returns:
        double - the lower left y coordinate
      • setLly

        public void setLly​(double y)
        setLly - sets the lower left y coordinate
        Parameters:
        y - the lower left y coordinate
      • setLlyMm

        public void setLlyMm​(double mmY)
        setLlyMm - sets the lower left y coordinate in millimeter
        Parameters:
        mmY - the lower left y coordinate in millimeter
      • getUrx

        public double getUrx()
        getUrx - returns the upper right x coordinate
        Returns:
        double - the upper right x coordinate
      • setUrx

        public void setUrx​(double x)
        setUrx - sets the upper right x coordinate
        Parameters:
        x - the upper right x coordinate
      • setUrxMm

        public void setUrxMm​(double mmX)
        setUrxMm - sets the upper right x coordinate in millimeter
        Parameters:
        mmX - the upper right x coordinate in millimeter
      • getUry

        public double getUry()
        getUry - returns the upper right y coordinate
        Returns:
        double - the upper right y coordinate
      • setUry

        public void setUry​(double y)
        setUry - sets the upper right y coordinate
        Parameters:
        y - the upper right y coordinate
      • setUryMm

        public void setUryMm​(double mmY)
        setUryMm - sets the upper right y coordinate in millimeter
        Parameters:
        mmY - the upper right y coordinate in millimeter
      • getWidth

        public double getWidth()
        getWidth - returns the width of the rectangle, the difference between upper right x value and lower left x value as an absolute value
        Returns:
        double - the width of the rectangle
      • getHeight

        public double getHeight()
        getHeight - returns the height of the rectangle, the difference between upper right y value and lower left y value as an absolute value
        Returns:
        double - the height of the rectangle
      • isGreater

        public boolean isGreater​(JDFRectangle r)
        isGreater - equality operator >
        Parameters:
        r - the JDFRectangle object to compare to
        Returns:
        boolean - true if this > r
      • getInterSection

        public JDFRectangle getInterSection​(JDFRectangle r)
        get the common (intersected area) of this with r
        Parameters:
        r - the new rect, null if r=null
        Returns:
      • getBoundingRect

        public JDFRectangle getBoundingRect​(JDFRectangle r)
        get the common (intersected area) of this with r
        Parameters:
        r - the new rect, null if r=null
        Returns:
      • shift

        public void shift​(double tx,
                          double ty)
        shifts this by the amount specified
        Parameters:
        tx - shift in x direction
        ty - shift in y direction
      • normalize

        public JDFRectangle normalize()
        ensures the right points e.g after a rotation
      • getCenter

        public JDFXYPair getCenter()
        Returns:
      • shift

        public void shift​(JDFXYPair shift)
        shifts this by the amount specified
        Parameters:
        shift - in x and y direction
      • isGreaterOrEqual

        public boolean isGreaterOrEqual​(JDFRectangle r)
        isGreaterOrEqual - equality operator >=
        Parameters:
        r - the JDFRectangle object to compare to
        Returns:
        boolean - true if this >= r
      • isInside

        public boolean isInside​(JDFXYPair p)
        isInside - true it the point is inside this
        Parameters:
        p - the pount to check
        Returns:
        boolean - true if this < r
      • isLess

        public boolean isLess​(JDFRectangle r)
        isLess - equality operator <
        Parameters:
        r - the JDFRectangle object to compare to
        Returns:
        boolean - true if this < r
      • isLessOrEqual

        public boolean isLessOrEqual​(JDFRectangle r)
        isLessOrEqual - equality operator <=
        Parameters:
        r - the JDFRectangle object to compare to
        Returns:
        boolean - true if this <= r
      • getLL

        public JDFXYPair getLL()
        Returns:
        the lower left pout
      • getUR

        public JDFXYPair getUR()
        Returns:
        the upper right point
      • getSize

        public JDFXYPair getSize()
        Returns:
        the width and height
      • getArea

        public double getArea()
        Returns:
        the area