Blender  V2.93
Public Types | Public Member Functions | Public Attributes | List of all members
Camera Class Reference

#include <DNA_camera_types.h>

Inherits Node.

Public Types

enum  MotionPosition { MOTION_POSITION_START = 0 , MOTION_POSITION_CENTER = 1 , MOTION_POSITION_END = 2 , MOTION_NUM_POSITIONS }
 
enum  RollingShutterType { ROLLING_SHUTTER_NONE = 0 , ROLLING_SHUTTER_TOP = 1 , ROLLING_SHUTTER_NUM_TYPES }
 
enum  StereoEye { STEREO_NONE , STEREO_LEFT , STEREO_RIGHT }
 

Public Member Functions

 Camera ()
 
 ~Camera ()
 
void compute_auto_viewplane ()
 
void update (Scene *scene)
 
void device_update (Device *device, DeviceScene *dscene, Scene *scene)
 
void device_update_volume (Device *device, DeviceScene *dscene, Scene *scene)
 
void device_free (Device *device, DeviceScene *dscene, Scene *scene)
 
BoundBox viewplane_bounds_get ()
 
float world_to_raster_size (float3 P)
 
float motion_time (int step) const
 
int motion_step (float time) const
 
bool use_motion () const
 
void set_screen_size_and_resolution (int width_, int height_, int resolution_)
 
- Public Member Functions inherited from Node
 Node (const NodeType *type, ustring name=ustring())
 
virtual ~Node ()=0
 
void set (const SocketType &input, bool value)
 
void set (const SocketType &input, int value)
 
void set (const SocketType &input, uint value)
 
void set (const SocketType &input, float value)
 
void set (const SocketType &input, float2 value)
 
void set (const SocketType &input, float3 value)
 
void set (const SocketType &input, const char *value)
 
void set (const SocketType &input, ustring value)
 
void set (const SocketType &input, const Transform &value)
 
void set (const SocketType &input, Node *value)
 
void set (const SocketType &input, array< bool > &value)
 
void set (const SocketType &input, array< int > &value)
 
void set (const SocketType &input, array< float > &value)
 
void set (const SocketType &input, array< float2 > &value)
 
void set (const SocketType &input, array< float3 > &value)
 
void set (const SocketType &input, array< ustring > &value)
 
void set (const SocketType &input, array< Transform > &value)
 
void set (const SocketType &input, array< Node * > &value)
 
bool get_bool (const SocketType &input) const
 
int get_int (const SocketType &input) const
 
uint get_uint (const SocketType &input) const
 
float get_float (const SocketType &input) const
 
float2 get_float2 (const SocketType &input) const
 
float3 get_float3 (const SocketType &input) const
 
ustring get_string (const SocketType &input) const
 
Transform get_transform (const SocketType &input) const
 
Nodeget_node (const SocketType &input) const
 
const array< bool > & get_bool_array (const SocketType &input) const
 
const array< int > & get_int_array (const SocketType &input) const
 
const array< float > & get_float_array (const SocketType &input) const
 
const array< float2 > & get_float2_array (const SocketType &input) const
 
const array< float3 > & get_float3_array (const SocketType &input) const
 
const array< ustring > & get_string_array (const SocketType &input) const
 
const array< Transform > & get_transform_array (const SocketType &input) const
 
const array< Node * > & get_node_array (const SocketType &input) const
 
bool has_default_value (const SocketType &input) const
 
void set_default_value (const SocketType &input)
 
bool equals_value (const Node &other, const SocketType &input) const
 
void copy_value (const SocketType &input, const Node &other, const SocketType &other_input)
 
void set_value (const SocketType &input, const Node &other, const SocketType &other_input)
 
bool equals (const Node &other) const
 
void hash (MD5Hash &md5)
 
size_t get_total_size_in_bytes () const
 
bool is_a (const NodeType *type)
 
bool socket_is_modified (const SocketType &input) const
 
bool is_modified ()
 
void tag_modified ()
 
void clear_modified ()
 
void print_modified_sockets () const
 
const NodeOwnerget_owner () const
 
void set_owner (const NodeOwner *owner_)
 

Public Attributes

ID id
 
struct AnimDataadt
 
char type
 
char dtx
 
short flag
 
float passepartalpha
 
float clip_start
 
float clip_end
 
float lens
 
float ortho_scale
 
float drawsize
 
float sensor_x
 
float sensor_y
 
float shiftx
 
float shifty
 
float dof_distance DNA_DEPRECATED
 
struct Ipo *ipo DNA_DEPRECATED
 
struct Object *dof_ob DNA_DEPRECATED
 
struct GPUDOFSettings gpu_dof DNA_DEPRECATED
 
struct CameraDOFSettings dof
 
struct ListBase bg_images
 
char sensor_fit
 
char _pad [7]
 
struct CameraStereoSettings stereo
 
Camera_Runtime runtime
 
size_t shutter_table_offset
 
BoundBox2D viewplane
 
BoundBox2D border
 
BoundBox2D viewport_camera_border
 
