Blender  V3.3
DNA_camera_types.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later
2  * Copyright 2001-2002 NaN Holding BV. All rights reserved. */
3 
8 #pragma once
9 
10 #include "DNA_ID.h"
11 #include "DNA_defs.h"
12 #include "DNA_gpu_types.h"
13 #include "DNA_image_types.h"
14 #include "DNA_movieclip_types.h"
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 struct AnimData;
21 struct Ipo;
22 struct Object;
23 
24 /* ------------------------------------------- */
25 /* Stereo Settings */
26 typedef struct CameraStereoSettings {
30  short pivot;
31  short flag;
32  char _pad[2];
33  /* Cut-off angle at which interocular distance start to fade down. */
35  /* Cut-off angle at which interocular distance stops to fade down. */
38 
39 /* Background Picture */
40 typedef struct CameraBGImage {
41  struct CameraBGImage *next, *prev;
42 
43  struct Image *ima;
44  struct ImageUser iuser;
45  struct MovieClip *clip;
46  struct MovieClipUser cuser;
47  float offset[2], scale, rotation;
48  float alpha;
49  short flag;
50  short source;
52 
54 typedef struct CameraDOFSettings {
57  char focus_subtarget[64];
63  short flag;
64  char _pad[2];
66 
67 typedef struct Camera_Runtime {
68  /* For draw manager. */
69  float drw_corners[2][4][2];
70  float drw_tria[2][2];
71  float drw_depth[2];
72  float drw_focusmat[4][4];
73  float drw_normalmat[4][4];
75 
76 typedef struct Camera {
77  ID id;
79  struct AnimData *adt;
80 
82  char type;
84  char dtx;
85  short flag;
90  float shiftx, shifty;
91  float dof_distance DNA_DEPRECATED;
92 
94  struct Ipo *ipo DNA_DEPRECATED;
95 
96  struct Object *dof_ob DNA_DEPRECATED;
97  struct GPUDOFSettings gpu_dof DNA_DEPRECATED;
98  struct CameraDOFSettings dof;
99 
100  /* CameraBGImage reference images */
101  struct ListBase bg_images;
102 
104  char _pad[7];
105 
106  /* Stereo settings */
108 
112 
113 /* **************** CAMERA ********************* */
114 
115 /* type */
116 enum {
119  CAM_PANO = 2,
120 };
121 
122 /* dtx */
123 enum {
124  CAM_DTX_CENTER = (1 << 0),
126  CAM_DTX_THIRDS = (1 << 2),
127  CAM_DTX_GOLDEN = (1 << 3),
132 };
133 
134 /* flag */
135 enum {
136  CAM_SHOWLIMITS = (1 << 0),
137  CAM_SHOWMIST = (1 << 1),
140  CAM_SHOWNAME = (1 << 4),
141  CAM_ANGLETOGGLE = (1 << 5),
142  CAM_DS_EXPAND = (1 << 6),
144  CAM_PANORAMA = (1 << 7), /* deprecated */
145 #endif
146  CAM_SHOWSENSOR = (1 << 8),
148  CAM_SHOW_BG_IMAGE = (1 << 10),
149 };
150 
151 /* Sensor fit */
152 enum {
156 };
157 
158 #define DEFAULT_SENSOR_WIDTH 36.0f
159 #define DEFAULT_SENSOR_HEIGHT 24.0f
160 
161 /* stereo->convergence_mode */
162 enum {
166 };
167 
168 /* stereo->pivot */
169 enum {
173 };
174 
175 /* stereo->flag */
176 enum {
177  CAM_S3D_SPHERICAL = (1 << 0),
178  CAM_S3D_POLE_MERGE = (1 << 1),
179 };
180 
181 /* CameraBGImage->flag */
182 /* may want to use 1 for select ? */
183 enum {
188 
189  /* Camera framing options */
194 
195  /* Axis flip options */
198 
199  /* That background image has been inserted in local override (i.e. it can be fully edited!). */
201 };
202 
203 /* CameraBGImage->source */
204 /* may want to use 1 for select? */
205 enum {
208 };
209 
210 /* CameraDOFSettings->flag */
211 enum {
212  CAM_DOF_ENABLED = (1 << 0),
213 };
214 
215 #ifdef __cplusplus
216 }
217 #endif
ID and Library types, which are fundamental for sdna.
@ CAM_BGIMG_FLAG_FLIP_X
@ CAM_BGIMG_FLAG_FLIP_Y
@ CAM_BGIMG_FLAG_CAMERA_CROP
@ CAM_BGIMG_FLAG_CAMERACLIP
@ CAM_BGIMG_FLAG_CAMERA_ASPECT
@ CAM_BGIMG_FLAG_DISABLED
@ CAM_BGIMG_FLAG_FOREGROUND
@ CAM_BGIMG_FLAG_OVERRIDE_LIBRARY_LOCAL
@ CAM_BGIMG_FLAG_EXPANDED
@ CAM_DOF_ENABLED
struct Camera_Runtime Camera_Runtime
@ CAM_BGIMG_SOURCE_IMAGE
@ CAM_BGIMG_SOURCE_MOVIE
@ CAM_S3D_PARALLEL
@ CAM_S3D_OFFAXIS
@ CAM_S3D_TOE
@ CAM_SHOWLIMITS
@ CAM_DS_EXPAND
@ CAM_SHOW_BG_IMAGE
@ CAM_SHOWPASSEPARTOUT
@ CAM_SHOW_SAFE_MARGINS
@ CAM_SHOW_SAFE_CENTER
@ CAM_SHOWMIST
@ CAM_ANGLETOGGLE
@ CAM_SHOWNAME
@ CAM_SHOWSENSOR
@ CAMERA_SENSOR_FIT_HOR
@ CAMERA_SENSOR_FIT_AUTO
@ CAMERA_SENSOR_FIT_VERT
struct Camera Camera
struct CameraStereoSettings CameraStereoSettings
@ CAM_S3D_SPHERICAL
@ CAM_S3D_POLE_MERGE
@ CAM_DTX_GOLDEN_TRI_A
@ CAM_DTX_CENTER
@ CAM_DTX_HARMONY_TRI_A
@ CAM_DTX_GOLDEN
@ CAM_DTX_GOLDEN_TRI_B
@ CAM_DTX_HARMONY_TRI_B
@ CAM_DTX_CENTER_DIAG
@ CAM_DTX_THIRDS
@ CAM_PERSP
@ CAM_PANO
@ CAM_ORTHO
@ CAM_S3D_PIVOT_CENTER
@ CAM_S3D_PIVOT_RIGHT
@ CAM_S3D_PIVOT_LEFT
struct CameraBGImage CameraBGImage
struct CameraDOFSettings CameraDOFSettings
#define DNA_DEPRECATED_ALLOW
Definition: action.c:16
struct CameraBGImage * next
struct CameraBGImage * prev
struct MovieClip * clip
struct ImageUser iuser
struct MovieClipUser cuser
struct Image * ima
struct Object * focus_object
float drw_focusmat[4][4]
float drw_corners[2][4][2]
float drw_normalmat[4][4]
float drw_tria[2][2]
float clip_end
char sensor_fit
float sensor_y
Camera_Runtime runtime
struct ListBase bg_images
float lens
float shiftx
struct CameraStereoSettings stereo
char _pad[7]
float passepartalpha
struct AnimData * adt
float dof_distance DNA_DEPRECATED
float sensor_x
short flag
float clip_start
float shifty
float drawsize
struct CameraDOFSettings dof
struct Ipo *ipo DNA_DEPRECATED
float ortho_scale
Definition: DNA_ID.h:368