diff options
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_deform.h | 1 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/deform.c | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_deform.h b/source/blender/blenkernel/BKE_deform.h index 07bdbc1009b..a43a243106d 100644 --- a/source/blender/blenkernel/BKE_deform.h +++ b/source/blender/blenkernel/BKE_deform.h @@ -40,6 +40,7 @@ struct ListBase; struct bDeformGroup; struct MDeformVert; +struct bDeformGroup *BKE_defgroup_new(struct Object *ob, const char *name); void defgroup_copy_list(struct ListBase *lb1, struct ListBase *lb2); struct bDeformGroup *defgroup_duplicate(struct bDeformGroup *ingroup); struct bDeformGroup *defgroup_find_name(struct Object *ob, const char *name); diff --git a/source/blender/blenkernel/intern/deform.c b/source/blender/blenkernel/intern/deform.c index b82e89d1af6..a492b227815 100644 --- a/source/blender/blenkernel/intern/deform.c +++ b/source/blender/blenkernel/intern/deform.c @@ -51,6 +51,22 @@ #include "BKE_deform.h" /* own include */ +bDeformGroup *BKE_defgroup_new(Object *ob, const char *name) +{ + bDeformGroup *defgroup; + + BLI_assert(OB_TYPE_SUPPORT_VGROUP(ob->type)); + + defgroup = MEM_callocN(sizeof(bDeformGroup), __func__); + + BLI_strncpy(defgroup->name, name, sizeof(defgroup->name)); + + BLI_addtail(&ob->defbase, defgroup); + defgroup_unique_name(defgroup, ob); + + return defgroup; +} + void defgroup_copy_list(ListBase *outbase, ListBase *inbase) { bDeformGroup *defgroup, *defgroupn; |