#[non_exhaustive]pub struct OrientedCurveStation {
pub station: CurveStation,
pub orientation: StationOrientation,
pub seam: SeamSide,
pub seam_window: f64,
}Expand description
A CurveStation with an explicit orientation (#246) and the side of
a seam it reads (#263).
Its point is the station’s, offsets read in the base frame; its frame
is the base frame turned by orientation (see the
module documentation). On a seam of the basis curve the base
frame is the one of the piece seam names.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.station: CurveStationThe basis curve, distance, offsets and base frame.
orientation: StationOrientationThe axis and reference direction, in the base frame.
seam: SeamSideThe piece read when the station lies on a seam of its basis curve;
SeamSide::Outgoing unless set by Self::with_seam_side.
seam_window: f64The seam-snapping window (#294): a station within this distance of
a seam of its basis is read ON that seam, from the side seam
names. 0 unless set by Self::with_seam_window, which is the
arc-length tolerance alone (see the
module documentation).
Format 1.1 of the graph’s wire format (ADR 0085): omitted when it
is +0.0, and an absent window reads as 0.
Implementations§
Source§impl OrientedCurveStation
impl OrientedCurveStation
Sourcepub const fn new(
station: CurveStation,
orientation: StationOrientation,
) -> OrientedCurveStation
pub const fn new( station: CurveStation, orientation: StationOrientation, ) -> OrientedCurveStation
station turned by orientation, reading the outgoing piece on a
seam.
Sourcepub const fn with_seam_side(self, side: SeamSide) -> OrientedCurveStation
pub const fn with_seam_side(self, side: SeamSide) -> OrientedCurveStation
The same station reading side of a seam it lies on.
Sourcepub const fn with_seam_window(self, window: f64) -> OrientedCurveStation
pub const fn with_seam_window(self, window: f64) -> OrientedCurveStation
The same station snapping onto a seam of its basis within window
(#294), in the basis’s station measure: a station that close to
one seam is read on it, from its SeamSide. 0 is no window
beyond the arc-length tolerance. A negative or non-finite window is
refused when the node is pushed (see the
module documentation).
Trait Implementations§
impl BuiltInNode for OrientedCurveStation
Source§impl Clone for OrientedCurveStation
impl Clone for OrientedCurveStation
Source§fn clone(&self) -> OrientedCurveStation
fn clone(&self) -> OrientedCurveStation
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for OrientedCurveStation
Source§impl Debug for OrientedCurveStation
impl Debug for OrientedCurveStation
Source§impl<'de> Deserialize<'de> for OrientedCurveStation
impl<'de> Deserialize<'de> for OrientedCurveStation
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<OrientedCurveStation, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<OrientedCurveStation, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl From<CurveStation> for OrientedCurveStation
impl From<CurveStation> for OrientedCurveStation
Source§fn from(station: CurveStation) -> OrientedCurveStation
fn from(station: CurveStation) -> OrientedCurveStation
The station in its base frame, reading the outgoing piece on a seam: what the plain station means.
Source§impl From<OrientedCurveStation> for GeometryNode
impl From<OrientedCurveStation> for GeometryNode
Source§fn from(value: OrientedCurveStation) -> GeometryNode
fn from(value: OrientedCurveStation) -> GeometryNode
Source§impl PartialEq for OrientedCurveStation
impl PartialEq for OrientedCurveStation
Source§impl Serialize for OrientedCurveStation
impl Serialize for OrientedCurveStation
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for OrientedCurveStation
Auto Trait Implementations§
impl Freeze for OrientedCurveStation
impl RefUnwindSafe for OrientedCurveStation
impl Send for OrientedCurveStation
impl Sync for OrientedCurveStation
impl Unpin for OrientedCurveStation
impl UnsafeUnpin for OrientedCurveStation
impl UnwindSafe for OrientedCurveStation
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more