[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50544] trunk/blender/source/blender/bmesh /intern: code cleanup: replace BM_DISK_EDGE_LINK_GET define with inline function, that checks for the vertex not matching either of the edges verts.
Campbell Barton
ideasman42 at gmail.com
Wed Sep 12 07:11:39 CEST 2012
Revision: 50544
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50544
Author: campbellbarton
Date: 2012-09-12 05:11:38 +0000 (Wed, 12 Sep 2012)
Log Message:
-----------
code cleanup: replace BM_DISK_EDGE_LINK_GET define with inline function, that checks for the vertex not matching either of the edges verts.
Modified Paths:
--------------
trunk/blender/source/blender/bmesh/intern/bmesh_private.h
trunk/blender/source/blender/bmesh/intern/bmesh_structure.c
Modified: trunk/blender/source/blender/bmesh/intern/bmesh_private.h
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_private.h 2012-09-12 04:53:49 UTC (rev 50543)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_private.h 2012-09-12 05:11:38 UTC (rev 50544)
@@ -53,12 +53,6 @@
} (void)0
#endif
-#define BM_DISK_EDGE_LINK_GET(e, v) ( \
- ((v) == ((BMEdge *)(e))->v1) ? \
- &((e)->v1_disk_link) : \
- &((e)->v2_disk_link) \
- )
-
int bmesh_radial_length(BMLoop *l);
int bmesh_disk_count(BMVert *v);
Modified: trunk/blender/source/blender/bmesh/intern/bmesh_structure.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_structure.c 2012-09-12 04:53:49 UTC (rev 50543)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_structure.c 2012-09-12 05:11:38 UTC (rev 50544)
@@ -153,10 +153,22 @@
* advantage is that no intrinsic properties of the data structures are dependent upon the
* cycle order and all non-manifold conditions are represented trivially.
*/
+
+BLI_INLINE BMDiskLink *bmesh_disk_edge_link_from_vert(BMEdge *e, BMVert *v)
+{
+ if (v == e->v1) {
+ return &e->v1_disk_link;
+ }
+ else {
+ BLI_assert(v == e->v2);
+ return &e->v2_disk_link;
+ }
+}
+
int bmesh_disk_edge_append(BMEdge *e, BMVert *v)
{
if (!v->e) {
- BMDiskLink *dl1 = BM_DISK_EDGE_LINK_GET(e, v);
+ BMDiskLink *dl1 = bmesh_disk_edge_link_from_vert(e, v);
v->e = e;
dl1->next = dl1->prev = e;
@@ -164,9 +176,9 @@
else {
BMDiskLink *dl1, *dl2, *dl3;
- dl1 = BM_DISK_EDGE_LINK_GET(e, v);
- dl2 = BM_DISK_EDGE_LINK_GET(v->e, v);
- dl3 = dl2->prev ? BM_DISK_EDGE_LINK_GET(dl2->prev, v) : NULL;
+ dl1 = bmesh_disk_edge_link_from_vert(e, v);
+ dl2 = bmesh_disk_edge_link_from_vert(v->e, v);
+ dl3 = dl2->prev ? bmesh_disk_edge_link_from_vert(dl2->prev, v) : NULL;
dl1->next = v->e;
dl1->prev = dl2->prev;
@@ -183,14 +195,14 @@
{
BMDiskLink *dl1, *dl2;
- dl1 = BM_DISK_EDGE_LINK_GET(e, v);
+ dl1 = bmesh_disk_edge_link_from_vert(e, v);
if (dl1->prev) {
- dl2 = BM_DISK_EDGE_LINK_GET(dl1->prev, v);
+ dl2 = bmesh_disk_edge_link_from_vert(dl1->prev, v);
dl2->next = dl1->next;
}
if (dl1->next) {
- dl2 = BM_DISK_EDGE_LINK_GET(dl1->next, v);
+ dl2 = bmesh_disk_edge_link_from_vert(dl1->next, v);
dl2->prev = dl1->prev;
}
More information about the Bf-blender-cvs
mailing list