Blender  V3.3
Functions | Variables
MOD_gpencilenvelope.c File Reference
#include <stdio.h>
#include "BLI_listbase.h"
#include "BLI_math_geom.h"
#include "BLI_math_vector.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_meshdata_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "BKE_context.h"
#include "BKE_deform.h"
#include "BKE_gpencil.h"
#include "BKE_gpencil_geom.h"
#include "BKE_gpencil_modifier.h"
#include "BKE_lib_query.h"
#include "BKE_modifier.h"
#include "BKE_screen.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "DEG_depsgraph_query.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "RNA_access.h"
#include "MOD_gpencil_modifiertypes.h"
#include "MOD_gpencil_ui_common.h"
#include "MOD_gpencil_util.h"
#include "MEM_guardedalloc.h"

Go to the source code of this file.

Functions

static void initData (GpencilModifierData *md)
 
static void copyData (const GpencilModifierData *md, GpencilModifierData *target)
 
static float calc_min_radius_v3v3 (float p1[3], float p2[3], float dir[3])
 
static float calc_radius_limit (bGPDstroke *gps, bGPDspoint *points, float dir[3], int spread, const int i)
 
static void apply_stroke_envelope (bGPDstroke *gps, int spread, const int def_nr, const bool invert_vg, const float thickness, const float pixfactor)
 
static void deformStroke (GpencilModifierData *md, Depsgraph *UNUSED(depsgraph), Object *ob, bGPDlayer *gpl, bGPDframe *UNUSED(gpf), bGPDstroke *gps)
 
static void add_stroke (Object *ob, bGPDstroke *gps, const int point_index, const int connection_index, const int size2, const int size1, const int mat_nr, const float thickness, const float strength, ListBase *results)
 
static void add_stroke_cyclic (Object *ob, bGPDstroke *gps, const int point_index, const int connection_index, const int size, const int mat_nr, const float thickness, const float strength, ListBase *results)
 
static void add_stroke_simple (Object *ob, bGPDstroke *gps, const int point_index, const int connection_index, const int mat_nr, const float thickness, const float strength, ListBase *results)
 
static void generate_geometry (GpencilModifierData *md, Object *ob, bGPDlayer *gpl, bGPDframe *gpf)
 
static void generateStrokes (GpencilModifierData *md, Depsgraph *depsgraph, Object *ob)
 
static void bakeModifier (struct Main *UNUSED(bmain), Depsgraph *depsgraph, GpencilModifierData *md, Object *ob)
 
static void foreachIDLink (GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
 
static void 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_Envelope
 

Function Documentation

◆ add_stroke()

static void add_stroke ( Object ob,
bGPDstroke gps,
const int  point_index,
const int  connection_index,
const int  size2,
const int  size1,
const int  mat_nr,
const float  thickness,
const float  strength,
ListBase results 
)
static

◆ add_stroke_cyclic()

static void add_stroke_cyclic ( Object ob,
bGPDstroke gps,
const int  point_index,
const int  connection_index,
const int  size,
const int  mat_nr,
const float  thickness,
const float  strength,
ListBase results 
)
static

◆ add_stroke_simple()

static void add_stroke_simple ( Object ob,
bGPDstroke gps,
const int  point_index,
const int  connection_index,
const int  mat_nr,
const float  thickness,
const float  strength,
ListBase results 
)
static

◆ apply_stroke_envelope()

static void apply_stroke_envelope ( bGPDstroke gps,
int  spread,
const int  def_nr,
const bool  invert_vg,
const float  thickness,
const float  pixfactor 
)
static

◆ bakeModifier()

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

◆ calc_min_radius_v3v3()

static float calc_min_radius_v3v3 ( float  p1[3],
float  p2[3],
float  dir[3] 
)
static

◆ calc_radius_limit()

static float calc_radius_limit ( bGPDstroke gps,
bGPDspoint points,
float  dir[3],
int  spread,
const int  i 
)
static

◆ copyData()

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

Definition at line 58 of file MOD_gpencilenvelope.c.

References BKE_gpencil_modifier_copydata_generic().

◆ deformStroke()

static void deformStroke ( GpencilModifierData md,
Depsgraph UNUSEDdepsgraph,
Object ob,
bGPDlayer gpl,
bGPDframe UNUSEDgpf,
bGPDstroke gps 
)
static

◆ foreachIDLink()

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

Definition at line 604 of file MOD_gpencilenvelope.c.

References IDWALK_CB_USER, and EnvelopeGpencilModifierData::material.

◆ generate_geometry()

static void generate_geometry ( GpencilModifierData md,
Object ob,
bGPDlayer gpl,
bGPDframe gpf 
)
static

◆ generateStrokes()

static void generateStrokes ( GpencilModifierData md,
Depsgraph depsgraph,
Object ob 
)
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 634 of file MOD_gpencilenvelope.c.

References gpencil_modifier_masking_panel_draw().

Referenced by panelRegister().

◆ panel_draw()

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

◆ panelRegister()

static void panelRegister ( ARegionType region_type)
static

Variable Documentation

◆ modifierType_Gpencil_Envelope

GpencilModifierTypeInfo modifierType_Gpencil_Envelope
Initial value:
= {
N_("Envelope"),
"EnvelopeGpencilModifierData",
}
@ eGpencilModifierTypeFlag_SupportsEditmode
@ eGpencilModifierTypeType_Gpencil
struct EnvelopeGpencilModifierData EnvelopeGpencilModifierData
static void deformStroke(GpencilModifierData *md, Depsgraph *UNUSED(depsgraph), Object *ob, bGPDlayer *gpl, bGPDframe *UNUSED(gpf), bGPDstroke *gps)
static void bakeModifier(struct Main *UNUSED(bmain), Depsgraph *depsgraph, GpencilModifierData *md, Object *ob)
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
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 647 of file MOD_gpencilenvelope.c.