Struct rs_pbrt::integrators::bdpt::EndpointInteraction
source · pub struct EndpointInteraction<'a> {
pub common: InteractionCommon,
pub camera: Option<&'a Arc<Camera>>,
pub light: Option<&'a Arc<Light>>,
}
Fields§
§common: InteractionCommon
§camera: Option<&'a Arc<Camera>>
§light: Option<&'a Arc<Light>>
Implementations§
source§impl<'a> EndpointInteraction<'a>
impl<'a> EndpointInteraction<'a>
pub fn new(p: &Point3f, time: Float) -> Self
pub fn new_interaction_from_camera( it: &InteractionCommon, camera: &'a Arc<Camera> ) -> Self
pub fn new_camera(camera: &'a Arc<Camera>, ray: &Ray) -> Self
pub fn new_light(light: &'a Arc<Light>, ray: &Ray, nl: &Normal3f) -> Self
pub fn new_interaction_from_light( it: &InteractionCommon, light: &'a Arc<Light> ) -> Self
pub fn new_ray(ray: &Ray) -> Self
pub fn get_medium(&self, w: &Vector3f) -> Option<Arc<Medium>>
Trait Implementations§
source§impl<'a> Default for EndpointInteraction<'a>
impl<'a> Default for EndpointInteraction<'a>
source§fn default() -> EndpointInteraction<'a>
fn default() -> EndpointInteraction<'a>
Returns the “default value” for a type. Read more
source§impl<'a> Interaction for EndpointInteraction<'a>
impl<'a> Interaction for EndpointInteraction<'a>
fn is_surface_interaction(&self) -> bool
fn is_medium_interaction(&self) -> bool
fn spawn_ray(&self, d: &Vector3f) -> Ray
fn get_common(&self) -> &InteractionCommon
fn get_p(&self) -> &Point3f
fn get_time(&self) -> Float
fn get_p_error(&self) -> &Vector3f
fn get_wo(&self) -> &Vector3f
fn get_n(&self) -> &Normal3f
fn get_medium_interface(&self) -> Option<Arc<MediumInterface>>
fn get_bsdf(&self) -> Option<&Bsdf>
fn get_shading_n(&self) -> Option<&Normal3f>
fn get_phase(&self) -> Option<Arc<HenyeyGreenstein>>
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for EndpointInteraction<'a>
impl<'a> Send for EndpointInteraction<'a>
impl<'a> Sync for EndpointInteraction<'a>
impl<'a> Unpin for EndpointInteraction<'a>
impl<'a> !UnwindSafe for EndpointInteraction<'a>
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> Pointable for T
impl<T> Pointable for T
source§impl<R, P> ReadPrimitive<R> for Pwhere
R: Read + ReadEndian<P>,
P: Default,
impl<R, P> ReadPrimitive<R> for Pwhere R: Read + ReadEndian<P>, P: Default,
source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian()
.