From 62b0450b0c914b33a8625b2bda0e00e9196dff01 Mon Sep 17 00:00:00 2001 From: josh Date: Mon, 16 Nov 2009 02:30:37 +0000 Subject: [PATCH] taking absolute values of shape sizes to avoid ODE errors git-svn-id: svn://anubis/misc/phy_export@208 bd8a9e45-a331-0410-811e-c64571078777 --- phy_export.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/phy_export.py b/phy_export.py index 7a68992..3edcb35 100644 --- a/phy_export.py +++ b/phy_export.py @@ -26,19 +26,23 @@ def write(filename): e = ob.getEuler() size = ob.getSize() out.write("cube \"%s\" %f %f %f %f %f %f %f %f %f\n" % - ((ob.name,2*size[0],2*size[1],2*size[2]) + + ((ob.name, + 2 * abs(size[0]), + 2 * abs(size[1]), + 2 * abs(size[2])) + ob.getLocation() + (e[0], e[1], e[2]))) elif len(ob.data.faces) < 256: # found a capsule e = ob.getEuler() out.write("capsule \"%s\" %f %f %f %f %f %f %f %f\n" % - ((ob.name,) + (ob.getSize()[0], ob.getSize()[2]*2) + - ob.getLocation() + - (e[0], e[1], e[2]))) + ((ob.name,) + + (abs(ob.getSize()[0]), abs(ob.getSize()[2]) * 2) + + ob.getLocation() + + (e[0], e[1], e[2]))) elif len(ob.data.faces) >= 256: # found a sphere out.write("sphere \"%s\" %f %f %f %f\n" % - ((ob.name, ob.SizeX) + ob.getLocation())) + ((ob.name, abs(ob.SizeX)) + ob.getLocation())) Blender.Window.FileSelector(write, "Export")