mirror of
https://github.com/bulletphysics/bullet3
synced 2024-12-14 22:00:05 +00:00
make the event fields understandable
This commit is contained in:
parent
a4cf0c8b11
commit
c378d236bb
@ -1,10 +1,14 @@
|
|||||||
#See pybullet quickstart guide here:
|
# See pybullet quickstart guide here:
|
||||||
#https://docs.google.com/document/d/10sXEhzFRSnvFcl3XxNGhnD4N2SedqwdAvK3dsihxVUA/edit#
|
# https://docs.google.com/document/d/10sXEhzFRSnvFcl3XxNGhnD4N2SedqwdAvK3dsihxVUA/edit#
|
||||||
|
|
||||||
# Create a Tiltbrush-like app, drawing lines using any controller
|
# Create a Tiltbrush-like app, drawing lines using any controller
|
||||||
# Line width can be changed
|
# Line width can be changed
|
||||||
|
|
||||||
import pybullet as p
|
import pybullet as p
|
||||||
|
|
||||||
|
CONTROLLER_ID = 0
|
||||||
|
POSITION=1
|
||||||
|
BUTTONS=6
|
||||||
|
|
||||||
#assume that the VR physics server is already started before
|
#assume that the VR physics server is already started before
|
||||||
p.connect(p.SHARED_MEMORY)
|
p.connect(p.SHARED_MEMORY)
|
||||||
p.setInternalSimFlags(0)#don't load default robot assets etc
|
p.setInternalSimFlags(0)#don't load default robot assets etc
|
||||||
@ -27,27 +31,27 @@ while True:
|
|||||||
events = p.getVREvents()
|
events = p.getVREvents()
|
||||||
|
|
||||||
for e in (events):
|
for e in (events):
|
||||||
if (e[6][33]&2):
|
if (e[BUTTONS][33]&2):
|
||||||
prev[e[0]] = e[1]
|
prev[e[CONTROLLER_ID]] = e[POSITION]
|
||||||
if (e[6][32]&2):
|
if (e[BUTTONS][32]&2):
|
||||||
widths[e[0]]=widths[e[0]]+1
|
widths[e[CONTROLLER_ID]]=widths[e[0]]+1
|
||||||
if (widths[e[0]]>20):
|
if (widths[e[CONTROLLER_ID]]>20):
|
||||||
widths[e[0]] = 1
|
widths[e[CONTROLLER_ID]] = 1
|
||||||
if (e[6][1]&2):
|
if (e[BUTTONS][1]&2):
|
||||||
p.resetSimulation()
|
p.resetSimulation()
|
||||||
#p.setGravity(0,0,-10)
|
#p.setGravity(0,0,-10)
|
||||||
p.removeAllUserDebugItems()
|
p.removeAllUserDebugItems()
|
||||||
p.loadURDF("plane.urdf")
|
p.loadURDF("plane.urdf")
|
||||||
if (e[6][33]==1):
|
if (e[BUTTONS][33]==1):
|
||||||
pt = prev[e[0]]
|
pt = prev[e[CONTROLLER_ID]]
|
||||||
|
|
||||||
#print(prev[e[0]])
|
#print(prev[e[0]])
|
||||||
#print(e[1])
|
#print(e[1])
|
||||||
diff = [pt[0]-e[1][0],pt[1]-e[1][1],pt[2]-e[1][2]]
|
diff = [pt[0]-e[POSITION][0],pt[1]-e[POSITION][1],pt[2]-e[POSITION][2]]
|
||||||
lenSqr = diff[0]*diff[0]+diff[1]*diff[1]+diff[2]*diff[2]
|
lenSqr = diff[0]*diff[0]+diff[1]*diff[1]+diff[2]*diff[2]
|
||||||
ptDistThreshold = 0.01
|
ptDistThreshold = 0.01
|
||||||
if (lenSqr>(ptDistThreshold*ptDistThreshold)):
|
if (lenSqr>(ptDistThreshold*ptDistThreshold)):
|
||||||
p.addUserDebugLine(e[1],prev[e[0]],colors[e[0]],widths[e[0]])
|
p.addUserDebugLine(e[POSITION],prev[e[CONTROLLER_ID]],colors[e[CONTROLLER_ID]],widths[e[CONTROLLER_ID]])
|
||||||
#p.loadURDF("cube_small.urdf",e[1])
|
#p.loadURDF("cube_small.urdf",e[1])
|
||||||
colors[e[0]] = [1-colors[e[0]][0],1-colors[e[0]][1],1-colors[e[0]][2]]
|
colors[e[CONTROLLER_ID]] = [1-colors[e[CONTROLLER_ID]][0],1-colors[e[CONTROLLER_ID]][1],1-colors[e[CONTROLLER_ID]][2]]
|
||||||
prev[e[0]] = e[1]
|
prev[e[CONTROLLER_ID]] = e[POSITION]
|
Loading…
Reference in New Issue
Block a user