ProjectionTransform screentoworld
 
ProjectionTransform rastertoworld
 
ProjectionTransform ndctoworld
 
Transform cameratoworld
 
ProjectionTransform worldtoraster
 
ProjectionTransform worldtoscreen
 
ProjectionTransform worldtondc
 
Transform worldtocamera
 
ProjectionTransform rastertocamera
 
ProjectionTransform cameratoraster
 
ProjectionTransform full_rastertocamera
 
float3 dx
 
float3 dy
 
float3 full_dx
 
float3 full_dy
 
float3 frustum_right_normal
 
float3 frustum_top_normal
 
float3 frustum_left_normal
 
float3 frustum_bottom_normal
 
bool need_device_update
 
bool need_flags_update
 
int previous_need_motion
 
KernelCamera kernel_camera
 
array< DecomposedTransformkernel_camera_motion
 
- Public Attributes inherited from Node
ustring name
 
const NodeTypetype
 
InternalNode internal
 
LeafNode leaf
 

Additional Inherited Members

- Protected Member Functions inherited from Node
template<typename T >
void set_if_different (const SocketType &input, T value)
 
template<typename T >
void set_if_different (const SocketType &input, array< T > &value)
 
- Static Protected Member Functions inherited from Node
template<typename T >
static Tget_socket_value (const Node *node, const SocketType &socket)
 
- Protected Attributes inherited from Node
const NodeOwnerowner
 
SocketModifiedFlags socket_modified
 

Detailed Description

Definition at line 91 of file DNA_camera_types.h.

Member Enumeration Documentation

◆ MotionPosition

Enumerator
MOTION_POSITION_START 
MOTION_POSITION_CENTER 
MOTION_POSITION_END 
MOTION_NUM_POSITIONS 

Definition at line 47 of file camera.h.

◆ RollingShutterType

Enumerator
ROLLING_SHUTTER_NONE 
ROLLING_SHUTTER_TOP 
ROLLING_SHUTTER_NUM_TYPES 

Definition at line 59 of file camera.h.

◆ StereoEye

Enumerator
STEREO_NONE 
STEREO_LEFT 
STEREO_RIGHT 

Definition at line 69 of file camera.h.

Constructor & Destructor Documentation

◆ Camera()

Camera::Camera ( )

◆ ~Camera()

Camera::~Camera ( )

Definition at line 202 of file camera.cpp.

Member Function Documentation

◆ compute_auto_viewplane()

void Camera::compute_auto_viewplane ( )

◆ device_free()

void Camera::device_free ( Device device,
DeviceScene dscene,
Scene scene 
)

◆ device_update()

void Camera::device_update ( Device device,
DeviceScene dscene,
Scene scene 
)

Definition at line 482 of file camera.cpp.

References need_device_update, scene, time, update(), and Scene::update_stats.

◆ device_update_volume()

void Camera::device_update_volume ( Device device,
DeviceScene dscene,
Scene scene 
)

◆ motion_step()

int Camera::motion_step ( float  time) const

Definition at line 807 of file camera.cpp.

References motion_time(), time, and use_motion().

◆ motion_time()

float Camera::motion_time ( int  step) const

Definition at line 802 of file camera.cpp.

References use_motion().

Referenced by motion_step().

◆ set_screen_size_and_resolution()

void Camera::set_screen_size_and_resolution ( int  width_,
int  height_,
int  resolution_ 
)

Definition at line 792 of file camera.cpp.

References Node::tag_modified().

Referenced by Session::update_scene().

◆ update()

void Camera::update ( Scene scene)

◆ use_motion()

bool Camera::use_motion ( ) const

Definition at line 787 of file camera.cpp.

Referenced by motion_step(), and motion_time().

◆ viewplane_bounds_get()

BoundBox Camera::viewplane_bounds_get ( )

◆ world_to_raster_size()

float Camera::world_to_raster_size ( float3  P)

Member Data Documentation

◆ _pad

char Camera::_pad[7]

Definition at line 119 of file DNA_camera_types.h.

◆ adt

struct AnimData* Camera::adt

◆ bg_images

struct ListBase Camera::bg_images

◆ border

BoundBox2D Camera::border

Definition at line 142 of file camera.h.

Referenced by BlenderSync::get_buffer_params().

◆ cameratoraster

ProjectionTransform Camera::cameratoraster

Definition at line 175 of file camera.h.

◆ cameratoworld

Transform Camera::cameratoworld

Definition at line 167 of file camera.h.

Referenced by Camera(), viewplane_bounds_get(), and world_to_raster_size().

◆ clip_end

float Camera::clip_end

◆ clip_start

float Camera::clip_start

◆ DNA_DEPRECATED [1/4]

float dof_distance Camera::DNA_DEPRECATED

Definition at line 106 of file DNA_camera_types.h.

◆ DNA_DEPRECATED [2/4]

struct Ipo* ipo Camera::DNA_DEPRECATED

Old animation system, deprecated for 2.5.

Definition at line 109 of file DNA_camera_types.h.

