<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/11995" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2018-01-26T16:36:09+00:00</updated>

	<author><name><![CDATA[Real-Time Physics Simulation Forum]]></name></author>
	<id>https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/11995</id>

		<entry>
		<author><name><![CDATA[ardabbour]]></name></author>
		<updated>2018-01-26T16:36:09+00:00</updated>

		<published>2018-01-26T16:36:09+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40364#p40364</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40364#p40364"/>
		<title type="html"><![CDATA[Re: Collision Resolution]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40364#p40364"><![CDATA[
I am completely stumped here, I looked around HopperBulletEnv, and its dependencies, but couldn't find anywhere how in those environments constraints were defined to allow motion in 2D.<br><div class="codebox"><p>Code: </p><pre><code>import timeimport pybullet as pp.connect(p.GUI)SURFACE = p.loadURDF("surface.urdf", useFixedBase=True)c = 0.51 # z distance between center of mass of CUBE and SURFACE when CUBE is on top of SURFACECUBE = p.loadURDF("cube.urdf", [0, 0, c])CONSTRAINT_1 = p.createConstraint(    SURFACE, -1, CUBE, -1, jointType=p.JOINT_PRISMATIC, jointAxis=[0, 1, 0], [0, 0, c], [0, 0, 0])CONSTRAINT_2 = p.createConstraint(    SURFACE, -1, CUBE, -1,  jointType=p.JOINT_PRISMATIC, jointAxis=[1, 0, 0], [0, 0, c], [0, 0, 0])while True:    p.stepSimulation()    POS, _ = p.getBasePositionAndOrientation(CUBE)    time.sleep(0.01)</code></pre></div>Obviously, the reason this cannot work is because the two constraints contradict each other. JOINT_PRISMATIC prevents the motion in any but one dimension, and there are no jointType variables that allow for planar movements.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12388">ardabbour</a> — Fri Jan 26, 2018 4:36 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erwin Coumans]]></name></author>
		<updated>2018-01-25T06:02:28+00:00</updated>

		<published>2018-01-25T06:02:28+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40357#p40357</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40357#p40357"/>
		<title type="html"><![CDATA[Re: Collision Resolution]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40357#p40357"><![CDATA[
There are a few ways to keep simulation in 2D indeed: you can use a 'fixed' base and add joints that allow motion in 2D. Look at the Gym environments 'Hopper' and 'HalfCheetah' and 'Walker2D', they only move in the 2D plane.<br><br><a href="https://github.com/bulletphysics/bullet3/blob/master/examples/pybullet/gym/pybullet_envs/examples/enjoy_TF_HopperBulletEnv_v0_2017may.py" class="postlink">https://github.com/bulletphysics/bullet ... 2017may.py</a><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=2">Erwin Coumans</a> — Thu Jan 25, 2018 6:02 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[ardabbour]]></name></author>
		<updated>2018-01-23T09:41:35+00:00</updated>

		<published>2018-01-23T09:41:35+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40352#p40352</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40352#p40352"/>
		<title type="html"><![CDATA[Collision Resolution]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=40352#p40352"><![CDATA[
An automatic collision resolution takes place when we step the simulation and 2 or more objects are in collision. Can we confine this resolution to 2D? That is, if 2 objects are in collision, they should be moved out of each other by applying forces to 2 axes out of 3. Is there such a way to do this?<br><br>Also, where can I read more about this collision resolution algorithm? Source code, a paper, raw mathematics or even a blog post would be great!<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12388">ardabbour</a> — Tue Jan 23, 2018 9:41 am</p><hr />
]]></content>
	</entry>
	</feed>
