HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HdCamera Class Reference

#include <camera.h>

+ Inheritance diagram for HdCamera:

Public Types

enum  DirtyBits : HdDirtyBits {
  Clean = 0, DirtyTransform = 1 << 0, DirtyViewMatrix = DirtyTransform, DirtyProjMatrix = 1 << 1,
  DirtyWindowPolicy = 1 << 2, DirtyClipPlanes = 1 << 3, DirtyParams = 1 << 4, AllDirty
}
 
enum  Projection { Perspective = 0, Orthographic }
 
using ClipPlanesVector = std::vector< GfVec4d >
 

Public Member Functions

HD_API HdCamera (SdfPath const &id)
 
HD_API ~HdCamera () override
 
HD_API void Sync (HdSceneDelegate *sceneDelegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits) override
 Sprim API. More...
 
HD_API HdDirtyBits GetInitialDirtyBitsMask () const override
 
GfMatrix4d constGetTransform () const
 Camera parameters accessor API. More...
 
Projection GetProjection () const
 Returns whether camera is orthographic and perspective. More...
 
float GetHorizontalAperture () const
 Returns horizontal aperture in world units. More...
 
float GetVerticalAperture () const
 Returns vertical aperture in world units. More...
 
float GetHorizontalApertureOffset () const
 Returns horizontal aperture offset in world units. More...
 
float GetVerticalApertureOffset () const
 Returns vertical aperture offset in world units. More...
 
float GetFocalLength () const
 Returns focal length in world units. More...
 
GfRange1f constGetClippingRange () const
 Returns near and far plane in world units. More...
 
std::vector< GfVec4d > constGetClipPlanes () const
 Returns any additional clipping planes defined in camera space. More...
 
float GetFStop () const
 Returns fstop of camera. More...
 
float GetFocusDistance () const
 Returns focus distance in world units. More...
 
double GetShutterOpen () const
 
double GetShutterClose () const
 
float GetExposure () const
 
CameraUtilConformWindowPolicy
const
GetWindowPolicy () const
 
HD_API GfMatrix4d GetViewMatrix () const
 Legacy camera parameters accessor API. More...
 
HD_API GfMatrix4d GetViewInverseMatrix () const
 
HD_API GfMatrix4d GetProjectionMatrix () const
 
- Public Member Functions inherited from HdSprim
HD_API HdSprim (SdfPath const &id)
 
virtual HD_API ~HdSprim ()
 
SdfPath constGetId () const
 
virtual HD_API void Finalize (HdRenderParam *renderParam)
 

Protected Attributes

GfMatrix4d _transform
 
Projection _projection
 
float _horizontalAperture
 
float _verticalAperture
 
float _horizontalApertureOffset
 
float _verticalApertureOffset
 
float _focalLength
 
GfRange1f _clippingRange
 
std::vector< GfVec4d_clipPlanes
 
float _fStop
 
float _focusDistance
 
double _shutterOpen
 
double _shutterClose
 
float _exposure
 
CameraUtilConformWindowPolicy _windowPolicy
 
GfMatrix4d _worldToViewMatrix
 
GfMatrix4d _worldToViewInverseMatrix
 
GfMatrix4d _projectionMatrix
 

Detailed Description

Hydra schema for a camera that pulls the params (see above) during Sync. Backends that use additional camera parameters can inherit from HdCamera and pull on them.

Definition at line 85 of file camera.h.

Member Typedef Documentation

using HdCamera::ClipPlanesVector = std::vector<GfVec4d>

Definition at line 88 of file camera.h.

Member Enumeration Documentation

Enumerator
Clean 
DirtyTransform 
DirtyViewMatrix 
DirtyProjMatrix 
DirtyWindowPolicy 
DirtyClipPlanes 
DirtyParams 
AllDirty 

Definition at line 96 of file camera.h.

Enumerator
Perspective 
Orthographic 

Definition at line 112 of file camera.h.

Constructor & Destructor Documentation

HD_API HdCamera::HdCamera ( SdfPath const id)
HD_API HdCamera::~HdCamera ( )
override

Member Function Documentation

GfRange1f const& HdCamera::GetClippingRange ( ) const
inline

Returns near and far plane in world units.

Definition at line 174 of file camera.h.

std::vector<GfVec4d> const& HdCamera::GetClipPlanes ( ) const
inline

Returns any additional clipping planes defined in camera space.

Definition at line 179 of file camera.h.

float HdCamera::GetExposure ( ) const
inline

Definition at line 201 of file camera.h.

