Blender V4.3
MOD_grease_pencil_envelope.cc File Reference
#include "DNA_defaults.h"
#include "DNA_modifier_types.h"
#include "BLI_math_geom.h"
#include "BKE_curves.hh"
#include "BKE_geometry_set.hh"
#include "BKE_grease_pencil.hh"
#include "BKE_instances.hh"
#include "BKE_lib_query.hh"
#include "BKE_material.h"
#include "BKE_modifier.hh"
#include "BKE_screen.hh"
#include "BLO_read_write.hh"
#include "GEO_realize_instances.hh"
#include "UI_interface.hh"
#include "UI_resources.hh"
#include "BLT_translation.hh"
#include "WM_types.hh"
#include "RNA_access.hh"
#include "RNA_prototypes.hh"
#include "MOD_grease_pencil_util.hh"
#include "MOD_modifiertypes.hh"
#include "MOD_ui_common.hh"

Go to the source code of this file.

Classes

struct  blender::EnvelopeInfo
 

Namespaces

namespace  blender
 

Functions

static void blender::init_data (ModifierData *md)
 
static void blender::copy_data (const ModifierData *md, ModifierData *target, const int flag)
 
static void blender::free_data (ModifierData *md)
 
static void blender::foreach_ID_link (ModifierData *md, Object *ob, IDWalkFunc walk, void *user_data)
 
static float3 blender::calculate_plane (const float3 &center, const float3 &prev, const float3 &next)
 
static std::optional< float3blender::find_plane_intersection (const float3 &plane_point, const float3 &plane_normal, const float3 &from, const float3 &to)
 
static float blender::calc_min_radius_v3v3 (const float3 &p1, const float3 &p2, const float3 &dir)
 
static float blender::calc_radius_limit (const Span< float3 > positions, const bool is_cyclic, const int spread, const int point, const float3 &direction)
 
static bool blender::find_envelope (const Span< float3 > positions, const bool is_cyclic, const int spread, const int point, float3 &r_center, float &r_radius)
 
static void blender::deform_drawing_as_envelope (const GreasePencilEnvelopeModifierData &emd, bke::greasepencil::Drawing &drawing, const IndexMask &curves_mask)
 
static EnvelopeInfo blender::get_envelope_info (const GreasePencilEnvelopeModifierData &emd, const ModifierEvalContext &ctx)
 
static int blender::curve_spread (const EnvelopeInfo &info, const int point_num, const bool is_cyclic_curve)
 
static int blender::curve_envelope_strokes_num (const EnvelopeInfo &info, const int point_num, const bool is_cyclic_curve)
 
static void blender::create_envelope_stroke_for_point (const IndexRange src_curve_points, const bool src_curve_cyclic, const int point, const int spread, const int base_length, const MutableSpan< int > point_src_indices)
 
static void blender::create_envelope_strokes_for_curve (const EnvelopeInfo &info, const int src_curve_index, const IndexRange src_curve_points, const bool src_curve_cyclic, const VArray< int > &src_material_indices, const IndexRange dst_points, const MutableSpan< int > curve_offsets, const MutableSpan< int > material_indices, const MutableSpan< int > curve_src_indices, const MutableSpan< int > point_src_indices)
 
static void blender::create_envelope_strokes (const EnvelopeInfo &info, bke::greasepencil::Drawing &drawing, const IndexMask &curves_mask, const bool keep_original)
 
static void blender::modify_drawing (const GreasePencilEnvelopeModifierData &emd, const ModifierEvalContext &ctx, bke::greasepencil::Drawing &drawing)
 
static void blender::modify_geometry_set (ModifierData *md, const ModifierEvalContext *ctx, bke::GeometrySet *geometry_set)
 
static void blender::panel_draw (const bContext *C, Panel *panel)
 
static void blender::panel_register (ARegionType *region_type)
 
static void blender::blend_write (BlendWriter *writer, const ID *, const ModifierData *md)
 
static void blender::blend_read (BlendDataReader *reader, ModifierData *md)
 

Variables

static const float blender::unlimited_radius = FLT_MAX
 
ModifierTypeInfo modifierType_GreasePencilEnvelope
 

Variable Documentation

◆ modifierType_GreasePencilEnvelope

ModifierTypeInfo modifierType_GreasePencilEnvelope

Definition at line 737 of file MOD_grease_pencil_envelope.cc.