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/blenkernel/BKE_editmesh_bvh.h')
-rw-r--r--source/blender/blenkernel/BKE_editmesh_bvh.h75
1 files changed, 50 insertions, 25 deletions
diff --git a/source/blender/blenkernel/BKE_editmesh_bvh.h b/source/blender/blenkernel/BKE_editmesh_bvh.h
index 420250ab25c..6eb8260513f 100644
--- a/source/blender/blenkernel/BKE_editmesh_bvh.h
+++ b/source/blender/blenkernel/BKE_editmesh_bvh.h
@@ -36,39 +36,64 @@ typedef struct BMBVHTree BMBVHTree;
typedef bool (*BMBVHTree_FaceFilter)(struct BMFace *f, void *userdata);
-BMBVHTree *BKE_bmbvh_new_from_editmesh(
- struct BMEditMesh *em, int flag,
- const float (*cos_cage)[3], const bool cos_cage_free);
-BMBVHTree *BKE_bmbvh_new_ex(
- struct BMesh *bm, struct BMLoop *(*looptris)[3], int looptris_tot, int flag,
- const float (*cos_cage)[3], const bool cos_cage_free,
- bool (*test_fn)(struct BMFace *, void *user_data), void *user_data);
-BMBVHTree *BKE_bmbvh_new(
- struct BMesh *bm, struct BMLoop *(*looptris)[3], int looptris_tot, int flag,
- const float (*cos_cage)[3], const bool cos_cage_free);
-void BKE_bmbvh_free(BMBVHTree *tree);
+BMBVHTree *BKE_bmbvh_new_from_editmesh(struct BMEditMesh *em,
+ int flag,
+ const float (*cos_cage)[3],
+ const bool cos_cage_free);
+BMBVHTree *BKE_bmbvh_new_ex(struct BMesh *bm,
+ struct BMLoop *(*looptris)[3],
+ int looptris_tot,
+ int flag,
+ const float (*cos_cage)[3],
+ const bool cos_cage_free,
+ bool (*test_fn)(struct BMFace *, void *user_data),
+ void *user_data);
+BMBVHTree *BKE_bmbvh_new(struct BMesh *bm,
+ struct BMLoop *(*looptris)[3],
+ int looptris_tot,
+ int flag,
+ const 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], const float radius,
- float *r_dist, float r_hitout[3], float r_cagehit[3]);
+struct BMFace *BKE_bmbvh_ray_cast(BMBVHTree *tree,
+ const float co[3],
+ const float dir[3],
+ const float radius,
+ float *r_dist,
+ float r_hitout[3],
+ float r_cagehit[3]);
-struct BMFace *BKE_bmbvh_ray_cast_filter(
- BMBVHTree *tree, const float co[3], const float dir[3], const float radius,
- float *r_dist, float r_hitout[3], float r_cagehit[3],
- BMBVHTree_FaceFilter filter, void *filter_cb);
+struct BMFace *BKE_bmbvh_ray_cast_filter(BMBVHTree *tree,
+ const float co[3],
+ const float dir[3],
+ const float radius,
+ float *r_dist,
+ float r_hitout[3],
+ float r_cagehit[3],
+ BMBVHTree_FaceFilter filter,
+ void *filter_cb);
/* find a vert closest to co in a sphere of radius dist_max */
-struct BMVert *BKE_bmbvh_find_vert_closest(BMBVHTree *tree, const float co[3], const float dist_max);
-struct BMFace *BKE_bmbvh_find_face_closest(BMBVHTree *tree, const float co[3], const float dist_max);
+struct BMVert *BKE_bmbvh_find_vert_closest(BMBVHTree *tree,
+ const float co[3],
+ const float dist_max);
+struct BMFace *BKE_bmbvh_find_face_closest(BMBVHTree *tree,
+ const float co[3],
+ const float dist_max);
-struct BVHTreeOverlap *BKE_bmbvh_overlap(const BMBVHTree *bmtree_a, const BMBVHTree *bmtree_b, unsigned int *r_overlap_tot);
+struct BVHTreeOverlap *BKE_bmbvh_overlap(const BMBVHTree *bmtree_a,
+ const BMBVHTree *bmtree_b,
+ unsigned int *r_overlap_tot);
/* BKE_bmbvh_new flag parameter */
enum {
- 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 */
+ 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__ */
+#endif /* __BKE_EDITMESH_BVH_H__ */