Struct SurfaceDifferential
pub struct SurfaceDifferential {
pub point: DVec3,
pub unit_normal: DVec3,
pub first: FundamentalForm,
pub second: FundamentalForm,
pub gaussian_curvature: f64,
pub mean_curvature: f64,
pub principal_curvatures: [f64; 2],
}Expand description
First/second-order differential properties of an oriented surface.
Fields§
§point: DVec3Evaluated surface point.
unit_normal: DVec3Unit normal from du × dv.
first: FundamentalFormFirst fundamental form (E, F, G).
second: FundamentalFormSecond fundamental form (e, f, g) for unit_normal.
gaussian_curvature: f64Gaussian curvature, invariant under normal reversal.
mean_curvature: f64Mean curvature for the reported normal orientation.
principal_curvatures: [f64; 2]Principal curvatures in ascending order for the reported orientation.
Trait Implementations§
§impl Clone for SurfaceDifferential
impl Clone for SurfaceDifferential
§fn clone(&self) -> SurfaceDifferential
fn clone(&self) -> SurfaceDifferential
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for SurfaceDifferential
impl Debug for SurfaceDifferential
§impl PartialEq for SurfaceDifferential
impl PartialEq for SurfaceDifferential
impl Copy for SurfaceDifferential
impl StructuralPartialEq for SurfaceDifferential
Auto Trait Implementations§
impl Freeze for SurfaceDifferential
impl RefUnwindSafe for SurfaceDifferential
impl Send for SurfaceDifferential
impl Sync for SurfaceDifferential
impl Unpin for SurfaceDifferential
impl UnwindSafe for SurfaceDifferential
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,
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>
Converts
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>
Converts
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