[−][src]Struct map_model::Intersection
An intersection connects roads. Most have >2 roads and are controlled by stop signs or traffic signals. Roads that lead to the boundary of the map end at border intersections, with only that one road attached.
Fields
id: IntersectionID
polygon: Polygon
This needs to be in clockwise orientation, or later rendering of sidewalk corners breaks.
turns: BTreeSet<TurnID>
elevation: Distance
intersection_type: IntersectionType
orig_id: NodeID
incoming_lanes: Vec<LaneID>
Note that a lane may belong to both incoming_lanes and outgoing_lanes.
outgoing_lanes: Vec<LaneID>
roads: BTreeSet<RoadID>
merged: bool
Was a short road adjacent to this intersection merged?
Implementations
impl Intersection
[src]
pub fn is_border(&self) -> bool
[src]
pub fn is_incoming_border(&self) -> bool
[src]
pub fn is_outgoing_border(&self) -> bool
[src]
pub fn is_closed(&self) -> bool
[src]
pub fn is_stop_sign(&self) -> bool
[src]
pub fn is_traffic_signal(&self) -> bool
[src]
pub fn is_light_rail(&self, map: &Map) -> bool
[src]
pub fn is_private(&self, map: &Map) -> bool
[src]
pub fn is_footway(&self, map: &Map) -> bool
[src]
pub fn get_incoming_lanes(
&self,
map: &Map,
constraints: PathConstraints
) -> Vec<LaneID>
[src]
&self,
map: &Map,
constraints: PathConstraints
) -> Vec<LaneID>
pub fn get_outgoing_lanes(
&self,
map: &Map,
constraints: PathConstraints
) -> Vec<LaneID>
[src]
&self,
map: &Map,
constraints: PathConstraints
) -> Vec<LaneID>
Strict for bikes. If there are bike lanes, not allowed to use other lanes.
pub fn get_zorder(&self, map: &Map) -> isize
[src]
pub fn get_rank(&self, map: &Map) -> RoadRank
[src]
pub fn get_roads_sorted_by_incoming_angle(
&self,
all_roads: &Vec<Road>
) -> Vec<RoadID>
[src]
&self,
all_roads: &Vec<Road>
) -> Vec<RoadID>
pub fn some_outgoing_road(&self, map: &Map) -> Option<DirectedRoadID>
[src]
pub fn some_incoming_road(&self, map: &Map) -> Option<DirectedRoadID>
[src]
pub fn name(&self, lang: Option<&String>, map: &Map) -> String
[src]
Trait Implementations
impl Debug for Intersection
[src]
impl<'de> Deserialize<'de> for Intersection
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Serialize for Intersection
[src]
Auto Trait Implementations
impl RefUnwindSafe for Intersection
impl Send for Intersection
impl Sync for Intersection
impl Unpin for Intersection
impl UnwindSafe for Intersection
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,