Struct rs_pbrt::cameras::perspective::PerspectiveCamera
source · pub struct PerspectiveCamera {
pub camera_to_world: AnimatedTransform,
pub shutter_open: Float,
pub shutter_close: Float,
pub film: Arc<Film>,
pub medium: Option<Arc<Medium>>,
pub raster_to_camera: Transform,
pub lens_radius: Float,
pub focal_distance: Float,
pub dx_camera: Vector3f,
pub dy_camera: Vector3f,
pub a: Float,
/* private fields */
}
Fields§
§camera_to_world: AnimatedTransform
§shutter_open: Float
§shutter_close: Float
§film: Arc<Film>
§medium: Option<Arc<Medium>>
§raster_to_camera: Transform
§lens_radius: Float
§focal_distance: Float
§dx_camera: Vector3f
§dy_camera: Vector3f
§a: Float
Implementations§
source§impl PerspectiveCamera
impl PerspectiveCamera
pub fn new( camera_to_world: AnimatedTransform, screen_window: Bounds2f, shutter_open: Float, shutter_close: Float, lens_radius: Float, focal_distance: Float, fov: Float, film: Arc<Film>, medium: Option<Arc<Medium>>, clipping_start: Float ) -> Self
pub fn create( params: &ParamSet, cam2world: AnimatedTransform, film: Arc<Film>, medium: Option<Arc<Medium>>, clipping_start: Float ) -> Arc<Camera>
pub fn generate_ray_differential( &self, sample: &CameraSample, ray: &mut Ray ) -> Float
pub fn we(&self, ray: &Ray, p_raster2: Option<&mut Point2f>) -> Spectrum
pub fn pdf_we(&self, ray: &Ray) -> (Float, Float)
pub fn sample_wi<'a, 'b>( &self, iref: &'a InteractionCommon, lens_intr: &'b mut InteractionCommon, u: Point2f, wi: &mut Vector3f, pdf: &mut Float, p_raster: &mut Point2f, vis: &mut VisibilityTester<'a, 'b> ) -> Spectrum
pub fn get_shutter_open(&self) -> Float
pub fn get_shutter_close(&self) -> Float
pub fn get_film(&self) -> Arc<Film>
pub fn get_clipping_start(&self) -> Float
pub fn adjust_to_clipping_start(&self, sample: &CameraSample, ray: &mut Ray)
Auto Trait Implementations§
impl RefUnwindSafe for PerspectiveCamera
impl Send for PerspectiveCamera
impl Sync for PerspectiveCamera
impl Unpin for PerspectiveCamera
impl UnwindSafe for PerspectiveCamera
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