pub struct Lane<'a> { /* private fields */ }
Expand description
A maliput::api::Lane
Wrapper around C++ implementation maliput::api::Lane
.
Implementations§
Source§impl<'a> Lane<'a>
impl<'a> Lane<'a>
Sourcepub fn get_orientation(&self, lane_position: &LanePosition) -> Rotation
pub fn get_orientation(&self, lane_position: &LanePosition) -> Rotation
Get the orientation of the Lane
at the given LanePosition
.
Sourcepub fn to_inertial_position(
&self,
lane_position: &LanePosition,
) -> InertialPosition
pub fn to_inertial_position( &self, lane_position: &LanePosition, ) -> InertialPosition
Get the inertial position of the Lane
at the given LanePosition
.
Sourcepub fn to_lane_position(
&self,
inertial_position: &InertialPosition,
) -> LanePositionResult
pub fn to_lane_position( &self, inertial_position: &InertialPosition, ) -> LanePositionResult
Determines the LanePosition corresponding to InertialPosition inertial_position
.
The LanePosition is expected to be contained within the lane’s boundaries.
See Lane::to_segment_position method.
This method guarantees that its result satisfies the condition that
to_inertial_position(result.lane_position)
is within linear_tolerance()
of result.nearest_position
.
Sourcepub fn to_segment_position(
&self,
inertial_position: &InertialPosition,
) -> LanePositionResult
pub fn to_segment_position( &self, inertial_position: &InertialPosition, ) -> LanePositionResult
Determines the LanePosition corresponding to InertialPosition inertial_position
.
The LanePosition is expected to be contained within the segment’s boundaries.
See Lane::to_lane_position method.
This method guarantees that its result satisfies the condition that
to_inertial_position(result.lane_position)
is within linear_tolerance()
of result.nearest_position
.
Sourcepub fn lane_bounds(&self, s: f64) -> RBounds
pub fn lane_bounds(&self, s: f64) -> RBounds
Get the lane bounds of the Lane
at the given s
.
Sourcepub fn segment_bounds(&self, s: f64) -> RBounds
pub fn segment_bounds(&self, s: f64) -> RBounds
Get the segment bounds of the Lane
at the given s
.
Sourcepub fn elevation_bounds(&self, s: f64, r: f64) -> HBounds
pub fn elevation_bounds(&self, s: f64, r: f64) -> HBounds
Get the elevation bounds of the Lane
at the given s
and r
.
Sourcepub fn eval_motion_derivatives(
&self,
lane_position: &LanePosition,
velocity: &IsoLaneVelocity,
) -> LanePosition
pub fn eval_motion_derivatives( &self, lane_position: &LanePosition, velocity: &IsoLaneVelocity, ) -> LanePosition
Computes derivatives of LanePosition given a velocity vector velocity
.
velocity
is a isometric velocity vector oriented in the Lane
-frame
at position
.
Returns Lane
-frame derivatives packed into a LanePosition struct.
Sourcepub fn get_branch_point(&self, end: &LaneEnd<'_>) -> BranchPoint<'_>
pub fn get_branch_point(&self, end: &LaneEnd<'_>) -> BranchPoint<'_>
Returns the lane’s BranchPoint for the specified end.
Sourcepub fn get_confluent_branches(&self, end: &LaneEnd<'_>) -> LaneEndSet<'_>
pub fn get_confluent_branches(&self, end: &LaneEnd<'_>) -> LaneEndSet<'_>
Returns the set of LaneEnd’s which connect with this lane on the
same side of the BranchPoint at end
. At a minimum,
this set will include this Lane.
Sourcepub fn get_ongoing_branches(&self, end: &LaneEnd<'_>) -> LaneEndSet<'_>
pub fn get_ongoing_branches(&self, end: &LaneEnd<'_>) -> LaneEndSet<'_>
Returns the set of LaneEnd’s which continue onward from this lane at the
BranchPoint at end
.
Sourcepub fn get_default_branch(&self, end: &LaneEnd<'_>) -> Option<LaneEnd<'_>>
pub fn get_default_branch(&self, end: &LaneEnd<'_>) -> Option<LaneEnd<'_>>
Returns the default ongoing LaneEnd connected at end
,
or None if no default branch has been established.
Sourcepub fn contains(&self, lane_position: &LanePosition) -> bool
pub fn contains(&self, lane_position: &LanePosition) -> bool
Check if the Lane
contains the given LanePosition
.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for Lane<'a>
impl<'a> RefUnwindSafe for Lane<'a>
impl<'a> !Send for Lane<'a>
impl<'a> !Sync for Lane<'a>
impl<'a> Unpin for Lane<'a>
impl<'a> UnwindSafe for Lane<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)