View Single Post
  #4  
Old 02-13-2007, 03:33 PM
farshizzo farshizzo is offline
WorldViz Team Member
 
Join Date: Mar 2003
Posts: 2,849
Here you go
Code:
import viz
viz.go()

euler1 = [90,0,0]
euler2 = [91,0,5]

def ComputeAngleDifference(euler1, euler2):
	m = viz.Transform()
	
	#Extract forward/up vector from euler1
	m.setRot( vizmat.EulerToAxisAngle(euler1) )
	d = m.get()
	forward1 = d[8:11]
	up1 = d[4:7]
	
	#Extract forward/up vector from euler2
	m.setRot( vizmat.EulerToAxisAngle(euler2) )
	d = m.get()
	forward2 = d[8:11]
	up2 = d[4:7]

	#Compute angle difference between forward/up vectors
	forward_diff = vizmat.AngleBetweenVector(forward1,forward2)
	up_diff = vizmat.AngleBetweenVector(up1,up2)

	return forward_diff,up_diff
	
print ComputeAngleDifference(euler1,euler2)
Reply With Quote