Cover DNA_gpencil_types.h with C++ structure methods
Ref T96847 Maniphest Tasks: T96847 Differential Revision: https://developer.blender.org/D14487
This commit is contained in:
parent
1f6c2507f8
commit
9a0e1950ea
Notes:
blender-bot
2023-02-14 06:21:59 +01:00
Referenced by issue #96847, Task force: Mark non-trivial DNA as such for C++
|
@ -1302,7 +1302,7 @@ void BKE_gpencil_stroke_smooth(bGPDstroke *gps,
|
|||
}
|
||||
|
||||
/* Make a copy of the point data to avoid directionality of the smooth operation. */
|
||||
bGPDstroke gps_old = *gps;
|
||||
bGPDstroke gps_old = blender::dna::shallow_copy(*gps);
|
||||
gps_old.points = (bGPDspoint *)MEM_dupallocN(gps->points);
|
||||
|
||||
/* Smooth stroke. */
|
||||
|
@ -1930,7 +1930,7 @@ void BKE_gpencil_dissolve_points(bGPdata *gpd, bGPDframe *gpf, bGPDstroke *gps,
|
|||
(gps->dvert != nullptr) ? dvert = gps->dvert : nullptr;
|
||||
for (i = 0, pt = gps->points; i < gps->totpoints; i++, pt++) {
|
||||
if ((pt->flag & tag) == 0) {
|
||||
*npt = *pt;
|
||||
*npt = blender::dna::shallow_copy(*pt);
|
||||
npt++;
|
||||
|
||||
if (gps->dvert != nullptr) {
|
||||
|
@ -3471,13 +3471,13 @@ void BKE_gpencil_stroke_join(bGPDstroke *gps_a,
|
|||
/* don't visibly link the first and last points? */
|
||||
if (leave_gaps) {
|
||||
/* 1st: add one tail point to start invisible area */
|
||||
point = gps_a->points[gps_a->totpoints - 1];
|
||||
point = blender::dna::shallow_copy(gps_a->points[gps_a->totpoints - 1]);
|
||||
deltatime = point.time;
|
||||
|
||||
gpencil_stroke_copy_point(gps_a, nullptr, &point, delta, 0.0f, 0.0f, 0.0f);
|
||||
|
||||
/* 2nd: add one head point to finish invisible area */
|
||||
point = gps_b->points[0];
|
||||
point = blender::dna::shallow_copy(gps_b->points[0]);
|
||||
gpencil_stroke_copy_point(gps_a, nullptr, &point, delta, 0.0f, 0.0f, deltatime);
|
||||
}
|
||||
|
||||
|
|
|
@ -48,6 +48,8 @@ typedef struct bGPDcontrolpoint {
|
|||
} bGPDcontrolpoint;
|
||||
|
||||
typedef struct bGPDspoint_Runtime {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDspoint_Runtime)
|
||||
|
||||
/** Original point (used to dereference evaluated data) */
|
||||
struct bGPDspoint *pt_orig;
|
||||
/** Original index array position */
|
||||
|
@ -61,6 +63,8 @@ typedef struct bGPDspoint_Runtime {
|
|||
* This assumes that the bottom-left corner is (0,0)
|
||||
*/
|
||||
typedef struct bGPDspoint {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDspoint)
|
||||
|
||||
/** Co-ordinates of point (usually 2d, but can be 3d as well). */
|
||||
float x, y, z;
|
||||
/** Pressure of input device (from 0 to 1) at this point. */
|
||||
|
@ -120,6 +124,8 @@ typedef struct bGPDtriangle {
|
|||
|
||||
/* color of palettes */
|
||||
typedef struct bGPDpalettecolor {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDpalettecolor)
|
||||
|
||||
struct bGPDpalettecolor *next, *prev;
|
||||
/** Color name. Must be unique. */
|
||||
char info[64];
|
||||
|
@ -148,6 +154,8 @@ typedef enum eGPDpalettecolor_Flag {
|
|||
|
||||
/* palette of colors */
|
||||
typedef struct bGPDpalette {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDpalette)
|
||||
|
||||
struct bGPDpalette *next, *prev;
|
||||
|
||||
/** Pointer to individual colors. */
|
||||
|
@ -203,6 +211,8 @@ typedef enum eGPDcurve_point_Flag {
|
|||
|
||||
/* Curve for Bezier Editing. */
|
||||
typedef struct bGPDcurve {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDcurve)
|
||||
|
||||
/** Array of BezTriple. */
|
||||
bGPDcurve_point *curve_points;
|
||||
/** Total number of curve points. */
|
||||
|
@ -225,6 +235,8 @@ typedef enum bGPDcurve_Flag {
|
|||
|
||||
/* Runtime temp data for bGPDstroke */
|
||||
typedef struct bGPDstroke_Runtime {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDstroke_Runtime)
|
||||
|
||||
/** temporary layer name only used during copy/paste to put the stroke in the original layer */
|
||||
char tmp_layerinfo[128];
|
||||
|
||||
|
@ -248,6 +260,8 @@ typedef struct bGPDstroke_Runtime {
|
|||
* drawn by the user in one 'mouse-down'->'mouse-up' operation
|
||||
*/
|
||||
typedef struct bGPDstroke {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDstroke)
|
||||
|
||||
struct bGPDstroke *next, *prev;
|
||||
|
||||
/** Array of data-points for stroke. */
|
||||
|
@ -369,6 +383,8 @@ typedef enum eGPDstroke_Arrowstyle {
|
|||
|
||||
/* Runtime temp data for bGPDframe */
|
||||
typedef struct bGPDframe_Runtime {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDframe_Runtime)
|
||||
|
||||
/** Index of this frame in the listbase of frames. */
|
||||
int frameid;
|
||||
/** Onion offset from active frame. 0 if not onion. INT_MAX to bypass frame. */
|
||||
|
@ -382,6 +398,8 @@ typedef struct bGPDframe_Runtime {
|
|||
* -> Acts as storage for the 'image' formed by strokes
|
||||
*/
|
||||
typedef struct bGPDframe {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDframe)
|
||||
|
||||
struct bGPDframe *next, *prev;
|
||||
|
||||
/** List of the simplified 'strokes' that make up the frame's data. */
|
||||
|
@ -416,6 +434,8 @@ typedef enum eGPDframe_Flag {
|
|||
|
||||
/* List of masking layers. */
|
||||
typedef struct bGPDlayer_Mask {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDlayer_Mask)
|
||||
|
||||
struct bGPDlayer_Mask *next, *prev;
|
||||
char name[128];
|
||||
short flag;
|
||||
|
@ -434,6 +454,8 @@ typedef enum ebGPDlayer_Mask_Flag {
|
|||
|
||||
/* Runtime temp data for bGPDlayer */
|
||||
typedef struct bGPDlayer_Runtime {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDlayer_Runtime)
|
||||
|
||||
/** Id for dynamic icon used to show annotation color preview for layer. */
|
||||
int icon_id;
|
||||
char _pad[4];
|
||||
|
@ -443,6 +465,8 @@ typedef struct bGPDlayer_Runtime {
|
|||
|
||||
/* Grease-Pencil Annotations - 'Layer' */
|
||||
typedef struct bGPDlayer {
|
||||
DNA_DEFINE_CXX_METHODS(bGPDlayer)
|
||||
|
||||
struct bGPDlayer *next, *prev;
|
||||
|
||||
/** List of annotations to display for frames (bGPDframe list). */
|
||||
|
@ -580,6 +604,8 @@ typedef enum eGPLayerBlendModes {
|
|||
|
||||
/* Runtime temp data for bGPdata */
|
||||
typedef struct bGPdata_Runtime {
|
||||
DNA_DEFINE_CXX_METHODS(bGPdata_Runtime)
|
||||
|
||||
/** Stroke buffer. */
|
||||
void *sbuffer;
|
||||
/** Temp batches cleared after drawing. */
|
||||
|
@ -642,6 +668,8 @@ typedef struct bGPgrid {
|
|||
|
||||
/* Grease-Pencil Annotations - 'DataBlock' */
|
||||
typedef struct bGPdata {
|
||||
DNA_DEFINE_CXX_METHODS(bGPdata)
|
||||
|
||||
/** Grease Pencil data is a data-block. */
|
||||
ID id;
|
||||
/** Animation data - for animating draw settings. */
|
||||
|
|
Loading…
Reference in New Issue