[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53432] trunk/blender/source/blender/bmesh /intern: Add BM_edge_calc_squared_length() query function
Nicholas Bishop
nicholasbishop at gmail.com
Sun Dec 30 19:22:22 CET 2012
Revision: 53432
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53432
Author: nicholasbishop
Date: 2012-12-30 18:22:21 +0000 (Sun, 30 Dec 2012)
Log Message:
-----------
Add BM_edge_calc_squared_length() query function
Same as BM_edge_calc_length(), but avoids square root for cases where
only comparison is needed.
Modified Paths:
--------------
trunk/blender/source/blender/bmesh/intern/bmesh_queries.c
trunk/blender/source/blender/bmesh/intern/bmesh_queries.h
Modified: trunk/blender/source/blender/bmesh/intern/bmesh_queries.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_queries.c 2012-12-30 18:20:52 UTC (rev 53431)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_queries.c 2012-12-30 18:22:21 UTC (rev 53432)
@@ -468,7 +468,7 @@
}
/**
- * Returms edge length
+ * Returns edge length
*/
float BM_edge_calc_length(BMEdge *e)
{
@@ -476,6 +476,14 @@
}
/**
+ * Returns edge length squared (for comparisons)
+ */
+float BM_edge_calc_squared_length(BMEdge *e)
+{
+ return len_squared_v3v3(e->v1->co, e->v2->co);
+}
+
+/**
* Utility function, since enough times we have an edge
* and want to access 2 connected faces.
*
Modified: trunk/blender/source/blender/bmesh/intern/bmesh_queries.h
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_queries.h 2012-12-30 18:20:52 UTC (rev 53431)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_queries.h 2012-12-30 18:22:21 UTC (rev 53432)
@@ -37,6 +37,7 @@
int BM_verts_in_edge(BMVert *v1, BMVert *v2, BMEdge *e);
float BM_edge_calc_length(BMEdge *e);
+float BM_edge_calc_squared_length(BMEdge *e);
int BM_edge_face_pair(BMEdge *e, BMFace **r_fa, BMFace **r_fb);
int BM_edge_loop_pair(BMEdge *e, BMLoop **r_la, BMLoop **r_lb);
BMVert *BM_edge_other_vert(BMEdge *e, BMVert *v);
More information about the Bf-blender-cvs
mailing list