diff options
author | Gaia Clary <gaia.clary@machinimatrix.org> | 2012-06-13 01:23:51 +0400 |
---|---|---|
committer | Gaia Clary <gaia.clary@machinimatrix.org> | 2012-06-13 01:23:51 +0400 |
commit | 92d948307549ce1d69ec4e41e42b442360b9bade (patch) | |
tree | 7beceda365db381b424cdaa379a21fdd53ca43c2 /source/blender/blenkernel/BKE_object.h | |
parent | aace651e51cfaa725847ef1345418ec6a6e42b6e (diff) |
patch #31794 Added new function BKE_object_relational_superset()
Diffstat (limited to 'source/blender/blenkernel/BKE_object.h')
-rw-r--r-- | source/blender/blenkernel/BKE_object.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_object.h b/source/blender/blenkernel/BKE_object.h index 890fc40c284..29979f62d60 100644 --- a/source/blender/blenkernel/BKE_object.h +++ b/source/blender/blenkernel/BKE_object.h @@ -158,6 +158,26 @@ void BKE_object_relink(struct Object *ob); struct MovieClip *BKE_object_movieclip_get(struct Scene *scene, struct Object *ob, int use_default); +/* this function returns a superset of the scenes selection based on relationships */ + +typedef enum eObRelationTypes { + OB_REL_NONE = 0, /* just the selection as is */ + OB_REL_PARENT = (1<<0), /* immediate parent */ + OB_REL_PARENT_RECURSIVE = (1<<1), /* parents up to root of selection tree*/ + OB_REL_CHILDREN = (1<<2), /* immediate children */ + OB_REL_CHILDREN_RECURSIVE = (1<<3), /* All children */ + OB_REL_MOD_ARMATURE = (1<<4), /* Armatures related to the selected objects */ + OB_REL_SCENE_CAMERA = (1<<5), /* you might want the scene camera too even if unselected? */ +} eObRelationTypes; + +typedef enum eObjectSet { + OB_SET_SELECTED, /* Selected Objects */ + OB_SET_VISIBLE, /* Visible Objects */ + OB_SET_ALL /* All Objects */ +} eObjectSet; + +struct LinkNode *BKE_object_relational_superset(struct Scene *scene, eObjectSet objectSet, eObRelationTypes includeFilter); + #ifdef __cplusplus } #endif |