All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openlr.locationreference.LocationReferencePoint Maven / Gradle / Ivy

package org.openlr.locationreference;

import org.locationtech.jts.geom.Coordinate;
import org.openlr.map.FormOfWay;
import org.openlr.map.FunctionalRoadClass;

import java.util.Optional;

/**
 * A location reference point is a description of a line at a particular point. A sequence of location
 * reference points are used to describe a location lying on the road network. When decoding, these points
 * are map-matched to find the corresponding location on the map.
 */
public interface LocationReferencePoint {
    /**
     * @return the coordinate where the location reference point is found
     */
    Coordinate getCoordinate();

    /**
     * @return the direction of the road at this point expressed as the degrees in a clockwise direction from due-north
     */
    double getBearing();

    /**
     * @return the functional road class of the road at this point
     */
    FunctionalRoadClass getFunctionalRoadClass();

    /**
     * @return the form of way of the road at this point
     */
    FormOfWay getFormOfWay();

    /**
     * @return the attributes of the path to the next location reference point
     */
    Optional getPathAttributes();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy