Class JDFRectangle

All Implemented Interfaces:
Serializable, Cloneable, Iterable<Object>, Collection<Object>, List<Object>, 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:
  • Constructor Details

    • JDFRectangle

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

      @Deprecated public JDFRectangle(Vector v) throws 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:
      DataFormatException - - if the Vector has not a valid format
    • JDFRectangle

      public JDFRectangle(String s) throws DataFormatException
      constructs a rectangle with all values set via a String
      Parameters:
      s - the given String, blank separated numbers
      Throws:
      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 DataFormatException
      constructs a rectangle with all values set via a JDFNumberList
      Parameters:
      nl - the given number list
      Throws:
      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 Details

    • clone

      public JDFRectangle clone()
      Overrides:
      clone in class JDFNumList
      See Also:
    • createRectangle

      public static JDFRectangle createRectangle(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 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:
      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:
    • setCenter

      public JDFRectangle setCenter(JDFXYPair c)
      Parameters:
      c -
      Returns:
    • scale

      public JDFRectangle scale(JDFXYPair scaleFactor)
      Parameters:
      scaleFactor -
      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