Lightmetrica  0.0.1.50dbee3 (yosakoi)
 All Classes Functions Variables Typedefs Enumerations Enumerator
Public Member Functions | List of all members
Camera Class Referenceabstract

#include <camera.h>

Public Member Functions

 LM_ASSET_INTERFACE_DEF ("camera","cameras")
 
 LM_ASSET_DEPENDENCIES ("film")
 
virtual bool RayToRasterPosition (const Math::Vec3 &p, const Math::Vec3 &d, Math::Vec2 &rasterPos) const =0
 
virtual FilmGetFilm () const =0
 
- Public Member Functions inherited from Emitter
virtual void SamplePosition (const Math::Vec2 &sample, SurfaceGeometry &geom, Math::PDFEval &pdf) const =0
 
virtual Math::Vec3 EvaluatePosition (const SurfaceGeometry &geom) const =0
 
virtual Math::PDFEval EvaluatePositionPDF (const SurfaceGeometry &geom) const =0
 
virtual void RegisterPrimitives (const std::vector< Primitive * > &primitives)=0
 
virtual void PostConfigure (const Scene &scene)=0
 
virtual EmitterShapeCreateEmitterShape () const =0
 
virtual AABB GetAABB () const =0
 
- Public Member Functions inherited from GeneralizedBSDF
virtual bool SampleDirection (const GeneralizedBSDFSampleQuery &query, const SurfaceGeometry &geom, GeneralizedBSDFSampleResult &result) const =0
 
virtual Math::Vec3 SampleAndEstimateDirection (const GeneralizedBSDFSampleQuery &query, const SurfaceGeometry &geom, GeneralizedBSDFSampleResult &result) const =0
 
virtual bool SampleAndEstimateDirectionBidir (const GeneralizedBSDFSampleQuery &query, const SurfaceGeometry &geom, GeneralizedBSDFSampleBidirResult &result) const =0
 
virtual Math::Vec3 EvaluateDirection (const GeneralizedBSDFEvaluateQuery &query, const SurfaceGeometry &geom) const =0
 
virtual Math::PDFEval EvaluateDirectionPDF (const GeneralizedBSDFEvaluateQuery &query, const SurfaceGeometry &geom) const =0
 
virtual int BSDFTypes () const =0
 
- Public Member Functions inherited from Asset
virtual bool Load (const ConfigNode &node, const Assets &assets)=0
 
LM_PUBLIC_API std::string ID () const
 
LM_HIDDEN_API void SetID (const std::string &id)
 
- Public Member Functions inherited from Component
virtual std::string ComponentInterfaceTypeName () const =0
 
virtual std::string ComponentImplTypeName () const =0
 
- Public Member Functions inherited from SIMDAlignedType
void * operator new (std::size_t size) throw (std::bad_alloc)
 
void operator delete (void *p)
 

Detailed Description

Camera. A base class of the cameras.

Inheritance diagram for Camera:
Emitter GeneralizedBSDF Asset Component SIMDAlignedType PerspectiveCamera ThinLensCamera

Member Function Documentation

virtual Film* Camera::GetFilm ( ) const
pure virtual

Get film. Returns the film referenced by the camera.

Parameters
Film.

Implemented in PerspectiveCamera, and ThinLensCamera.

virtual bool Camera::RayToRasterPosition ( const Math::Vec3 &  p,
const Math::Vec3 &  d,
Math::Vec2 &  rasterPos 
) const
pure virtual

Convert a ray to a raster position. The function calculates the raster position from the outgoing ray. Returns false if calculated raster position is the outside of [0, 1]^2.

Parameters
pPosition on the camera.
dOutgoing direction from #p.
rasterPosRaster position.
Returns
true Succeeded to convert.
false Failed to convert.

Implemented in PerspectiveCamera, and ThinLensCamera.


The documentation for this class was generated from the following file: