Struct rs_pbrt::integrators::bdpt::Vertex
source · pub struct Vertex<'a> { /* private fields */ }
Implementations§
source§impl<'a> Vertex<'a>
impl<'a> Vertex<'a>
pub fn new( vertex_type: VertexType, ei: EndpointInteraction<'a>, beta: &Spectrum ) -> Self
pub fn create_camera_from_ray( camera: &'a Arc<Camera>, ray: &Ray, beta: &Spectrum ) -> Vertex<'a>
pub fn create_camera_from_interaction( camera: &'a Arc<Camera>, it: &InteractionCommon, beta: &Spectrum ) -> Vertex<'a>
pub fn create_surface_interaction( si: SurfaceInteraction<'a>, beta: &Spectrum, pdf: Float, prev: &Vertex<'_> ) -> Vertex<'a>
pub fn create_medium_interaction( mi: MediumInteraction, beta: &Spectrum, pdf: Float, prev: &Vertex<'_> ) -> Vertex<'a>
pub fn create_light_interaction( ei: EndpointInteraction<'a>, beta: &Spectrum, pdf: Float ) -> Vertex<'a>
pub fn create_light( light: &'a Arc<Light>, ray: &Ray, nl: &Normal3f, le: &Spectrum, pdf: Float ) -> Vertex<'a>
pub fn p(&self) -> Point3f
pub fn time(&self) -> Float
pub fn ng(&self) -> Normal3f
pub fn ns(&self) -> Normal3f
pub fn is_on_surface(&self) -> bool
pub fn f(&self, next: &Vertex<'_>, mode: TransportMode) -> Spectrum
pub fn is_connectible(&self) -> bool
pub fn is_light(&self) -> bool
pub fn is_delta_light(&self) -> bool
pub fn is_infinite_light(&self) -> bool
pub fn le(&self, scene: &Scene, v: &Vertex<'_>) -> Spectrum
pub fn convert_density(&self, pdf: Float, next: &Vertex<'_>) -> Float
pub fn pdf( &self, scene: &Scene, prev: Option<&Vertex<'_>>, next: &Vertex<'_> ) -> Float
pub fn pdf_light(&self, scene: &Scene, v: &Vertex<'_>) -> Float
pub fn pdf_light_origin( &self, scene: &Scene, v: &Vertex<'_>, light_distr: Arc<Distribution1D> ) -> Float
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for Vertex<'a>
impl<'a> !Send for Vertex<'a>
impl<'a> !Sync for Vertex<'a>
impl<'a> Unpin for Vertex<'a>
impl<'a> !UnwindSafe for Vertex<'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