getattr3 is faster than try/except in pyrex.
authorJoe Wreschnig <joe.wreschnig@gmail.com>
Tue, 23 Mar 2010 05:28:41 +0000 (22:28 -0700)
committerJoe Wreschnig <joe.wreschnig@gmail.com>
Tue, 23 Mar 2010 05:28:41 +0000 (22:28 -0700)
bulletml/_collision.pyx

index 2011e98..b057022 100644 (file)
@@ -28,14 +28,10 @@ def overlaps(a, b):
 
     dx = ax - bx
     dy = ay - by
-    try:
-        radius = a.radius
-    except AttributeError:
-        radius = 0.5
-    try:
-        radius += b.radius
-    except AttributeError:
-        radius += 0.5
+
+    radius_a = getattr3(a, 'radius', 0.5)
+    radius_b = getattr3(b, 'radius', 0.5)
+    radius = radius_a + radius_b
 
     return dx * dx + dy * dy <= radius * radius