pub struct RaySurface { /* private fields */ }Expand description
A NURBS surface made ready for ray crossings.
It holds the surface’s Bezier patches, each a grid of homogeneous control points. A surface whose weights are all positive lies in the hull of each patch’s control points, which the search relies on to pass over the patches a ray misses.
Implementations§
Source§impl RaySurface
impl RaySurface
Sourcepub fn new(surface: &NurbsSurface) -> Option<Self>
pub fn new(surface: &NurbsSurface) -> Option<Self>
surface made ready, or None when a weight is not positive, a knot
vector is not clamped, or the surface cannot be cut into Bezier
patches.
Sourcepub const fn surface(&self) -> &NurbsSurface
pub const fn surface(&self) -> &NurbsSurface
The surface.
Trait Implementations§
Source§impl Clone for RaySurface
impl Clone for RaySurface
Auto Trait Implementations§
impl Freeze for RaySurface
impl RefUnwindSafe for RaySurface
impl Send for RaySurface
impl Sync for RaySurface
impl Unpin for RaySurface
impl UnsafeUnpin for RaySurface
impl UnwindSafe for RaySurface
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