pub enum Shape {
Crv(Curve),
Clndr(Cylinder),
Dsk(Disk),
Sphr(Sphere),
Trngl(Triangle),
}
Variants§
Implementations§
source§impl Shape
impl Shape
pub fn object_bound(&self) -> Bounds3f
pub fn world_bound(&self) -> Bounds3f
pub fn intersect( &self, r: &Ray, t_hit: &mut Float, isect: &mut SurfaceInteraction<'_> ) -> bool
pub fn intersect_p(&self, r: &Ray) -> bool
pub fn get_reverse_orientation(&self) -> bool
pub fn get_transform_swaps_handedness(&self) -> bool
pub fn get_object_to_world(&self) -> Transform
pub fn area(&self) -> Float
pub fn sample(&self, u: Point2f, pdf: &mut Float) -> InteractionCommon
pub fn pdf(&self, _iref: &InteractionCommon) -> Float
pub fn sample_with_ref_point( &self, iref: &InteractionCommon, u: Point2f, pdf: &mut Float ) -> InteractionCommon
pub fn pdf_with_ref_point(&self, iref: &dyn Interaction, wi: &Vector3f) -> Float
Auto Trait Implementations§
impl !RefUnwindSafe for Shape
impl Send for Shape
impl Sync for Shape
impl Unpin for Shape
impl !UnwindSafe for Shape
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