Cleanup: commas at the end of enums
[blender.git] / source / blender / blenkernel / intern / pbvh_intern.h
index 19d3b31bd3172c40baec47d7f30b67eebb0fb59c..1f85b4b227bcca89dd52bf448e909219554bcbd4 100644 (file)
@@ -112,7 +112,7 @@ struct PBVHNode {
 };
 
 typedef enum {
-       PBVH_DYNTOPO_SMOOTH_SHADING = 1
+       PBVH_DYNTOPO_SMOOTH_SHADING = 1,
 } PBVHFlags;
 
 typedef struct PBVHBMeshLog PBVHBMeshLog;
@@ -162,6 +162,7 @@ struct PBVH {
        bool deformed;
 
        bool show_diffuse_color;
+       bool show_mask;
 
        /* Dynamic topology */
        BMesh *bm;
@@ -183,11 +184,21 @@ void pbvh_grow_nodes(PBVH *bvh, int totnode);
 bool ray_face_intersection_quad(
         const float ray_start[3], const float ray_normal[3],
         const float *t0, const float *t1, const float *t2, const float *t3,
-        float *r_dist);
+        float *depth);
 bool ray_face_intersection_tri(
         const float ray_start[3], const float ray_normal[3],
         const float *t0, const float *t1, const float *t2,
-        float *r_dist);
+        float *depth);
+
+bool ray_face_nearest_quad(
+        const float ray_start[3], const float ray_normal[3],
+        const float *t0, const float *t1, const float *t2, const float *t3,
+        float *r_depth, float *r_dist_sq);
+bool ray_face_nearest_tri(
+        const float ray_start[3], const float ray_normal[3],
+        const float *t0, const float *t1, const float *t2,
+        float *r_depth, float *r_dist_sq);
+
 void pbvh_update_BB_redraw(PBVH *bvh, PBVHNode **nodes, int totnode, int flag);
 
 /* pbvh_bmesh.c */
@@ -195,6 +206,10 @@ bool pbvh_bmesh_node_raycast(
         PBVHNode *node, const float ray_start[3],
         const float ray_normal[3], float *dist,
         bool use_original);
+bool pbvh_bmesh_node_nearest_to_ray(
+        PBVHNode *node, const float ray_start[3],
+        const float ray_normal[3], float *depth, float *dist_sq,
+        bool use_original);
 
 void pbvh_bmesh_normals_update(PBVHNode **nodes, int totnode);