View Single Post
  #2  
Old 01-02-2014, 04:47 AM
Frank Verberne Frank Verberne is offline
Member
 
Join Date: Mar 2008
Location: Netherlands
Posts: 148
Hi VirtuallyInsane,

Stepsize is not the thing you're looking for, it determines the maximum height difference allowed when moving through a world. Meaning that if you would like to climb a virtual set of stairs with steps that are higher than the stepsize of Vizard, you would be unable to climb those stairs.

What you're looking for is <link>.preScale. First you have to link your sensor with the mainview of Vizard. Then, you need to preScale the link, so that 1 meter in a certain direction in your lab becomes 2 meters in Vizard. See the code below:
Code:
import viz

viz.go()

#Add your sensor to track the position.
sensor = viz.add('sensor.dle')
#Link the mainview to this sensor.
viewLink = viz.link(sensor, viz.MainView)
#Use preScale to scale the x,y,z of the sensor to apply to the MainView
viewLink.preScale(1,2,1)
In this code, the Y-value of the sensor is multiplied by two, before being applied to the MainView.

Another way of moving 2 meters in the virtual world, when moving 1 meter in the lab is to scale the virtual world. In the code below, the virtual piazza is scaled to half its original size, so if in the original piazza 1 lab meter equaled 1 virtual meter, now 1 lab meter equals 2 virtual meters (in every direction).
Code:
import viz

viz.go()

world = viz.add('piazza.osgb')
world.setScale(.5,.5,.5)
Reply With Quote