Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/modifiers/intern/MOD_cast.c')
-rw-r--r--source/blender/modifiers/intern/MOD_cast.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/source/blender/modifiers/intern/MOD_cast.c b/source/blender/modifiers/intern/MOD_cast.c
index 4f2f6d219d8..185c21af7ad 100644
--- a/source/blender/modifiers/intern/MOD_cast.c
+++ b/source/blender/modifiers/intern/MOD_cast.c
@@ -27,6 +27,7 @@
#include "BLT_translation.h"
+#include "DNA_defaults.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_object_types.h"
@@ -56,13 +57,9 @@ static void initData(ModifierData *md)
{
CastModifierData *cmd = (CastModifierData *)md;
- cmd->fac = 0.5f;
- cmd->radius = 0.0f;
- cmd->size = 0.0f;
- cmd->flag = MOD_CAST_X | MOD_CAST_Y | MOD_CAST_Z | MOD_CAST_SIZE_FROM_RADIUS;
- cmd->type = MOD_CAST_TYPE_SPHERE;
- cmd->defgrp_name[0] = '\0';
- cmd->object = NULL;
+ BLI_assert(MEMCMP_STRUCT_AFTER_IS_ZERO(cmd, modifier));
+
+ MEMCPY_STRUCT_AFTER(cmd, DNA_struct_default_get(CastModifierData), modifier);
}
static bool isDisabled(const struct Scene *UNUSED(scene),
@@ -93,11 +90,11 @@ static void requiredDataMask(Object *UNUSED(ob),
}
}
-static void foreachObjectLink(ModifierData *md, Object *ob, ObjectWalkFunc walk, void *userData)
+static void foreachIDLink(ModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
{
CastModifierData *cmd = (CastModifierData *)md;
- walk(userData, ob, &cmd->object, IDWALK_CB_NOP);
+ walk(userData, ob, (ID **)&cmd->object, IDWALK_CB_NOP);
}
static void updateDepsgraph(ModifierData *md, const ModifierUpdateDepsgraphContext *ctx)
@@ -515,7 +512,7 @@ static void deformVertsEM(ModifierData *md,
}
if (mesh && mesh->runtime.wrapper_type == ME_WRAPPER_TYPE_MDATA) {
- BLI_assert(mesh_src->totvert == numVerts);
+ BLI_assert(mesh->totvert == numVerts);
}
/* TODO(Campbell): use edit-mode data only (remove this line). */
@@ -579,9 +576,11 @@ ModifierTypeInfo modifierType_Cast = {
/* name */ "Cast",
/* structName */ "CastModifierData",
/* structSize */ sizeof(CastModifierData),
+ /* srna */ &RNA_CastModifier,
/* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode,
+ /* icon */ ICON_MOD_CAST,
/* copyData */ BKE_modifier_copydata_generic,
@@ -601,8 +600,7 @@ ModifierTypeInfo modifierType_Cast = {
/* updateDepsgraph */ updateDepsgraph,
/* dependsOnTime */ NULL,
/* dependsOnNormals */ NULL,
- /* foreachObjectLink */ foreachObjectLink,
- /* foreachIDLink */ NULL,
+ /* foreachIDLink */ foreachIDLink,
/* foreachTexLink */ NULL,
/* freeRuntimeData */ NULL,
/* panelRegister */ panelRegister,