float HdCamera::GetFocalLength ( ) const
inline

Returns focal length in world units.

Definition at line 169 of file camera.h.

float HdCamera::GetFocusDistance ( ) const
inline

Returns focus distance in world units.

Definition at line 189 of file camera.h.

float HdCamera::GetFStop ( ) const
inline

Returns fstop of camera.

Definition at line 184 of file camera.h.

float HdCamera::GetHorizontalAperture ( ) const
inline

Returns horizontal aperture in world units.

Definition at line 149 of file camera.h.

float HdCamera::GetHorizontalApertureOffset ( ) const
inline

Returns horizontal aperture offset in world units.

Definition at line 159 of file camera.h.

HD_API HdDirtyBits HdCamera::GetInitialDirtyBitsMask ( ) const
overridevirtual

Returns the minimal set of dirty bits to place in the change tracker for use in the first sync of this prim. Typically this would be all dirty bits.

Implements HdSprim.

Projection HdCamera::GetProjection ( ) const
inline

Returns whether camera is orthographic and perspective.

Definition at line 144 of file camera.h.

HD_API GfMatrix4d HdCamera::GetProjectionMatrix ( ) const

Returns the projection matrix for the camera.

Deprecated:
Compute from above physically based attributes
double HdCamera::GetShutterClose ( ) const
inline

Definition at line 197 of file camera.h.

double HdCamera::GetShutterOpen ( ) const
inline

Definition at line 193 of file camera.h.

GfMatrix4d const& HdCamera::GetTransform ( ) const
inline

Camera parameters accessor API.

Returns camera transform

Definition at line 139 of file camera.h.

float HdCamera::GetVerticalAperture ( ) const
inline

Returns vertical aperture in world units.

Definition at line 154 of file camera.h.

float HdCamera::GetVerticalApertureOffset ( ) const
inline

Returns vertical aperture offset in world units.

Definition at line 164 of file camera.h.

HD_API GfMatrix4d HdCamera::GetViewInverseMatrix ( ) const

Returns the matrix transformation from camera to world space.

Deprecated:
Use GetTransform and invert instead
HD_API GfMatrix4d HdCamera::GetViewMatrix ( ) const

Legacy camera parameters accessor API.

Returns the matrix transformation from world to camera space.

Deprecated:
Use GetTransform instead
CameraUtilConformWindowPolicy const& HdCamera::GetWindowPolicy ( ) const
inline

Returns the window policy of the camera. If no opinion is authored, we default to "CameraUtilFit"

Definition at line 207 of file camera.h.

HD_API void HdCamera::Sync ( HdSceneDelegate sceneDelegate,
HdRenderParam renderParam,
HdDirtyBits dirtyBits 
)
overridevirtual

Sprim API.

Synchronizes state from the delegate to this object.

Implements HdSprim.

Member Data Documentation

GfRange1f HdCamera::_clippingRange
protected

Definition at line 239 of file camera.h.

std::vector<GfVec4d> HdCamera::_clipPlanes
protected

Definition at line 240 of file camera.h.

float HdCamera::_exposure
protected

Definition at line 249 of file camera.h.

float HdCamera::_focalLength
protected

Definition at line 238 of file camera.h.

float HdCamera::_focusDistance
protected

Definition at line 244 of file camera.h.

float HdCamera::_fStop
protected

Definition at line 243 of file camera.h.

float HdCamera::_horizontalAperture
protected

Definition at line 234 of file camera.h.

float HdCamera::_horizontalApertureOffset
protected

Definition at line 236 of file camera.h.

Projection HdCamera::_projection
protected

Definition at line 233 of file camera.h.

GfMatrix4d HdCamera::_projectionMatrix
protected

Definition at line 258 of file camera.h.

double HdCamera::_shutterClose
protected

Definition at line 248 of file camera.h.

double HdCamera::_shutterOpen
protected

Definition at line 247 of file camera.h.

GfMatrix4d HdCamera::_transform
protected

Definition at line 232 of file camera.h.

float HdCamera::_verticalAperture
protected

Definition at line 235 of file camera.h.

float HdCamera::_verticalApertureOffset
protected

Definition at line 237 of file camera.h.

CameraUtilConformWindowPolicy HdCamera::_windowPolicy
protected

Definition at line 253 of file camera.h.

GfMatrix4d HdCamera::_worldToViewInverseMatrix
protected

Definition at line 257 of file camera.h.

GfMatrix4d HdCamera::_worldToViewMatrix
protected

Definition at line 256 of file camera.h.


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