[][src]Struct pbrt::media::grid::GridDensityMedium

pub struct GridDensityMedium {
    pub sigma_a: Spectrum,
    pub sigma_s: Spectrum,
    pub g: Float,
    pub nx: i32,
    pub ny: i32,
    pub nz: i32,
    pub world_to_medium: Transform,
    pub density: Arc<Vec<Float>>,
    pub sigma_t: Float,
    pub inv_max_density: Float,
}

Fields

sigma_a: Spectrumsigma_s: Spectrumg: Floatnx: i32ny: i32nz: i32world_to_medium: Transformdensity: Arc<Vec<Float>>sigma_t: Floatinv_max_density: Float

Methods

impl GridDensityMedium[src]

pub fn new(
    sigma_a: &Spectrum,
    sigma_s: &Spectrum,
    g: Float,
    nx: i32,
    ny: i32,
    nz: i32,
    medium_to_world: &Transform,
    d: Arc<Vec<Float>>
) -> Self
[src]

pub fn d(&self, p: &Point3i) -> Float[src]

pub fn density(&self, p: &Point3f) -> Float[src]

pub fn tr(&self, r_world: &Ray, sampler: &mut Box<Sampler>) -> Spectrum[src]

pub fn sample(
    &self,
    r_world: &Ray,
    sampler: &mut Box<Sampler>
) -> (Spectrum, Option<MediumInteraction>)
[src]

Auto Trait Implementations

impl Send for GridDensityMedium

impl Unpin for GridDensityMedium

impl Sync for GridDensityMedium

impl UnwindSafe for GridDensityMedium

impl RefUnwindSafe for GridDensityMedium

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> SetParameter for T[src]