public interface Lane
Modifier and Type  Method and Description 

boolean 
contains(Point2D pos)
Whether or not the provided point can be considered "in" this Lane.

double 
distanceAlongLane(Point2D pos)
Get the distance along the Lane from the start of the Lane to the Point
in the center of the Lane nearest the given Point.

Point2D 
getEndPoint()
Get the ending point of the Lane.

double 
getHeadingAtNormalizedDistance(double normalizedDistance)
Get the heading of the Lane at a particular normalized distance from the
start of the Lane.

int 
getId()
Get the unique ID number of this Lane.

double 
getInitialHeading()
Get the heading of this Lane at its starting point.

LaneIM 
getLaneIM()
Get the LaneIM object that helps to locate the intersection managers on
a lane.

Point2D 
getLeadPoint(Point2D pos,
double leadDist)
Get a point further down the Lane from the nearest point to the given
position.

Lane 
getLeftNeighbor()
Get the left neighbor of this Lane.

double 
getLength()
Get the length of this Lane.

Lane 
getNextLane()
Get the Lane into which this Lane leads, or
null if none. 
Point2D 
getPointAtNormalizedDistance(double normalizedDistance)
Get a point in the center of the lane at a particular normalized distance
from the start of the Lane.

Lane 
getPrevLane()
Get the Lane which leads into this Lane, or
null if none. 
Lane 
getRightNeighbor()
Get the right neighbor of this Lane.

Shape 
getShape()
Get a Shape describing this Lane, including its width.

Shape 
getShape(double startFraction,
double endFraction)
Get a Shape describing an interval of this lane, using normalized
distances.

double 
getSpeedLimit()
Get the speed limit of this Lane, in meters per second.

Point2D 
getStartPoint()
Get the starting point of the Lane.

double 
getTerminalHeading()
Get the heading of this Lane at its ending point.

double 
getWidth()
Get the width of this Lane, in meters.

boolean 
hasLeftNeighbor()
Whether the Lane has another Lane immediately to its left travelling in
the same direction.

boolean 
hasNextLane()
Whether or not this Lane flows into another Lane.

boolean 
hasPrevLane()
Whether or not another Lane flows into this Lane.

boolean 
hasRightNeighbor()
Whether the Lane has another Lane immediately to its right travelling in
the same direction.

Point2D 
intersectionPoint(Line2D l)
The point at which the the given Line intersects the center of this Lane.

Shape 
leftBorder()
Get a Shape representing the left border of this Lane.

Point2D 
leftIntersectionPoint(Line2D l)
The point at which the the given Line intersects the left border of this
Lane.

double 
nearestDistance(Point2D pos)
Get the distance from a point to the center of the Lane.

Point2D 
nearestPoint(Point2D p)
Get the point in the center of the Lane nearest to the provided point.

double 
normalizedDistance(double distance)
Get the normalized distance at the distance from the starting point.

double 
normalizedDistanceAlongLane(Point2D pos)
Get the normalized distance to the point in the center of the lane
nearest the provided point.

double 
remainingDistanceAlongLane(Point2D pos)
Get the amount of distance left in this Lane from the point on the Lane
nearest to the given point.

Shape 
rightBorder()
Get a Shape representing the right border of this Lane.

Point2D 
rightIntersectionPoint(Line2D l)
The point at which the the given Line intersects the right border of this
Lane.

void 
setId(int id)
Set the unique ID number of this Lane.

void 
setLeftNeighbor(Lane ln)
Register another Lane as a left neighbor to this Lane.

void 
setNextLane(Lane nextLane)
Set the Lane into which this Lane leads.

void 
setPrevLane(Lane prevLane)
Set the Lane which leads into this Lane.

void 
setRightNeighbor(Lane ln)
Register another Lane as a right neighbor to this Lane.

int getId()
void setId(int id)
id
 the ID number of this lanedouble getSpeedLimit()
LaneIM getLaneIM()
boolean hasNextLane()
Lane getNextLane()
null
if none.null
if nonevoid setNextLane(Lane nextLane)
nextLane
 the Lane into which this Lane leadsboolean hasPrevLane()
Lane getPrevLane()
null
if none.null
if nonevoid setPrevLane(Lane prevLane)
prevLane
 the Lane which leads into this Laneboolean hasLeftNeighbor()
Lane getLeftNeighbor()
null
if none
existsvoid setLeftNeighbor(Lane ln)
ln
 the Lane to set as this Lane's left neighborboolean hasRightNeighbor()
Lane getRightNeighbor()
null
if none
existsvoid setRightNeighbor(Lane ln)
ln
 the Lane to set as this Lane's right neighbordouble getLength()
Point2D getStartPoint()
Point2D getEndPoint()
Point2D getPointAtNormalizedDistance(double normalizedDistance)
normalizedDistance
 the normalized distance (between 0 and 1) from
the start of the LanePoint2D nearestPoint(Point2D p)
p
 the point to which the nearest point in the center of the Lane
should be founddouble nearestDistance(Point2D pos)
pos
 the point from which to find the distance to the LanePoint2D getLeadPoint(Point2D pos, double leadDist)
pos
 the position from which to calculate the nearest point in
the LaneleadDist
 the lead distance further down the Lane, in metersleadDist
further down the Lane from
the closest point in the Lane to pos
double distanceAlongLane(Point2D pos)
pos
 the point to which to find the distance along the Lanedouble remainingDistanceAlongLane(Point2D pos)
pos
 the point nearest which to find the distance to the end of the
Lanedouble normalizedDistanceAlongLane(Point2D pos)
pos
 the point near to which to find the normalized distancedouble normalizedDistance(double distance)
distance
 the distance along the center of the lane.double getInitialHeading()
double getTerminalHeading()
double getHeadingAtNormalizedDistance(double normalizedDistance)
normalizedDistance
 the normalized distance (between 0 and 1) from
the start of the LanePoint2D intersectionPoint(Line2D l)
l
 the Line with which to find the intersectionnull
if it doesn't intersectdouble getWidth()
Shape getShape()
Shape getShape(double startFraction, double endFraction)
startFraction
 the normalized distance from the start of the lane
to the start of the segment which the Shape
representsendFraction
 the normalized distance from the start of the lane
to the end of the segment which the Shape representsIllegalArgumentException
 if startFraction
or
endFraction
are not between
0 and 1boolean contains(Point2D pos)
pos
 the point to checkShape leftBorder()
Shape rightBorder()
Point2D leftIntersectionPoint(Line2D l)
l
 the Line with which to find the intersectionnull
if it doesn't intersectPoint2D rightIntersectionPoint(Line2D l)
l
 the Line with which to find the intersectionnull
if it doesn't intersectCopyright © 2013. All rights reserved.