Interface Point

  • All Superinterfaces:
    Geometry, Position, Primitive, TransfiniteSet

    @UML(identifier="GM_Point",
         specification=ISO_19107)
    public interface Point
    extends Primitive, Position
    Basic data type for a geometric object consisting of one and only one point. In most cases, the state of a Point is fully determined by its position attribute. The only exception to this is if the Point has been subclassed to provide additional non-geometric information such as symbology.
    Since:
    GeoAPI 1.0
    See Also:
    PrimitiveFactory.createPoint(double[])
    TODO:
    Some associations are commented out for now.
    • Method Detail

      • getDirectPosition

        @UML(identifier="position",
             obligation=MANDATORY,
             specification=ISO_19107)
        DirectPosition getDirectPosition()
        Returns the direct position of this point. Point is the only subclass of primitive that cannot use positions to represent its defining geometry. A position is either a direct position or a reference to a Point (from which a direct position may be obtained). By not allowing Point to use this technique, infinitely recursive references are prevented.
        Specified by:
        getDirectPosition in interface Position
        Returns:
        the direct position.
      • setDirectPosition

        @UML(identifier="position",
             obligation=MANDATORY,
             specification=ISO_19107)
        void setDirectPosition​(DirectPosition position)
                        throws UnmodifiableGeometryException
        Sets the direct position of this point. Point is the only subclass of primitive that cannot use positions to represent its defining geometry. A position is either a direct position or a reference to a Point (from which a direct position may be obtained). By not allowing Point to use this technique, infinitely recursive references are prevented.
        Parameters:
        position - The direct position.
        Throws:
        UnmodifiableGeometryException - if this geometry is not modifiable.
        Since:
        GeoAPI 2.2
      • getBearing

        @UML(identifier="bearing",
             obligation=MANDATORY,
             specification=ISO_19107)
        Bearing getBearing​(Position toPoint)
        Returns the bearing, as a unit vector, of the tangent (at this Point) to the curve between this Point and a passed position. The choice of the curve type for defining the bearing is dependent on the coordinate reference system in which this Point is defined. For example, in the Mercator projection, the curve is the rhumb line. In 3D, geocentric coordinate system, the curve may be the geodesic joining the two points along the surface of the geoid or ellipsoid in use. Implementations that support this function shall specify the nature of the curve to be used.
        Parameters:
        toPoint - the destination point.
        Returns:
        the tangent to the curve between this point and the passed position.