Blender V2.61 - r43446
|
#include "BLI_utildefines.h"
#include "BLI_math.h"
#include "BLI_string.h"
#include "DNA_color_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_modifier_types.h"
#include "DNA_object_types.h"
#include "BKE_cdderivedmesh.h"
#include "BKE_colortools.h"
#include "BKE_deform.h"
#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_texture.h"
#include "depsgraph_private.h"
#include "MEM_guardedalloc.h"
#include "MOD_util.h"
#include "MOD_weightvg_util.h"
Go to the source code of this file.
Functions | |
static void | initData (ModifierData *md) |
static void | freeData (ModifierData *md) |
static void | copyData (ModifierData *md, ModifierData *target) |
static CustomDataMask | requiredDataMask (Object *UNUSED(ob), ModifierData *md) |
static int | dependsOnTime (ModifierData *md) |
static void | foreachObjectLink (ModifierData *md, Object *ob, void(*walk)(void *userData, Object *ob, Object **obpoin), void *userData) |
static void | foreachIDLink (ModifierData *md, Object *ob, IDWalkFunc walk, void *userData) |
static void | foreachTexLink (ModifierData *md, Object *ob, TexWalkFunc walk, void *userData) |
static void | updateDepgraph (ModifierData *md, DagForest *forest, struct Scene *UNUSED(scene), Object *UNUSED(ob), DagNode *obNode) |
static int | isDisabled (ModifierData *md, int UNUSED(useRenderParams)) |
static DerivedMesh * | applyModifier (ModifierData *md, Object *ob, DerivedMesh *derivedData, int UNUSED(useRenderParams), int UNUSED(isFinalCalc)) |
static DerivedMesh * | applyModifierEM (ModifierData *md, Object *ob, struct EditMesh *UNUSED(editData), DerivedMesh *derivedData) |
Variables | |
ModifierTypeInfo | modifierType_WeightVGEdit |
Definition in file MOD_weightvgedit.c.
static DerivedMesh* applyModifier | ( | ModifierData * | md, |
Object * | ob, | ||
DerivedMesh * | derivedData, | ||
int | UNUSEDuseRenderParams, | ||
int | UNUSEDisFinalCalc | ||
) | [static] |
Definition at line 176 of file MOD_weightvgedit.c.
References WeightVGEditModifierData::add_threshold, CD_MDEFORMVERT, WeightVGEditModifierData::cmap_curve, CustomData_duplicate_referenced_layer(), WeightVGEditModifierData::default_weight, Object::defbase, defgroup_name_index(), WeightVGEditModifierData::defgrp_name, defvert_find_index(), WeightVGEditModifierData::edit_flags, WeightVGEditModifierData::falloff_type, ListBase::first, DerivedMesh::getNumVerts, i, WeightVGEditModifierData::mask_constant, WeightVGEditModifierData::mask_defgrp_name, WeightVGEditModifierData::mask_tex_map_obj, WeightVGEditModifierData::mask_tex_mapping, WeightVGEditModifierData::mask_tex_use_channel, WeightVGEditModifierData::mask_tex_uvlayer_name, WeightVGEditModifierData::mask_texture, MEM_freeN(), MEM_mallocN(), MOD_WVG_EDIT_ADD2VG, MOD_WVG_EDIT_REMFVG, MOD_WVG_MAPPING_NONE, NULL, WeightVGEditModifierData::rem_threshold, DerivedMesh::vertData, MDeformWeight::weight, weightvg_do_map(), weightvg_do_mask(), and weightvg_update_vg().
Referenced by applyModifierEM().
static DerivedMesh* applyModifierEM | ( | ModifierData * | md, |
Object * | ob, | ||
struct EditMesh * | UNUSEDeditData, | ||
DerivedMesh * | derivedData | ||
) | [static] |
Definition at line 245 of file MOD_weightvgedit.c.
References applyModifier().
static void copyData | ( | ModifierData * | md, |
ModifierData * | target | ||
) | [static] |
Definition at line 80 of file MOD_weightvgedit.c.
References WeightVGEditModifierData::add_threshold, BLI_strncpy(), WeightVGEditModifierData::cmap_curve, curvemapping_copy(), WeightVGEditModifierData::default_weight, WeightVGEditModifierData::defgrp_name, WeightVGEditModifierData::edit_flags, WeightVGEditModifierData::falloff_type, WeightVGEditModifierData::mask_constant, WeightVGEditModifierData::mask_defgrp_name, WeightVGEditModifierData::mask_tex_map_obj, WeightVGEditModifierData::mask_tex_mapping, WeightVGEditModifierData::mask_tex_use_channel, WeightVGEditModifierData::mask_tex_uvlayer_name, WeightVGEditModifierData::mask_texture, and WeightVGEditModifierData::rem_threshold.
static int dependsOnTime | ( | ModifierData * | md | ) | [static] |
Definition at line 120 of file MOD_weightvgedit.c.
References BKE_texture_dependsOnTime(), and WeightVGEditModifierData::mask_texture.
static void foreachIDLink | ( | ModifierData * | md, |
Object * | ob, | ||
IDWalkFunc | walk, | ||
void * | userData | ||
) | [static] |
Definition at line 137 of file MOD_weightvgedit.c.
References foreachObjectLink(), and WeightVGEditModifierData::mask_texture.
static void foreachObjectLink | ( | ModifierData * | md, |
Object * | ob, | ||
void(*)(void *userData, Object *ob, Object **obpoin) | walk, | ||
void * | userData | ||
) | [static] |
Definition at line 129 of file MOD_weightvgedit.c.
References WeightVGEditModifierData::mask_tex_map_obj.
Referenced by foreachIDLink().
static void foreachTexLink | ( | ModifierData * | md, |
Object * | ob, | ||
TexWalkFunc | walk, | ||
void * | userData | ||
) | [static] |
Definition at line 146 of file MOD_weightvgedit.c.
static void freeData | ( | ModifierData * | md | ) | [static] |
Definition at line 74 of file MOD_weightvgedit.c.
References WeightVGEditModifierData::cmap_curve, and curvemapping_free().
static void initData | ( | ModifierData * | md | ) | [static] |
Definition at line 56 of file MOD_weightvgedit.c.
References WeightVGEditModifierData::add_threshold, WeightVGEditModifierData::cmap_curve, curvemapping_add(), curvemapping_initialize(), WeightVGEditModifierData::default_weight, WeightVGEditModifierData::edit_flags, WeightVGEditModifierData::falloff_type, WeightVGEditModifierData::mask_constant, WeightVGEditModifierData::mask_tex_mapping, WeightVGEditModifierData::mask_tex_use_channel, MOD_DISP_MAP_LOCAL, MOD_WVG_MAPPING_NONE, MOD_WVG_MASK_TEX_USE_INT, and WeightVGEditModifierData::rem_threshold.
static int isDisabled | ( | ModifierData * | md, |
int | UNUSEDuseRenderParams | ||
) | [static] |
Definition at line 169 of file MOD_weightvgedit.c.
References WeightVGEditModifierData::defgrp_name.
static CustomDataMask requiredDataMask | ( | Object * | UNUSEDob, |
ModifierData * | md | ||
) | [static] |
Definition at line 105 of file MOD_weightvgedit.c.
References CD_MASK_MDEFORMVERT, CD_MASK_MTFACE, WeightVGEditModifierData::mask_tex_mapping, and MOD_DISP_MAP_UV.
static void updateDepgraph | ( | ModifierData * | md, |
DagForest * | forest, | ||
struct Scene * | UNUSEDscene, | ||
Object * | UNUSEDob, | ||
DagNode * | obNode | ||
) | [static] |
Definition at line 151 of file MOD_weightvgedit.c.
References dag_add_relation(), dag_get_node(), DAG_RL_DATA_DATA, DAG_RL_OB_DATA, WeightVGEditModifierData::mask_tex_map_obj, WeightVGEditModifierData::mask_tex_mapping, MOD_DISP_MAP_GLOBAL, and MOD_DISP_MAP_OBJECT.
{ "VertexWeightEdit", "WeightVGEditModifierData", sizeof(WeightVGEditModifierData), eModifierTypeType_NonGeometrical, eModifierTypeFlag_AcceptsMesh |eModifierTypeFlag_SupportsEditmode, copyData, NULL, NULL, NULL, NULL, applyModifier, applyModifierEM, initData, requiredDataMask, freeData, isDisabled, updateDepgraph, dependsOnTime, NULL, foreachObjectLink, foreachIDLink, foreachTexLink, }
Definition at line 253 of file MOD_weightvgedit.c.