Struct rs_pbrt::core::reflection::SpecularTransmission
source · pub struct SpecularTransmission {
pub t: Spectrum,
pub eta_a: Float,
pub eta_b: Float,
pub fresnel: FresnelDielectric,
pub mode: TransportMode,
pub sc_opt: Option<Spectrum>,
}
Fields§
§t: Spectrum
§eta_a: Float
§eta_b: Float
§fresnel: FresnelDielectric
§mode: TransportMode
§sc_opt: Option<Spectrum>
Implementations§
source§impl SpecularTransmission
impl SpecularTransmission
pub fn new( t: Spectrum, eta_a: Float, eta_b: Float, mode: TransportMode, sc_opt: Option<Spectrum> ) -> Self
pub fn f(&self, _wo: &Vector3f, _wi: &Vector3f) -> Spectrum
pub fn sample_f( &self, wo: &Vector3f, wi: &mut Vector3f, _sample: &Point2f, pdf: &mut Float, _sampled_type: &mut u8 ) -> Spectrum
pub fn pdf(&self, wo: &Vector3f, wi: &Vector3f) -> Float
pub fn get_type(&self) -> u8
Trait Implementations§
source§impl Clone for SpecularTransmission
impl Clone for SpecularTransmission
source§fn clone(&self) -> SpecularTransmission
fn clone(&self) -> SpecularTransmission
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 moreimpl Copy for SpecularTransmission
Auto Trait Implementations§
impl RefUnwindSafe for SpecularTransmission
impl Send for SpecularTransmission
impl Sync for SpecularTransmission
impl Unpin for SpecularTransmission
impl UnwindSafe for SpecularTransmission
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