6#include <Common/assertion.h>
8namespace ph::math {
class Transform; }
9namespace ph::math {
class RigidTransform; }
38 real*
const out_pdfW)
const override = 0;
57 PH_ASSERT(m_rasterToSensor);
59 return *m_rasterToSensor;
Represents a ray in space.
Definition Ray.h:21
A target that can receive any physical quantity, typically electromagnetic energy....
Definition Receiver.h:22
A receiver with a rectangular sensor installed.
Definition RectangularSensorReceiver.h:19
void evalEmittedImportanceAndPdfW(const math::Vector3R &targetPos, math::Vector2R *const out_filmCoord, math::Vector3R *const out_importance, real *out_filmArea, real *const out_pdfW) const override=0
const math::Vector2D & getSensorSize() const
Definition RectangularSensorReceiver.h:50
math::Spectrum receiveRay(const math::Vector2D &rasterCoord, Ray *out_ray) const override=0
Generate a ray received by the receiver.
RectangularSensorReceiver(const math::Vector2D &sensorSize, const math::Transform *rasterToSensor, const math::RigidTransform *receiverToWorld)
Definition RectangularSensorReceiver.cpp:6
const math::Transform & getRasterToSensor() const
Definition RectangularSensorReceiver.h:55
Definition TTristimulusSpectrum.h:11
Math functions and utilities.
Definition TransformInfo.h:10
The root for all renderer implementations.
Definition EEngineProject.h:6