diff --git a/data/MPL/MPL.xml b/data/MPL/MPL.xml index 5800a1200..2b8408323 100644 --- a/data/MPL/MPL.xml +++ b/data/MPL/MPL.xml @@ -49,30 +49,30 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/data/MPL/mesh/index0_collision.STL b/data/MPL/mesh/index0_collision.STL new file mode 100644 index 000000000..9d055eb5f Binary files /dev/null and b/data/MPL/mesh/index0_collision.STL differ diff --git a/data/MPL/mesh/index1_collision.STL b/data/MPL/mesh/index1_collision.STL new file mode 100644 index 000000000..9d11ac8bc Binary files /dev/null and b/data/MPL/mesh/index1_collision.STL differ diff --git a/data/MPL/mesh/index2_collision.STL b/data/MPL/mesh/index2_collision.STL new file mode 100644 index 000000000..3739de3fb Binary files /dev/null and b/data/MPL/mesh/index2_collision.STL differ diff --git a/data/MPL/mesh/index3_collision.STL b/data/MPL/mesh/index3_collision.STL new file mode 100644 index 000000000..ec4237308 Binary files /dev/null and b/data/MPL/mesh/index3_collision.STL differ diff --git a/data/MPL/mesh/middle0_collision.STL b/data/MPL/mesh/middle0_collision.STL new file mode 100644 index 000000000..1b027f78e Binary files /dev/null and b/data/MPL/mesh/middle0_collision.STL differ diff --git a/data/MPL/mesh/middle1_collision.STL b/data/MPL/mesh/middle1_collision.STL new file mode 100644 index 000000000..b89440459 Binary files /dev/null and b/data/MPL/mesh/middle1_collision.STL differ diff --git a/data/MPL/mesh/middle2_collision.STL b/data/MPL/mesh/middle2_collision.STL new file mode 100644 index 000000000..447bf7240 Binary files /dev/null and b/data/MPL/mesh/middle2_collision.STL differ diff --git a/data/MPL/mesh/middle3_collision.STL b/data/MPL/mesh/middle3_collision.STL new file mode 100644 index 000000000..806a150a2 Binary files /dev/null and b/data/MPL/mesh/middle3_collision.STL differ diff --git a/data/MPL/mesh/palm_collision.STL b/data/MPL/mesh/palm_collision.STL new file mode 100644 index 000000000..08625a6f1 Binary files /dev/null and b/data/MPL/mesh/palm_collision.STL differ diff --git a/data/MPL/mesh/pinky0_collision.STL b/data/MPL/mesh/pinky0_collision.STL new file mode 100644 index 000000000..ddc637126 Binary files /dev/null and b/data/MPL/mesh/pinky0_collision.STL differ diff --git a/data/MPL/mesh/pinky1_collision.STL b/data/MPL/mesh/pinky1_collision.STL new file mode 100644 index 000000000..c4316bff6 Binary files /dev/null and b/data/MPL/mesh/pinky1_collision.STL differ diff --git a/data/MPL/mesh/pinky2_collision.STL b/data/MPL/mesh/pinky2_collision.STL new file mode 100644 index 000000000..375aa5f97 Binary files /dev/null and b/data/MPL/mesh/pinky2_collision.STL differ diff --git a/data/MPL/mesh/pinky3_collision.STL b/data/MPL/mesh/pinky3_collision.STL new file mode 100644 index 000000000..fc4981f0f Binary files /dev/null and b/data/MPL/mesh/pinky3_collision.STL differ diff --git a/data/MPL/mesh/ring0_collision.STL b/data/MPL/mesh/ring0_collision.STL new file mode 100644 index 000000000..9d055eb5f Binary files /dev/null and b/data/MPL/mesh/ring0_collision.STL differ diff --git a/data/MPL/mesh/ring1_collision.STL b/data/MPL/mesh/ring1_collision.STL new file mode 100644 index 000000000..5b1f6af50 Binary files /dev/null and b/data/MPL/mesh/ring1_collision.STL differ diff --git a/data/MPL/mesh/ring2_collision.STL b/data/MPL/mesh/ring2_collision.STL new file mode 100644 index 000000000..447bf7240 Binary files /dev/null and b/data/MPL/mesh/ring2_collision.STL differ diff --git a/data/MPL/mesh/ring3_collision.STL b/data/MPL/mesh/ring3_collision.STL new file mode 100644 index 000000000..ec4237308 Binary files /dev/null and b/data/MPL/mesh/ring3_collision.STL differ diff --git a/data/MPL/mesh/thumb0_collision.STL b/data/MPL/mesh/thumb0_collision.STL new file mode 100644 index 000000000..dea0dc8f0 Binary files /dev/null and b/data/MPL/mesh/thumb0_collision.STL differ diff --git a/data/MPL/mesh/thumb1_collision.STL b/data/MPL/mesh/thumb1_collision.STL new file mode 100644 index 000000000..97fe1dc9c Binary files /dev/null and b/data/MPL/mesh/thumb1_collision.STL differ diff --git a/data/MPL/mesh/thumb2_collision.STL b/data/MPL/mesh/thumb2_collision.STL new file mode 100644 index 000000000..5b1f67f53 Binary files /dev/null and b/data/MPL/mesh/thumb2_collision.STL differ diff --git a/data/MPL/mesh/thumb3_collision.STL b/data/MPL/mesh/thumb3_collision.STL new file mode 100644 index 000000000..373c2434d Binary files /dev/null and b/data/MPL/mesh/thumb3_collision.STL differ diff --git a/data/MPL/mesh/wristx_collision.STL b/data/MPL/mesh/wristx_collision.STL new file mode 100644 index 000000000..d6d5ee465 Binary files /dev/null and b/data/MPL/mesh/wristx_collision.STL differ diff --git a/data/MPL/mesh/wristy_collision.STL b/data/MPL/mesh/wristy_collision.STL new file mode 100644 index 000000000..4aa00412e Binary files /dev/null and b/data/MPL/mesh/wristy_collision.STL differ diff --git a/data/MPL/mesh/wristz_collision.STL b/data/MPL/mesh/wristz_collision.STL new file mode 100644 index 000000000..95a0f9b48 Binary files /dev/null and b/data/MPL/mesh/wristz_collision.STL differ diff --git a/data/MPL/mpl2.xml b/data/MPL/mpl2.xml index 7205b15ad..327e72778 100644 --- a/data/MPL/mpl2.xml +++ b/data/MPL/mpl2.xml @@ -49,30 +49,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/Importers/ImportSTLDemo/LoadMeshFromSTL.h b/examples/Importers/ImportSTLDemo/LoadMeshFromSTL.h index 65bdd330b..95cd93ef3 100644 --- a/examples/Importers/ImportSTLDemo/LoadMeshFromSTL.h +++ b/examples/Importers/ImportSTLDemo/LoadMeshFromSTL.h @@ -98,8 +98,11 @@ static GLInstanceGraphicsShape* LoadMeshFromSTL(const char* relativeFileName) } fclose(file); } - shape->m_numIndices = shape->m_indices->size(); - shape->m_numvertices = shape->m_vertices->size(); + if (shape) + { + shape->m_numIndices = shape->m_indices->size(); + shape->m_numvertices = shape->m_vertices->size(); + } return shape; } diff --git a/examples/pybullet/vrminitaur.py b/examples/pybullet/vrminitaur.py new file mode 100644 index 000000000..c6e1daac8 --- /dev/null +++ b/examples/pybullet/vrminitaur.py @@ -0,0 +1,49 @@ +#script to track a robot with a VR controller attached to it. + +import time +import pybullet as p + +#first try to connect to shared memory (VR), if it fails use local GUI +c = p.connect(p.SHARED_MEMORY) +if (c<0): + c = p.connect(p.GUI) +p.resetSimulation() +p.setGravity(0,0,0) +print(c) +if (c<0): + p.connect(p.GUI) + +#load the MuJoCo MJCF hand +minitaur = p.loadURDF("quadruped/minitaur.urdf") +robot_cid = -1 + +POSITION=1 +ORIENTATION=2 +BUTTONS=6 + +p.setRealTimeSimulation(1) + +controllerId = -1 + +while True: + events = p.getVREvents() + for e in (events): + #print (e[BUTTONS]) + if (e[BUTTONS][33]&p.VR_BUTTON_WAS_TRIGGERED ): + if (controllerId >= 0): + controllerId = -1 + else: + controllerId = e[0] + if (e[0] == controllerId): + if (robot_cid>=0): + p.changeConstraint(robot_cid,e[POSITION],e[ORIENTATION], maxForce=5000) + if (e[BUTTONS][32]&p.VR_BUTTON_WAS_TRIGGERED ): + if (robot_cid>=0): + p.removeConstraint(robot_cid) + + #q = [0,0,0,1] + euler = p.getEulerFromQuaternion(e[ORIENTATION]) + q = p.getQuaternionFromEuler([euler[0],euler[1],0]) #-euler[0],-euler[1],-euler[2]]) + robot_cid = p.createConstraint(minitaur,-1,-1,-1,p.JOINT_FIXED,[0,0,0],[0.1,0,0],e[POSITION],q,e[ORIENTATION]) + + \ No newline at end of file diff --git a/src/LinearMath/btScalar.h b/src/LinearMath/btScalar.h index 00754567b..b101d7416 100644 --- a/src/LinearMath/btScalar.h +++ b/src/LinearMath/btScalar.h @@ -49,7 +49,7 @@ inline int btGetVersion() #define ATTRIBUTE_ALIGNED16(a) a #define ATTRIBUTE_ALIGNED64(a) a #define ATTRIBUTE_ALIGNED128(a) a - #elif (_M_ARM) + #elif defined(_M_ARM) #define SIMD_FORCE_INLINE __forceinline #define ATTRIBUTE_ALIGNED16(a) __declspec() a #define ATTRIBUTE_ALIGNED64(a) __declspec() a