◆ DNA_DEPRECATED [3/4]

struct Object* dof_ob Camera::DNA_DEPRECATED

Definition at line 111 of file DNA_camera_types.h.

◆ DNA_DEPRECATED [4/4]

struct GPUDOFSettings gpu_dof Camera::DNA_DEPRECATED

Definition at line 111 of file DNA_camera_types.h.

◆ dof

struct CameraDOFSettings Camera::dof

◆ drawsize

float Camera::drawsize

◆ dtx

char Camera::dtx

Draw type extra.

Definition at line 99 of file DNA_camera_types.h.

Referenced by drawviewborder().

◆ dx

float3 Camera::dx

Definition at line 179 of file camera.h.

Referenced by Camera(), and world_to_raster_size().

◆ dy

float3 Camera::dy

Definition at line 180 of file camera.h.

Referenced by Camera().

◆ flag

short Camera::flag

◆ frustum_bottom_normal

float3 Camera::frustum_bottom_normal

Definition at line 188 of file camera.h.

Referenced by world_to_raster_size().

◆ frustum_left_normal

float3 Camera::frustum_left_normal

Definition at line 187 of file camera.h.

Referenced by world_to_raster_size().

◆ frustum_right_normal

float3 Camera::frustum_right_normal

Definition at line 185 of file camera.h.

Referenced by world_to_raster_size().

◆ frustum_top_normal

float3 Camera::frustum_top_normal

Definition at line 186 of file camera.h.

Referenced by world_to_raster_size().

◆ full_dx

float3 Camera::full_dx

Definition at line 182 of file camera.h.

Referenced by world_to_raster_size().

◆ full_dy

float3 Camera::full_dy

Definition at line 183 of file camera.h.

Referenced by world_to_raster_size().

◆ full_rastertocamera

ProjectionTransform Camera::full_rastertocamera

Definition at line 177 of file camera.h.

Referenced by Camera(), and world_to_raster_size().

◆ id

ID Camera::id

◆ kernel_camera

KernelCamera Camera::kernel_camera

Definition at line 196 of file camera.h.

Referenced by Camera(), and world_to_raster_size().

◆ kernel_camera_motion

array<DecomposedTransform> Camera::kernel_camera_motion

Definition at line 197 of file camera.h.

Referenced by world_to_raster_size().

◆ lens

float Camera::lens

◆ ndctoworld

ProjectionTransform Camera::ndctoworld

Definition at line 166 of file camera.h.

Referenced by Camera().

◆ need_device_update

bool Camera::need_device_update

Definition at line 191 of file camera.h.

Referenced by Camera(), device_update(), device_update_volume(), and update().

◆ need_flags_update

bool Camera::need_flags_update

Definition at line 192 of file camera.h.

Referenced by Camera(), device_update_volume(), and xml_read_camera().

◆ ortho_scale

float Camera::ortho_scale

◆ passepartalpha

float Camera::passepartalpha

Definition at line 101 of file DNA_camera_types.h.

Referenced by blo_do_versions_pre250(), and drawviewborder().

◆ previous_need_motion

int Camera::previous_need_motion

Definition at line 193 of file camera.h.

Referenced by Camera(), and update().

◆ rastertocamera

ProjectionTransform Camera::rastertocamera

Definition at line 174 of file camera.h.

Referenced by Camera().

◆ rastertoworld

ProjectionTransform Camera::rastertoworld

Definition at line 165 of file camera.h.

Referenced by Camera().

◆ runtime

Camera_Runtime Camera::runtime

Runtime data (keep last).

Definition at line 125 of file DNA_camera_types.h.

◆ screentoworld

ProjectionTransform Camera::screentoworld

Definition at line 164 of file camera.h.

Referenced by Camera().

◆ sensor_fit

char Camera::sensor_fit

◆ sensor_x

float Camera::sensor_x

◆ sensor_y

float Camera::sensor_y

◆ shiftx

float Camera::shiftx

◆ shifty

float Camera::shifty

◆ shutter_table_offset

size_t Camera::shutter_table_offset

Definition at line 79 of file camera.h.

Referenced by Camera(), and device_free().

◆ stereo

struct CameraStereoSettings Camera::stereo

◆ type

char Camera::type

◆ viewplane

BoundBox2D Camera::viewplane

Definition at line 129 of file camera.h.

Referenced by compute_auto_viewplane().

◆ viewport_camera_border

BoundBox2D Camera::viewport_camera_border

Definition at line 148 of file camera.h.

◆ worldtocamera

Transform Camera::worldtocamera

Definition at line 172 of file camera.h.

Referenced by world_to_raster_size().

◆ worldtondc

ProjectionTransform Camera::worldtondc

Definition at line 171 of file camera.h.

◆ worldtoraster

ProjectionTransform Camera::worldtoraster

Definition at line 169 of file camera.h.

Referenced by Camera(), and QuadDice::eval_projected().

◆ worldtoscreen

ProjectionTransform Camera::worldtoscreen

Definition at line 170 of file camera.h.


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