pub struct TrimmedCurve { /* private fields */ }Expand description
Another curve restricted to a sub-interval of its domain.
Implementations§
Source§impl TrimmedCurve
impl TrimmedCurve
Sourcepub fn new(
basis: Curve,
start: f64,
end: f64,
tol: Tolerances,
) -> OgeomResult<Self>
pub fn new( basis: Curve, start: f64, end: f64, tol: Tolerances, ) -> OgeomResult<Self>
Restrict basis to [start, end].
§Errors
OgeomError::Domain if the range is empty or
falls outside the basis curve’s own domain.
Sourcepub const fn is_reversed(&self) -> bool
pub const fn is_reversed(&self) -> bool
Whether the curve runs backwards along its underlying curve.
Part of the curve’s state and not derivable from its basis curve, so anything that has to reproduce this curve exactly (the native format above all) needs to be able to read it.
Trait Implementations§
Source§impl Clone for TrimmedCurve
impl Clone for TrimmedCurve
Source§impl Curve3d for TrimmedCurve
impl Curve3d for TrimmedCurve
Source§fn point_at(&self, u: f64, tol: Tolerances) -> OgeomResult<Point>
fn point_at(&self, u: f64, tol: Tolerances) -> OgeomResult<Point>
The point at
u. Read moreSource§fn d1_at(&self, u: f64, tol: Tolerances) -> OgeomResult<Vector>
fn d1_at(&self, u: f64, tol: Tolerances) -> OgeomResult<Vector>
The first derivative at
u. Read moreSource§fn derivatives_at(
&self,
u: f64,
n: usize,
tol: Tolerances,
) -> OgeomResult<Vec<Vector>>
fn derivatives_at( &self, u: f64, n: usize, tol: Tolerances, ) -> OgeomResult<Vec<Vector>>
Source§fn continuity(&self) -> Continuity
fn continuity(&self) -> Continuity
How smooth the curve is across its domain.
Source§fn is_closed(&self, tol: Tolerances) -> bool
fn is_closed(&self, tol: Tolerances) -> bool
Whether the curve’s ends meet.
Source§fn is_periodic(&self) -> bool
fn is_periodic(&self) -> bool
Whether the curve continues past its domain by repeating. Read more
Source§fn tangent_at(&self, u: f64, tol: Tolerances) -> OgeomResult<Direction>
fn tangent_at(&self, u: f64, tol: Tolerances) -> OgeomResult<Direction>
The unit tangent at
u. Read moreSource§fn curvature_at(&self, u: f64, tol: Tolerances) -> OgeomResult<f64>
fn curvature_at(&self, u: f64, tol: Tolerances) -> OgeomResult<f64>
The curvature at
u. Read moreSource§fn start(&self, tol: Tolerances) -> OgeomResult<Point>
fn start(&self, tol: Tolerances) -> OgeomResult<Point>
The start point. Read more
Source§fn end(&self, tol: Tolerances) -> OgeomResult<Point>
fn end(&self, tol: Tolerances) -> OgeomResult<Point>
The end point. Read more
Source§fn normalize_parameter(&self, u: f64, tol: Tolerances) -> OgeomResult<f64>
fn normalize_parameter(&self, u: f64, tol: Tolerances) -> OgeomResult<f64>
Bring
u into the domain, wrapping if the curve is periodic. Read moreSource§impl Debug for TrimmedCurve
impl Debug for TrimmedCurve
Source§impl From<TrimmedCurve> for Curve
impl From<TrimmedCurve> for Curve
Source§fn from(c: TrimmedCurve) -> Self
fn from(c: TrimmedCurve) -> Self
Converts to this type from the input type.
Source§impl PartialEq for TrimmedCurve
impl PartialEq for TrimmedCurve
impl StructuralPartialEq for TrimmedCurve
Auto Trait Implementations§
impl Freeze for TrimmedCurve
impl RefUnwindSafe for TrimmedCurve
impl Send for TrimmedCurve
impl Sync for TrimmedCurve
impl Unpin for TrimmedCurve
impl UnsafeUnpin for TrimmedCurve
impl UnwindSafe for TrimmedCurve
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> Scalar for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.