diff options
author | Campbell Barton <ideasman42@gmail.com> | 2021-12-10 13:42:06 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2021-12-10 13:42:06 +0300 |
commit | bd2b48e98d77c8437b8b0c77582084a3c984e45c (patch) | |
tree | 0d9eeff42d23943f9e01d2f6dbdb158944aa41d8 /source/blender/bmesh/intern/bmesh_query.h | |
parent | 63f8d18c0fbc8bce12c65eb6bd49ec28eef703e4 (diff) |
Cleanup: move public doc-strings into headers for various API's
Some doc-strings were skipped because of blank-lines between
the doc-string and the symbol and needed to be moved manually.
- Added space below non doc-string comments to make it clear
these aren't comments for the symbols directly below them.
- Use doxy sections for some headers.
Ref T92709
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_query.h')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_query.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/source/blender/bmesh/intern/bmesh_query.h b/source/blender/bmesh/intern/bmesh_query.h index 9c4dc169589..261ecefdd47 100644 --- a/source/blender/bmesh/intern/bmesh_query.h +++ b/source/blender/bmesh/intern/bmesh_query.h @@ -173,6 +173,30 @@ BMLoop *BM_loop_other_vert_loop_by_edge(BMLoop *l, BMEdge *e) ATTR_WARN_UNUSED_R * </pre> */ BMLoop *BM_loop_other_vert_loop(BMLoop *l, BMVert *v) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); +/** + * Utility function to step around a fan of loops, + * using an edge to mark the previous side. + * + * \note all edges must be manifold, + * once a non manifold edge is hit, return NULL. + * + * \code{.unparsed} + * ,.,-->| + * _,-' | + * ,' | (notice how 'e_step' + * / | and 'l' define the + * / | direction the arrow + * | return | points). + * | loop --> | + * ---------------------+--------------------- + * ^ l --> | + * | | + * assign e_step | + * | + * begin e_step ----> | + * | + * \endcode + */ BMLoop *BM_vert_step_fan_loop(BMLoop *l, BMEdge **e_step) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); /** @@ -470,6 +494,18 @@ float BM_edge_calc_face_angle_with_imat3(const BMEdge *e, const float imat3[3][3]) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); float BM_edge_calc_face_angle_signed(const BMEdge *e) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); +/** + * \brief BMESH EDGE/FACE TANGENT + * + * Calculate the tangent at this loop corner or fallback to the face normal on straight lines. + * This vector always points inward into the face. + * + * \brief BM_edge_calc_face_tangent + * \param e: + * \param e_loop: The loop to calculate the tangent at, + * used to get the face and winding direction. + * \param r_tangent: The loop corner tangent to set + */ void BM_edge_calc_face_tangent(const BMEdge *e, const BMLoop *e_loop, float r_tangent[3]) ATTR_NONNULL(); float BM_vert_calc_edge_angle(const BMVert *v) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(); |