WorldViz User Forum  

Go Back   WorldViz User Forum > Vizard

Reply
 
Thread Tools Rate Thread Display Modes
  #1  
Old 07-22-2013, 12:10 PM
brunomartelli brunomartelli is offline
Member
 
Join Date: Apr 2013
Location: London
Posts: 41
3dcompass

Hi im trying to make a 3d compass like a flat disc that sits on the ground and rotates in place.

so far i am doing this:

Code:
compass = viz.addChild('arrow.osgb')
compass.color( 0.2,0.8,0.8 )
###########################################
# get the main viewpoint and link a compass to it
view = viz.MainView

#link compass pos to viewpoint
compasslink = viz.link(view, compass)


pitch, roll, yaw = view.getEuler()


compasslink.setEuler([0,0,-yaw])

#offset compass origion before linking to view
compasslink.preTrans([0, -0.5, 0])
this rotates fine, opposite to the view rotate. However if I pitch up the view LMB+RMB the compass doesn't rotate up with the view.
so i figure that i can set the -pitch to rotate it opposite.

Code:
compasslink.setEuler([-pitch,0,-yaw])
However That does nothing. I know there is HEAD_ori etc but that does nothing too. Any ideas???? im really stuck....

Last edited by brunomartelli; 07-22-2013 at 12:12 PM. Reason: clarity
Reply With Quote
  #2  
Old 07-23-2013, 03:22 PM
Jeff Jeff is offline
WorldViz Team Member
 
Join Date: Aug 2008
Posts: 2,471
If you want the compass to rotate with the viewpoint you can create a link and set the mask to orientation only. If you want the compass yaw to be the opposite of the viewpoint use the link.swapEuler command:
Code:
import viz
import vizshape
viz.go()

viz.add('dojo.osgb')

compass = vizshape.addArrow()
compass.setPosition([0,0.5,0])
compassLink = viz.link(viz.MainView,compass,mask=viz.LINK_ORI)

#Negate yaw value
#compassLink.swapEuler([-1,2,3])

subWindow = viz.addWindow(pos=[0.5,1])
subWindow.setSize(0.5,0.5)
view = viz.addView()
view.move([0,-1,-4])
subWindow.setView(view)
Reply With Quote
Reply

Tags
compass, euler, view rotate

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

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 Jump


All times are GMT -7. The time now is 02:29 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC