diff options
Diffstat (limited to 'source/blender/modifiers/intern/MOD_triangulate.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_triangulate.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_triangulate.c b/source/blender/modifiers/intern/MOD_triangulate.c index 87ca067fba9..5a07c4e5e64 100644 --- a/source/blender/modifiers/intern/MOD_triangulate.c +++ b/source/blender/modifiers/intern/MOD_triangulate.c @@ -18,12 +18,15 @@ * \ingroup modifiers */ +#include <string.h> + #include "MEM_guardedalloc.h" #include "BLI_utildefines.h" #include "BLT_translation.h" +#include "DNA_defaults.h" #include "DNA_mesh_types.h" #include "DNA_meshdata_types.h" #include "DNA_object_types.h" @@ -107,11 +110,12 @@ static void initData(ModifierData *md) { TriangulateModifierData *tmd = (TriangulateModifierData *)md; + BLI_assert(MEMCMP_STRUCT_AFTER_IS_ZERO(tmd, modifier)); + + MEMCPY_STRUCT_AFTER(tmd, DNA_struct_default_get(TriangulateModifierData), modifier); + /* Enable in editmode by default */ md->mode |= eModifierMode_Editmode; - tmd->quad_method = MOD_TRIANGULATE_QUAD_SHORTEDGE; - tmd->ngon_method = MOD_TRIANGULATE_NGON_BEAUTY; - tmd->min_vertices = 4; } static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *UNUSED(ctx), Mesh *mesh) @@ -152,10 +156,12 @@ ModifierTypeInfo modifierType_Triangulate = { /* name */ "Triangulate", /* structName */ "TriangulateModifierData", /* structSize */ sizeof(TriangulateModifierData), + /* srna */ &RNA_TriangulateModifier, /* type */ eModifierTypeType_Constructive, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_AcceptsCVs, + /* icon */ ICON_MOD_TRIANGULATE, /* copyData */ BKE_modifier_copydata_generic, @@ -175,7 +181,6 @@ ModifierTypeInfo modifierType_Triangulate = { /* updateDepsgraph */ NULL, /* dependsOnTime */ NULL, /* dependsOnNormals */ NULL, - /* foreachObjectLink */ NULL, /* foreachIDLink */ NULL, /* foreachTexLink */ NULL, /* freeRuntimeData */ NULL, |