Class Point

  • All Implemented Interfaces:
    java.io.Serializable

    public class Point
    extends Geometry
    implements java.io.Serializable
    A Point is a zero-dimensional object that represents a specific (X,Y) location in a two-dimensional XY-Plane. In case of Geographic Coordinate Systems, the X coordinate is the longitude and the Y is the latitude.
    See Also:
    Serialized Form
    • Field Detail

      • m_x

        private double m_x
      • m_y

        private double m_y
      • m_attributes

        private double[] m_attributes
    • Constructor Detail

      • Point

        public Point()
        Creates an empty 2D point.
      • Point

        public Point​(double x,
                     double y)
        Creates a 2D Point with specified X and Y coordinates. In case of Geographic Coordinate Systems, the X coordinate is the longitude and the Y is the latitude.
        Parameters:
        x - The X coordinate of the new 2D point.
        y - The Y coordinate of the new 2D point.
      • Point

        public Point​(Point2D pt)
      • Point

        public Point​(double x,
                     double y,
                     double z)
        Creates a 3D point with specified X, Y and Z coordinates. In case of Geographic Coordinate Systems, the X coordinate is the longitude and the Y is the latitude.
        Parameters:
        x - The X coordinate of the new 3D point.
        y - The Y coordinate of the new 3D point.
        z - The Z coordinate of the new 3D point.
    • Method Detail

      • getXY

        public final Point2D getXY()
        Returns XY coordinates of this point.
      • getXY

        public final void getXY​(Point2D pt)
        Returns XY coordinates of this point.
      • setXY

        public final void setXY​(Point2D pt)
        Sets the XY coordinates of this point. param pt The point to create the X and Y coordinate from.
      • getXYZ

        public Point3D getXYZ()
        Returns XYZ coordinates of the point. Z will be set to 0 if Z is missing.
      • setXYZ

        public void setXYZ​(Point3D pt)
        Sets the XYZ coordinates of this point.
        Parameters:
        pt - The point to create the XYZ coordinate from.
      • getX

        public final double getX()
        Returns the X coordinate of the point.
      • setX

        public void setX​(double x)
        Sets the X coordinate of the point.
        Parameters:
        x - The X coordinate to be set for this point.
      • getY

        public final double getY()
        Returns the Y coordinate of this point.
      • setY

        public void setY​(double y)
        Sets the Y coordinate of this point.
        Parameters:
        y - The Y coordinate to be set for this point.
      • getZ

        public double getZ()
        Returns the Z coordinate of this point.
      • setZ

        public void setZ​(double z)
        Sets the Z coordinate of this point.
        Parameters:
        z - The Z coordinate to be set for this point.
      • getM

        public double getM()
        Returns the attribute M of this point.
      • setM

        public void setM​(double m)
        Sets the M coordinate of this point.
        Parameters:
        m - The M coordinate to be set for this point.
      • getID

        public int getID()
        Returns the ID of this point.
      • setID

        public void setID​(int id)
        Sets the ID of this point.
        Parameters:
        id - The ID of this point.
      • getAttributeAsDbl

        public double getAttributeAsDbl​(int semantics,
                                        int ordinate)
        Returns value of the given vertex attribute's ordinate.
        Parameters:
        semantics - The attribute semantics.
        ordinate - The attribute's ordinate. For example, the Y coordinate of the NORMAL has ordinate of 1.
        Returns:
        The ordinate as double value.
      • getAttributeAsInt

        public int getAttributeAsInt​(int semantics,
                                     int ordinate)
        Returns value of the given vertex attribute's ordinate. The ordinate is always 0 because integer attributes always have one component.
        Parameters:
        semantics - The attribute semantics.
        ordinate - The attribute's ordinate. For example, the y coordinate of the NORMAL has ordinate of 1.
        Returns:
        The ordinate value truncated to a 32 bit integer value.
      • setAttribute

        public void setAttribute​(int semantics,
                                 int ordinate,
                                 double value)
        Sets the value of the attribute.
        Parameters:
        semantics - The attribute semantics.
        ordinate - The ordinate of the attribute.
        value - Is the array to write values to. The attribute type and the number of elements must match the persistence type, as well as the number of components of the attribute.
      • setAttribute

        public void setAttribute​(int semantics,
                                 int ordinate,
                                 int value)
      • getType

        public Geometry.Type getType()
        Description copied from class: Geometry
        Returns the geometry type.
        Specified by:
        getType in class Geometry
        Returns:
        Returns the geometry type.
      • getDimension

        public int getDimension()
        Description copied from class: Geometry
        Returns the topological dimension of the geometry object based on the geometry's type.

        Returns 0 for point and multipoint.

        Returns 1 for lines and polylines.

        Returns 2 for polygons and envelopes

        Returns 3 for objects with volume

        Specified by:
        getDimension in class Geometry
        Returns:
        Returns the integer value of the dimension of geometry.
      • estimateMemorySize

        public long estimateMemorySize()
        Description copied from class: Geometry
        Returns an estimate of this object size in bytes.

        This estimate doesn't include the size of the VertexDescription object because instances of VertexDescription are shared among geometry objects.

        Specified by:
        estimateMemorySize in class Geometry
        Returns:
        Returns an estimate of this object size in bytes.
      • setEmpty

        public void setEmpty()
        Description copied from class: Geometry
        Returns the geometry to its original initialization state by releasing all data referenced by the geometry.
        Specified by:
        setEmpty in class Geometry
      • _setToDefault

        private void _setToDefault()
        Sets to a default empty state.
      • applyTransformation

        public void applyTransformation​(Transformation2D transform)
        Description copied from class: Geometry
        Applies 2D affine transformation in XY plane.
        Specified by:
        applyTransformation in class Geometry
        Parameters:
        transform - The affine transformation to be applied to this geometry.
      • applyTransformation

        public void applyTransformation​(Transformation3D transform)
        Description copied from class: Geometry
        Applies 3D affine transformation. Adds Z attribute if it is missing.
        Specified by:
        applyTransformation in class Geometry
        Parameters:
        transform - The affine transformation to be applied to this geometry.
      • copyTo

        public void copyTo​(Geometry dst)
        Description copied from class: Geometry
        Copies this geometry to another geometry of the same type. The result geometry is an exact copy.
        Specified by:
        copyTo in class Geometry
        Parameters:
        dst - The geometry instance to copy to.
      • createInstance

        public Geometry createInstance()
        Description copied from class: Geometry
        Creates an instance of an empty geometry of the same type.
        Specified by:
        createInstance in class Geometry
        Returns:
        The new instance.
      • isEmpty

        public boolean isEmpty()
        Description copied from class: Geometry
        IsEmpty returns TRUE when the Geometry object does not contain geometric information beyond its original initialization state.
        Specified by:
        isEmpty in class Geometry
        Returns:
        boolean Returns TRUE if this geometry is empty.
      • isEmptyImpl

        final boolean isEmptyImpl()
      • queryEnvelope

        public void queryEnvelope​(Envelope env)
        Description copied from class: Geometry
        Returns the axis aligned bounding box of the geometry.
        Specified by:
        queryEnvelope in class Geometry
        Parameters:
        env - The envelope to return the result in.
      • queryEnvelope2D

        public void queryEnvelope2D​(Envelope2D env)
        Description copied from class: Geometry
        Returns tight bbox of the Geometry in X, Y plane.
        Specified by:
        queryEnvelope2D in class Geometry
        Parameters:
        env - The envelope to return the result in.
      • queryEnvelope3D

        void queryEnvelope3D​(Envelope3D env)
        Description copied from class: Geometry
        Returns tight bbox of the Geometry in 3D.
        Specified by:
        queryEnvelope3D in class Geometry
        Parameters:
        env - The envelope to return the result in.
      • queryInterval

        public Envelope1D queryInterval​(int semantics,
                                        int ordinate)
        Description copied from class: Geometry
        Returns the min and max attribute values at the ordinate of the Geometry.
        Specified by:
        queryInterval in class Geometry
        Parameters:
        semantics - The semantics of the interval.
        ordinate - The ordinate of the interval.
        Returns:
        The interval.
      • setXY

        public void setXY​(double x,
                          double y)
        Set the X and Y coordinate of the point.
        Parameters:
        x - X coordinate of the point.
        y - Y coordinate of the point.
      • equals

        public boolean equals​(java.lang.Object _other)
        Returns TRUE when this geometry has exactly same type, properties, and coordinates as the other geometry.
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Returns the hash code for the point.
        Overrides:
        hashCode in class java.lang.Object
      • getBoundary

        public Geometry getBoundary()
        Description copied from class: Geometry
        Returns boundary of this geometry. Polygon and Envelope boundary is a Polyline. For Polyline and Line, the boundary is a Multi_point consisting of path end points. For Multi_point and Point null is returned.
        Specified by:
        getBoundary in class Geometry
        Returns:
        The boundary geometry.
      • replaceNaNs

        public void replaceNaNs​(int semantics,
                                double value)
        Description copied from class: Geometry
        Replaces NaNs in the attribute with the given value. If the geometry is not empty, it adds the attribute if geometry does not have it yet, and replaces the values. If the geometry is empty, it adds the attribute and does not set any values.
        Specified by:
        replaceNaNs in class Geometry
        Parameters:
        semantics - The semantics for which to replace the NaNs.
        value - The value to replace NaNs with.