pub struct CircleCurve { /* private fields */ }Expand description
A circle, parameterized by angle.
Implementations§
Source§impl CircleCurve
impl CircleCurve
Sourcepub const fn new(circle: Circle) -> Self
pub const fn new(circle: Circle) -> Self
A full circle, running counter-clockwise about its frame’s z.
Sourcepub const fn is_reversed(&self) -> bool
pub const fn is_reversed(&self) -> bool
Whether the curve runs backwards along its underlying circle.
Part of the curve’s state and not derivable from its circle, so anything that has to reproduce this curve exactly (the native format above all) needs to be able to read it.
Sourcepub fn forward(&self, tol: Tolerances) -> OgeomResult<Self>
pub fn forward(&self, tol: Tolerances) -> OgeomResult<Self>
The same curve, the same point at every parameter, running forward:
a reversed circle is its circle’s frame turned half a turn about its
x axis, the angle measured from the same x towards -y.
§Errors
None in practice: the turned frame is the given one’s axes negated.
Trait Implementations§
Source§impl Clone for CircleCurve
impl Clone for CircleCurve
impl Copy for CircleCurve
Source§impl Curve3d for CircleCurve
impl Curve3d for CircleCurve
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 CircleCurve
impl Debug for CircleCurve
Source§impl From<CircleCurve> for Curve
impl From<CircleCurve> for Curve
Source§fn from(c: CircleCurve) -> Self
fn from(c: CircleCurve) -> Self
Converts to this type from the input type.
Source§impl PartialEq for CircleCurve
impl PartialEq for CircleCurve
impl StructuralPartialEq for CircleCurve
Auto Trait Implementations§
impl Freeze for CircleCurve
impl RefUnwindSafe for CircleCurve
impl Send for CircleCurve
impl Sync for CircleCurve
impl Unpin for CircleCurve
impl UnsafeUnpin for CircleCurve
impl UnwindSafe for CircleCurve
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.