diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-04-18 05:20:04 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-04-18 05:20:04 +0400 |
commit | 9cceec40c47543eb372bd9c1331901857b5f120a (patch) | |
tree | 0eb00b227a806279d6cf81593781dfd8656d5fd3 /source/blender/blenkernel/BKE_editmesh_bvh.h | |
parent | 2fefbf24a50c3cba1fe9ba984e9cfaeec4eae4a5 (diff) |
use modified vertex coords for calculating display thickness and intersections.
internal improvement to editmesh_bvh.c
- optionally pass cage-coords as an arg, rather then calculating the coords in BKE_bmbvh_new(),
since all callers already have coords calculated.
- de-duplicate coords creation function from knife and bmbvhm, move into own generic function: BKE_editmesh_vertexCos_get()
Diffstat (limited to 'source/blender/blenkernel/BKE_editmesh_bvh.h')
-rw-r--r-- | source/blender/blenkernel/BKE_editmesh_bvh.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/source/blender/blenkernel/BKE_editmesh_bvh.h b/source/blender/blenkernel/BKE_editmesh_bvh.h index 3ae6c906a87..90520c49983 100644 --- a/source/blender/blenkernel/BKE_editmesh_bvh.h +++ b/source/blender/blenkernel/BKE_editmesh_bvh.h @@ -41,7 +41,7 @@ struct Scene; typedef struct BMBVHTree BMBVHTree; -BMBVHTree *BKE_bmbvh_new(struct BMEditMesh *em, int flag, struct Scene *scene); +BMBVHTree *BKE_bmbvh_new(struct BMEditMesh *em, int flag, float (*cos_cage)[3], const bool cos_cage_free); void BKE_bmbvh_free(BMBVHTree *tree); struct BVHTree *BKE_bmbvh_tree_get(BMBVHTree *tree); struct BMFace *BKE_bmbvh_ray_cast(BMBVHTree *tree, const float co[3], const float dir[3], @@ -54,10 +54,9 @@ struct BMVert *BKE_bmbvh_find_vert_closest(BMBVHTree *tree, const float co[3], /* BKE_bmbvh_new flag parameter */ enum { - BMBVH_USE_CAGE = 1, /* project geometry onto modifier cage */ - BMBVH_RETURN_ORIG = 2, /* use with BMBVH_USE_CAGE, returns hits in relation to original geometry */ - BMBVH_RESPECT_SELECT = 4, /* restrict to hidden geometry (overrides BMBVH_RESPECT_HIDDEN) */ - BMBVH_RESPECT_HIDDEN = 8 /* omit hidden geometry */ + BMBVH_RETURN_ORIG = (1 << 0), /* use with 'cos_cage', returns hits in relation to original geometry */ + BMBVH_RESPECT_SELECT = (1 << 1), /* restrict to hidden geometry (overrides BMBVH_RESPECT_HIDDEN) */ + BMBVH_RESPECT_HIDDEN = (1 << 2) /* omit hidden geometry */ }; #endif /* __BKE_EDITMESH_BVH_H__ */ |