Class PGpoint

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, PGBinaryObject

    public class PGpoint
    extends PGobject
    implements PGBinaryObject, java.io.Serializable, java.lang.Cloneable

    It maps to the point datatype in org.postgresql.

    This implements a version of java.awt.Point, except it uses double to represent the coordinates.

    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      boolean isNull
      True if the point represents null::point.
      double x
      The X coordinate of the point.
      double y
      The Y coordinate of the point.
    • Constructor Summary

      Constructors 
      Constructor Description
      PGpoint()
      Required by the driver.
      PGpoint​(double x, double y)  
      PGpoint​(java.lang.String value)
      This is called mainly from the other geometric types, when a point is embedded within their definition.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object clone()
      This must be overidden to allow the object to be cloned.
      boolean equals​(java.lang.Object obj)
      This must be overidden to allow comparisons of objects.
      java.lang.String getValue()
      This must be overidden, to return the value of the object, in the form required by org.postgresql.
      int hashCode()
      Compute hash.
      int lengthInBytes()
      This method is called to return the number of bytes needed to store this object in the binary form required by org.postgresql.
      void move​(double x, double y)
      Moves the point to the supplied coordinates.
      void move​(int x, int y)
      Moves the point to the supplied coordinates.
      void setByteValue​(byte[] b, int offset)
      This method is called to set the value of this object.
      void setLocation​(int x, int y)
      Moves the point to the supplied coordinates.
      void setLocation​(java.awt.Point p)
      Moves the point to the supplied java.awt.Point refer to java.awt.Point for description of this.
      void setValue​(java.lang.String s)
      This method sets the value of this object.
      void toBytes​(byte[] b, int offset)
      Populate the byte array with PGpoint in the binary syntax expected by org.postgresql.
      void translate​(double x, double y)
      Translate the point by the supplied amount.
      void translate​(int x, int y)
      Translate the point by the supplied amount.
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • x

        public double x
        The X coordinate of the point.
      • y

        public double y
        The Y coordinate of the point.
      • isNull

        public boolean isNull
        True if the point represents null::point.
    • Constructor Detail

      • PGpoint

        public PGpoint​(double x,
                       double y)
        Parameters:
        x - coordinate
        y - coordinate
      • PGpoint

        public PGpoint​(java.lang.String value)
                throws java.sql.SQLException
        This is called mainly from the other geometric types, when a point is embedded within their definition.
        Parameters:
        value - Definition of this point in PostgreSQL's syntax
        Throws:
        java.sql.SQLException - if something goes wrong
      • PGpoint

        public PGpoint()
        Required by the driver.
    • Method Detail

      • setValue

        public void setValue​(java.lang.String s)
                      throws java.sql.SQLException
        Description copied from class: PGobject
        This method sets the value of this object. It must be overridden.
        Overrides:
        setValue in class PGobject
        Parameters:
        s - Definition of this point in PostgreSQL's syntax
        Throws:
        java.sql.SQLException - on conversion failure
      • setByteValue

        public void setByteValue​(byte[] b,
                                 int offset)
        Description copied from interface: PGBinaryObject
        This method is called to set the value of this object.
        Specified by:
        setByteValue in interface PGBinaryObject
        Parameters:
        b - Definition of this point in PostgreSQL's binary syntax
        offset - the offset in the byte array where object data starts
      • equals

        public boolean equals​(java.lang.Object obj)
        Description copied from class: PGobject
        This must be overidden to allow comparisons of objects.
        Overrides:
        equals in class PGobject
        Parameters:
        obj - Object to compare with
        Returns:
        true if the two points are identical
      • hashCode

        public int hashCode()
        Description copied from class: PGobject
        Compute hash. As equals() use only value. Return the same hash for the same value.
        Overrides:
        hashCode in class PGobject
        Returns:
        Value hashcode, 0 if value is null Objects.hashCode(Object)
      • getValue

        public java.lang.String getValue()
        Description copied from class: PGobject
        This must be overidden, to return the value of the object, in the form required by org.postgresql.
        Overrides:
        getValue in class PGobject
        Returns:
        the PGpoint in the syntax expected by org.postgresql
      • lengthInBytes

        public int lengthInBytes()
        Description copied from interface: PGBinaryObject
        This method is called to return the number of bytes needed to store this object in the binary form required by org.postgresql.
        Specified by:
        lengthInBytes in interface PGBinaryObject
        Returns:
        the number of bytes needed to store this object
      • toBytes

        public void toBytes​(byte[] b,
                            int offset)
        Populate the byte array with PGpoint in the binary syntax expected by org.postgresql.
        Specified by:
        toBytes in interface PGBinaryObject
        Parameters:
        b - the array to store the value, it is guaranteed to be at lest PGBinaryObject.lengthInBytes() in size.
        offset - the offset in the byte array where object must be stored
      • translate

        public void translate​(int x,
                              int y)
        Translate the point by the supplied amount.
        Parameters:
        x - integer amount to add on the x axis
        y - integer amount to add on the y axis
      • translate

        public void translate​(double x,
                              double y)
        Translate the point by the supplied amount.
        Parameters:
        x - double amount to add on the x axis
        y - double amount to add on the y axis
      • move

        public void move​(int x,
                         int y)
        Moves the point to the supplied coordinates.
        Parameters:
        x - integer coordinate
        y - integer coordinate
      • move

        public void move​(double x,
                         double y)
        Moves the point to the supplied coordinates.
        Parameters:
        x - double coordinate
        y - double coordinate
      • setLocation

        public void setLocation​(int x,
                                int y)
        Moves the point to the supplied coordinates. refer to java.awt.Point for description of this.
        Parameters:
        x - integer coordinate
        y - integer coordinate
        See Also:
        Point
      • setLocation

        public void setLocation​(java.awt.Point p)
        Moves the point to the supplied java.awt.Point refer to java.awt.Point for description of this.
        Parameters:
        p - Point to move to
        See Also:
        Point
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Description copied from class: PGobject
        This must be overidden to allow the object to be cloned.
        Overrides:
        clone in class PGobject
        Throws:
        java.lang.CloneNotSupportedException