Class OSMLink

    • Constructor Detail

      • OSMLink

        public OSMLink​(OSMNode fromNode,
                       OSMNode toNode,
                       List<OSMTag> tags,
                       double length,
                       WarningListener warningListener)
        Construct a new OSMLink.
        Parameters:
        fromNode - OSMNode; the OSMNode where this OSMLinks begins
        toNode - OSMNode; the OSMNode where this OSMLink ends
        tags - List<OSMTag>; the OSMTags (inherited from the OSMWay that causes this OSMLink to be constructed)
        length - double; the length of the new OSMLink
        warningListener - WarningListener; the warning listener that will receive warning events
      • OSMLink

        public OSMLink​(OSMNode startNode,
                       OSMNode endNode,
                       List<OSMTag> tags,
                       double length,
                       byte lanes,
                       byte flanes)
        Construct a new OSMLink with specified number of lanes and forward lanes.
        Parameters:
        startNode - OSMNode; the start OSMNode of the new OSMLink
        endNode - OSMNode; the end OSMNode of the new OSMLink
        tags - List<OSMTag>; List of Tags inherited from way
        length - double; length of link
        lanes - byte; the total number of lanes
        flanes - byte; the number of forward lanes
    • Method Detail

      • getStart

        public final OSMNode getStart()
        Returns:
        start.
      • getEnd

        public final OSMNode getEnd()
        Returns:
        end.
      • getTags

        public final List<OSMTag> getTags()
        Retrieve the tags of this OSMLink.
        Returns:
        List<OSMTab>; the returned object is a copy; modifications of the returned object do not affect this OSMLink
      • isOneway

        public final boolean isOneway()
        Indicate if this OSMLink is one way.
        Returns:
        boolean; true if this OSMLink is one way; false if this OSMLink is not one way
      • setOneway

        public final void setOneway​(boolean isOneWay)
        Set the one way status of this OSMLink.
        Parameters:
        isOneWay - boolean; the new value for the one way status of this OSMLink
      • getLanes

        public final byte getLanes()
        Retrieve the total number of lanes on this OSMLink.
        Returns:
        byte; the total number of lanes on this OSMLink
      • getForwardLanes

        public final byte getForwardLanes()
        Retrieve the total number of forward lanes on this OSMLink; forward lanes are lanes that may only be traveled from startNode towards endNode.
        Returns:
        byte; the number of forward lanes on this OSMLink
      • addTag

        public final void addTag​(OSMTag tag)
        Add an OSMTag to this Link.
        Parameters:
        tag - OSMTag; the OSMTag that must be added
      • getLength

        public final double getLength()
        Retrieve the length of this OSMLink.
        Returns:
        double; the length of this OSMLink in meters
      • getSplineList

        public final List<OSMNode> getSplineList()
        Retrieve the list of OSMNodes that define the shape of this OSMLink.
        Returns:
        List<OSMNode>; the list of OSMNodes that define the shape of this OSMLink
      • addSpline

        public final void addSpline​(OSMNode shapeNode)
        Append a Node to the list of OSMNodes of this OSMLink that define the shape of this OSMLink.
        Parameters:
        shapeNode - OSMNode; the OSMNode to add to the list of OSMNodes that define the shape of this OSMLink
      • hasTag

        public final boolean hasTag​(String key)
        Returns true if the link has an OSMTag with the specified key.
        Parameters:
        key - String; the key of the sought OSMTag
        Returns:
        boolean; true if this OSMLink has (one or more) OSMTag(s) with the specified key
      • containsAllTags

        public final boolean containsAllTags​(List<OSMTag> tagsToCheck)
        Report if this OSMLink has all tags in a supplied set.
        Parameters:
        tagsToCheck - List<OSMTag>; the supplied set of tags
        Returns:
        boolean; true if this Link has all the supplied tags; false otherwise