WorldViz User Forum Object + InteriaCube + Viewport problem
 Register FAQ Search Today's Posts Mark Forums Read

#1
02-22-2012, 07:39 AM
 Gekitatsu Member Join Date: Feb 2012 Posts: 3
Object + InteriaCube + Viewport problem

Here is the scenario. We have an object (lets say default male avatar) we have to randomly rotate in all x,y,z coords. After the object is rotated we want to enable our InteriaCube to then augment the avatars current euler, but only based on the viewport. For example if the avatar is facing right (after our random rotate) when we enabled the link, and we rotate our cube down and forward the avatar will rotate on it's side while still facing right. We don't want the cube to rotate the avatar based on it's coord system we want all the rotation of the avatar to be based off of the viewport (when using the interia cube).

Few Notes

-When link is enabled between avatar & cube it must not change the direction of the avatar. The Cube is only suppose to augment the current euler of the avatar.

-The viewport will never move

-I've tried both manually augmenting the avatar's euler with input from the cube & using linking.

I've tried quite a few different approaches to get this to work, but with no real success. Anybody happen to know how to set this up?

-Random Rotation is already set avatar.setEuler(random.randint(0,360),random.randi nt(0,360),random.randint(0,360));

Any help would be great.
#2
02-22-2012, 10:55 AM
 Gekitatsu Member Join Date: Feb 2012 Posts: 3
Figured it out. I did find one problem with my solution. It turns out if you keep toggling the link (avatar with cube) it'll move the avatar a little bit, but that only happens if you keep toggling it without moving anything. If you can make any improvements to my solutions feel free.

Instructions: Click apply random rotation first, then click toggle link. Now that the link is enabled (text in upper right hand corner) you can rotate your object around using your cube. To set another random rotation you must first disable the link by clicking the toggle button again.

-Note each time you enable the link your cube will reset it's coord to make that it's origin (0,0,0);

Code:
```import viz
import random;

viz.go();

#--------Create SkyBox-----------#
sky.texture(env)
viz.clearcolor(0,0,1) # sky

#--------Create Tracker-----------#
tracker.reset(); #Reset tracker to make it's current position it's origin 0,0,0

#--------Create Logo Model-----------#
logo = viz.add( 'logo.ive', pos =(0,1,5),euler = (-180,0,0) )
logo.setCenter(0,1,0);

#--------Create Labels-----------#
rotationLabel.setPosition(.2,.9)

toggleLabel.setPosition(.2,.85)

toggleStatusLabel.setPosition(.83,.95)
toggleStatusLabel.setScale(.5,.5);

if(buttonState == viz.DOWN): #If button is being pressed down

if(toggleStatusLabel.getMessage() == "Disabled"):

tracker.reset(); # reset tracker ori matrix

toggleStatusLabel.message("Enabled");

elif(toggleStatusLabel.getMessage() == "Enabled"):

toggleStatusLabel.message("Disabled");

def onButton(obj,state):
if obj == rotationLabel:
if(state == viz.DOWN): #If button is being pressed down

#Apply random rotation
logo.setEuler(random.randint(-180,180),
random.randint(-180,180),
random.randint(-180,180));

elif obj == toggleLabel:

viz.callback(viz.BUTTON_EVENT,onButton) #Simply call to function when any button is pressed```

 Thread Tools Display Modes Rate This Thread Linear Mode Rate This Thread: 5 : Excellent 4 : Good 3 : Average 2 : Bad 1 : Terrible

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is Off Forum Rules
 Forum Jump User Control Panel Private Messages Subscriptions Who's Online Search Forums Forums Home Announcements Vizard Precision Position Tracker (PPT) Plug-in development

 Similar Threads Thread Thread Starter Forum Replies Last Post Geoffrey Vizard 11 12-11-2009 04:26 AM _kj_ Vizard 2 08-13-2009 12:03 AM jaylocco Vizard 2 06-08-2009 08:09 PM k_iwan Vizard 2 07-27-2007 07:57 PM bjgold Vizard 3 07-25-2006 03:22 PM

All times are GMT -7. The time now is 10:20 PM.