Interface RoadConnection

    • Field Detail

      • DEFAULT_CLOCKWHISE_TYPE

        static final RoadConnection.ClockwiseBoundType DEFAULT_CLOCKWHISE_TYPE
        When traversing a road connection, the iterator replies both bounds of the connected segment list.
    • Method Detail

      • compareTo

        @Pure
        int compareTo​(Point2D<?,​?> pts)
        Compares this object with the specified point for order. Returns a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified point.
        Parameters:
        pts - is the object to be compared.
        Returns:
        a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified point.
      • getUUID

        @Pure
        UUID getUUID()
        Replies an unique identifier for element.

        A Unique IDentifier (UID) must be unique for all the object instances.

        Returns:
        the identifier
      • isNearPoint

        @Pure
        boolean isNearPoint​(Point2D<?,​?> point)
        Replies if the specified point is near this connection point.
        Parameters:
        point - is the point to test
        Returns:
        true if the point is near this connection, otherwise false.
      • getPoint

        @Pure
        Point2d getPoint()
        Replies the coordinates of this road connection.
        Returns:
        the coordinates of this road connection.
      • getGeoLocation

        @Pure
        GeoLocationPoint getGeoLocation()
        Replies the geographic coordinates of this road connection.
        Returns:
        the geographic coordinates of this road connection.
      • isConnectedSegment

        @Pure
        boolean isConnectedSegment​(RoadSegment segment)
        Description copied from interface: GraphPoint
        Replies if the specified segment was connected to this point.
        Specified by:
        isConnectedSegment in interface GraphPoint<RoadConnection,​RoadSegment>
        Parameters:
        segment - the starting point.
        Returns:
        true if the given segment is connected to this node, otherwise false
      • isFinalConnectionPoint

        @Pure
        boolean isFinalConnectionPoint()
        Replies if this point is a final connection point ie, a point connected to only one segment.

        The difference between isReallyCulDeSac() and isFinalConnectionPoint() is on the treatement of sub-road-network elements. isFinalConnectionPoint() takes into account only the current (sub)-road network. isReallyCulDeSac() takes into account only the top-most road network element. See the following table for details:

        Inside RoadNetwork # Connected Segments at Top-Level Inside SubRoadNetwork # Connected Segments at Lower-Level isFinalConnectionPoint isReallyCulDeSac
        true 1 false n/a true true
        true n false n/a false false
        true 1 true 1 true true
        true n true 1 true false
        true n true m<=n false false
        Specified by:
        isFinalConnectionPoint in interface GraphPoint<RoadConnection,​RoadSegment>
        Returns:
        true if zero or one segment was connected to this point, otherwise false
        See Also:
        isReallyCulDeSac()
      • isReallyCulDeSac

        @Pure
        boolean isReallyCulDeSac()
        Replies if this point is a cul-de-sac.

        The difference between isReallyCulDeSac() and isFinalConnectionPoint() is on the treatement of sub-road-network elements. isFinalConnectionPoint() takes into account only the current (sub)-road network. isReallyCulDeSac() takes into account only the top-most road network element. See the following table for details:

        Inside RoadNetwork # Connected Segments at Top-Level Inside SubRoadNetwork # Connected Segments at Lower-Level isFinalConnectionPoint isReallyCulDeSac
        true 1 false n/a true true
        true n false n/a false false
        true 1 true 1 true true
        true n true 1 true false
        true n true m<=n false false
        Returns:
        true if zero or one segment was connected to this point, otherwise false
        See Also:
        isFinalConnectionPoint()
      • isEmpty

        @Pure
        boolean isEmpty()
        Replies if this connection has no connected segment.
        Returns:
        true if this object has no connected segment, otherwise false
      • getOtherSideSegment

        @Pure
        RoadSegment getOtherSideSegment​(RoadSegment refSegment)
        Replies the other segment also connected to this point. If more than 2 segments were connected to this point, this function replies null.
        Parameters:
        refSegment - the segment.
        Returns:
        the first segment if ref_segment was the second one. the second segment if ref_segment was the first one. otherwise null.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         RoadSegment endSegment)
        Replies an iterator which loop on the segment in a counterclockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         Boolean startSegmentConnectedByItsStart,
                                                         RoadSegment endSegment,
                                                         Boolean endSegmentConnectedByItsStart)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to the default clockwhise type.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate (inclusive).
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate (inclusive).
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         RoadSegment endSegment,
                                                         RoadConnection.ClockwiseBoundType boundType)
        Replies an iterator which loop on the segment in a counterclockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         Boolean startSegmentConnectedByItsStart,
                                                         RoadSegment endSegment,
                                                         Boolean endSegmentConnectedByItsStart,
                                                         RoadConnection.ClockwiseBoundType boundType)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to bountType.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate.
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. Assuming that the segment candidates should be replied only once time if they are all included, the startSegment will never be replied as the last segment.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        Returns:
        an iterable data structure.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         RoadConnection.ClockwiseBoundType boundType)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the last or antepenulvian segment from the list, according to bountType.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        Returns:
        an iterable data structure.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         RoadSegment endSegment,
                                                         CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a counterclockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.
        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        system - is the 2D coordinate system used to project a counterclockwise circle.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         Boolean startSegmentConnectedByItsStart,
                                                         RoadSegment endSegment,
                                                         Boolean endSegmentConnectedByItsStart,
                                                         CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to the default clockwhise type.

        Parameters:
        startSegment - is the first segment to iterate (inclusive).
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate (inclusive).
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        system - is the 2D coordinate system used to project a counterclockwise circle.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         RoadSegment endSegment,
                                                         RoadConnection.ClockwiseBoundType boundType,
                                                         CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a counterclockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.
        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        system - is the 2D coordinate system used to project a counterclockwise circle.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         Boolean startSegmentConnectedByItsStart,
                                                         RoadSegment endSegment,
                                                         Boolean endSegmentConnectedByItsStart,
                                                         RoadConnection.ClockwiseBoundType boundType,
                                                         CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to bountType.

        Parameters:
        startSegment - is the first segment to iterate.
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate.
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        system - is the 2D coordinate system used to project a counterclockwise circle.
        Returns:
        the iterator on segments.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. Assuming that the segment candidates should be replied only once time if they are all included, the startSegment will never be replied as the last segment.

        Parameters:
        startSegment - is the first segment to iterate.
        system - is the 2D coordinate system used to project a counterclockwise circle.
        Returns:
        an iterable data structure.
      • toCounterclockwiseIterator

        @Pure
        Iterator<RoadSegment> toCounterclockwiseIterator​(RoadSegment startSegment,
                                                         RoadConnection.ClockwiseBoundType boundType,
                                                         CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a counterclockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the last or antepenulvian segment from the list, according to bountType.

        Parameters:
        startSegment - is the first segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        system - is the 2D coordinate system used to project a counterclockwise circle.
        Returns:
        an iterable data structure.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  RoadSegment endSegment)
        Replies an iterator which loop on the segment in a clockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  Boolean startSegmentConnectedByItsStart,
                                                  RoadSegment endSegment,
                                                  Boolean endSegmentConnectedByItsStart)
        Replies an iterator which loop on the segment in a clockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to the default clockwhise type.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate (inclusive).
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate (inclusive).
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  RoadSegment endSegment,
                                                  RoadConnection.ClockwiseBoundType boundType)
        Replies an iterator which loop on the segment in a clockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  Boolean startSegmentConnectedByItsStart,
                                                  RoadSegment endSegment,
                                                  Boolean endSegmentConnectedByItsStart,
                                                  RoadConnection.ClockwiseBoundType boundType)
        Replies an iterator which loop on the segment in a clockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to bountType.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate.
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment)
        Replies an iterator which loop on the segment in a clockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. Assuming that the segment candidates should be replied only once time if they are all included, the startSegment will never be replied as the last segment.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        Returns:
        an iterable data structure.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  RoadConnection.ClockwiseBoundType boundType)
        Replies an iterator which loop on the segment in a clockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the last or antepenulvian segment from the list, according to bountType.

        This function assumes a CoordinateSystemConstants.GIS_2D

        Parameters:
        startSegment - is the first segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        Returns:
        an iterable data structure.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  RoadSegment endSegment,
                                                  CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a clockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.
        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        system - is the 2D coordinate system used to project a clockwise circle.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  Boolean startSegmentConnectedByItsStart,
                                                  RoadSegment endSegment,
                                                  Boolean endSegmentConnectedByItsStart,
                                                  CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a clockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to the default clockwhise type.

        Parameters:
        startSegment - is the first segment to iterate (inclusive).
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate (inclusive).
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        system - is the 2D coordinate system used to project a clockwise circle.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  RoadSegment endSegment,
                                                  RoadConnection.ClockwiseBoundType boundType,
                                                  CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a clockwise order from the first occurrence. of specified start segment to the first occurrence. of the specified end segment.
        Parameters:
        startSegment - is the first segment to iterate.
        endSegment - is the last segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        system - is the 2D coordinate system used to project a clockwise circle.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  Boolean startSegmentConnectedByItsStart,
                                                  RoadSegment endSegment,
                                                  Boolean endSegmentConnectedByItsStart,
                                                  RoadConnection.ClockwiseBoundType boundType,
                                                  CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a clockwise order from the specified start segment to the specified end segment.

        This function assumes that startSegmentConnectedByItsStart and endSegmentConnectedByItsStart parameters indicates how the segments should be connected. These values are useful to indicates how to iterate when the segment is connected to this RoadConnexion by its two ends. The semantics of the these values are:

        • true, the segment will be replied by the iterator when its start point will be found in the list;
        • false, the segment will be replied by the iterator when its end point will be found in the list;
        • null, the segment will be replied when it will be found at the first time in the list.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the endSegment or the antepenulvian segment from the list, according to bountType.

        Parameters:
        startSegment - is the first segment to iterate.
        startSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        endSegment - is the last segment to iterate.
        endSegmentConnectedByItsStart - indicates if the start segment is connected by its first point.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        system - is the 2D coordinate system used to project a clockwise circle.
        Returns:
        the iterator on segments.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a clockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to the default clockwhise type. Assuming that the segment candidates should be replied only once time if they are all included, the startSegment will never be replied as the last segment.

        Parameters:
        startSegment - is the first segment to iterate.
        system - is the 2D coordinate system used to project a clockwise circle.
        Returns:
        an iterable data structure.
      • toClockwiseIterator

        @Pure
        Iterator<RoadSegment> toClockwiseIterator​(RoadSegment startSegment,
                                                  RoadConnection.ClockwiseBoundType boundType,
                                                  CoordinateSystem2D system)
        Replies an iterator which loop on the segment in a clockwise order from the specified segment.

        The first segment replied by this function will be the startSegment or the second segment from the list, according to bountType. The last segment replied by this function will be the last or antepenulvian segment from the list, according to bountType.

        Parameters:
        startSegment - is the first segment to iterate.
        boundType - indicates if the two given segments will be included into the iterated segment set.
        system - is the 2D coordinate system used to project a clockwise circle.
        Returns:
        an iterable data structure.
      • getWrappedRoadConnection

        @Pure
        RoadConnection getWrappedRoadConnection()
        Replies the wrapped road connection if this object is a wrapper to another road connection. If this object is not a wrapper to another road connection, relies this object iteself.
        Returns:
        the wrapped road connection or this road connection itself.
        Since:
        4.0