Blender  V3.3
Classes | Typedefs | Functions | Variables
MOD_gpencilarray.c File Reference
#include <stdio.h>
#include "MEM_guardedalloc.h"
#include "BLI_hash.h"
#include "BLI_listbase.h"
#include "BLI_math_vector.h"
#include "BLI_rand.h"
#include "BLI_utildefines.h"
#include "BLT_translation.h"
#include "DNA_defaults.h"
#include "DNA_gpencil_modifier_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "BKE_context.h"
#include "BKE_gpencil.h"
#include "BKE_gpencil_geom.h"
#include "BKE_gpencil_modifier.h"
#include "BKE_lib_query.h"
#include "BKE_main.h"
#include "BKE_modifier.h"
#include "BKE_object.h"
#include "BKE_screen.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "RNA_access.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "DEG_depsgraph_query.h"
#include "MOD_gpencil_modifiertypes.h"
#include "MOD_gpencil_ui_common.h"
#include "MOD_gpencil_util.h"

Go to the source code of this file.

Classes

struct  tmpStrokes
 

Typedefs

typedef struct tmpStrokes tmpStrokes
 

Functions

static void initData (GpencilModifierData *md)
 
static void copyData (const GpencilModifierData *md, GpencilModifierData *target)
 
static void BKE_gpencil_instance_modifier_instance_tfm (Object *ob, ArrayGpencilModifierData *mmd, const int elem_idx, float r_mat[4][4], float r_offset[4][4])
 
static bool gpencil_data_selected_minmax (ArrayGpencilModifierData *mmd, Object *ob, float r_min[3], float r_max[3])
 
static void generate_geometry (GpencilModifierData *md, Depsgraph *depsgraph, Scene *scene, Object *ob)
 
static void bakeModifier (Main *UNUSED(bmain), Depsgraph *depsgraph, GpencilModifierData *md, Object *ob)
 
static void generateStrokes (GpencilModifierData *md, Depsgraph *depsgraph, Object *ob)
 
static void updateDepsgraph (GpencilModifierData *md, const ModifierUpdateDepsgraphContext *ctx, const int UNUSED(mode))
 
static void foreachIDLink (GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
 
static void panel_draw (const bContext *UNUSED(C), Panel *panel)
 
static void relative_offset_header_draw (const bContext *UNUSED(C), Panel *panel)
 
static void relative_offset_draw (const bContext *UNUSED(C), Panel *panel)
 
static void constant_offset_header_draw (const bContext *UNUSED(C), Panel *panel)
 
static void constant_offset_draw (const bContext *UNUSED(C), Panel *panel)
 
static void object_offset_header_draw (const bContext *UNUSED(C), Panel *panel)
 
static void object_offset_draw (const bContext *UNUSED(C), Panel *panel)
 
static void random_panel_draw (const bContext *UNUSED(C), Panel *panel)
 
static void mask_panel_draw (const bContext *UNUSED(C), Panel *panel)
 
static void panelRegister (ARegionType *region_type)
 

Variables

GpencilModifierTypeInfo modifierType_Gpencil_Array
 

Typedef Documentation

◆ tmpStrokes

typedef struct tmpStrokes tmpStrokes

Function Documentation

◆ bakeModifier()

static void bakeModifier ( Main UNUSEDbmain,
Depsgraph depsgraph,
GpencilModifierData md,
Object ob 
)
static

Definition at line 319 of file MOD_gpencilarray.c.

References DEG_get_evaluated_scene(), depsgraph, generate_geometry(), and scene.

◆ BKE_gpencil_instance_modifier_instance_tfm()

static void BKE_gpencil_instance_modifier_instance_tfm ( Object ob,
ArrayGpencilModifierData mmd,
const int  elem_idx,
float  r_mat[4][4],
float  r_offset[4][4] 
)
static

◆ constant_offset_draw()

static void constant_offset_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ constant_offset_header_draw()

static void constant_offset_header_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ copyData()

static void copyData ( const GpencilModifierData md,
GpencilModifierData target 
)
static

Definition at line 68 of file MOD_gpencilarray.c.

References BKE_gpencil_modifier_copydata_generic().

◆ foreachIDLink()

static void foreachIDLink ( GpencilModifierData md,
Object ob,
IDWalkFunc  walk,
void userData 
)
static

◆ generate_geometry()

static void generate_geometry ( GpencilModifierData md,
Depsgraph depsgraph,
Scene scene,
Object ob 
)
static

Definition at line 156 of file MOD_gpencilarray.c.

References Object::data, NULL, and size().

Referenced by bakeModifier(), and generateStrokes().

◆ generateStrokes()

static void generateStrokes ( GpencilModifierData md,
Depsgraph depsgraph,
Object ob 
)
static

Definition at line 331 of file MOD_gpencilarray.c.

References DEG_get_evaluated_scene(), depsgraph, generate_geometry(), and scene.

◆ gpencil_data_selected_minmax()

static bool gpencil_data_selected_minmax ( ArrayGpencilModifierData mmd,
Object ob,
float  r_min[3],
float  r_max[3] 
)
static

◆ initData()

static void initData ( GpencilModifierData md)
static

◆ mask_panel_draw()

static void mask_panel_draw ( const bContext UNUSEDC,
Panel panel 
)
static

Definition at line 458 of file MOD_gpencilarray.c.

References gpencil_modifier_masking_panel_draw().

Referenced by panelRegister().

◆ object_offset_draw()

static void object_offset_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ object_offset_header_draw()

static void object_offset_header_draw ( const bContext UNUSEDC,
Panel panel 
)
static

Object offset in a subpanel for consistency with the other offset types.

Definition at line 420 of file MOD_gpencilarray.c.

References gpencil_modifier_panel_get_property_pointers(), Panel::layout, NULL, ptr, and uiItemR().

Referenced by panelRegister().

◆ panel_draw()

static void panel_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ panelRegister()

static void panelRegister ( ARegionType region_type)
static

◆ random_panel_draw()

static void random_panel_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ relative_offset_draw()

static void relative_offset_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ relative_offset_header_draw()

static void relative_offset_header_draw ( const bContext UNUSEDC,
Panel panel 
)
static

◆ updateDepsgraph()

static void updateDepsgraph ( GpencilModifierData md,
const ModifierUpdateDepsgraphContext ctx,
const int   UNUSEDmode 
)
static

Variable Documentation

◆ modifierType_Gpencil_Array

GpencilModifierTypeInfo modifierType_Gpencil_Array
Initial value:
= {
N_("Array"),
"ArrayGpencilModifierData",
}
@ eGpencilModifierTypeFlag_SupportsEditmode
@ eGpencilModifierTypeType_Gpencil
struct ArrayGpencilModifierData ArrayGpencilModifierData
static void updateDepsgraph(GpencilModifierData *md, const ModifierUpdateDepsgraphContext *ctx, const int UNUSED(mode))
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
static void bakeModifier(Main *UNUSED(bmain), Depsgraph *depsgraph, GpencilModifierData *md, Object *ob)
static void copyData(const GpencilModifierData *md, GpencilModifierData *target)
static void panelRegister(ARegionType *region_type)
static void initData(GpencilModifierData *md)
static void generateStrokes(GpencilModifierData *md, Depsgraph *depsgraph, Object *ob)
#define N_(msgid)

Definition at line 487 of file MOD_gpencilarray.c.