macromedia.director.3d
[Top] [All Lists]

strange transformation

Subject: strange transformation
From: "Starter Rubby"
Date: Tue, 30 Oct 2007 02:12:44 +0000 UTC
Newsgroups: macromedia.director.3d

I want to use matrix to express the transformtion of the lingo 3D, But I find 
something strange and cannot find any way to adjust the matrix to match it. 
 Just like the code bellow, I new two groups:group1 and group2 ,group1 is a 
member of group("world"), and contain the member group2. group2 contain a 
member pModel. i set the pModel's position as vector(1.0,0.0,0.0), give the 
group1a rotation of vector(0.0,45.0,0.0) and a scale of vector(2.0,1.0,1.0). 
When I use pModel.getworldtransform() to get the pModel's transform in world 
space, I find the result like bellow:
 scales:vector( 1.6720, 1.0000, 1.1961 )
 position:vector( 0.6136, 0.0000, -1.5339 )
 rotation:vector( 0.0000, 72.9868, 0.0000 )
 axisAngle:[vector( 0.0000, -1.0000, 0.0000 ), -72.9868]
  I don't know why. if someone can give me a explanation or give me some 
document about the transformation.

 on beginSprite  
   clearglobals()
   _movie.member(2).resetWorld()
   
   
pModelResource=sprite(1).member.newmodelResource("modelResource",#plane,#back)
   
   Group1=_movie.member(2).newgroup("group1")
   Group1.transform.position=vector(0.0,0.0,0.0)
   Group1.transform.rotation=vector(0.0,45.0,0.0)
   Group1.transform.scale=vector(2.0,1.0,1.0) 
    
   Group2=_movie.member(2).newgroup("group2")
   Group1.addChild(Group2,#preserveWorld)  
   Group2.transform.position=vector(0.0,0.0,0.0)
   Group2.transform.rotation=vector(0.0,0.0,0.0)
   Group2.transform.scale=vector(1.0,1.0,1.0)
   
   pModel=_movie.member(2).newModel("model1",pModelResource)   
   Group2.addChild(pModel,#preserveWorld)  
   
   pModel.transform.position=vector(1.0,0.0,0.0)
   pModel.transform.rotation=vector(0.0,0.0,0.0)
   pModel.transform.scale=vector(1.0,1.0,1.0)
   
   a=pModel.getworldtransform()
   
 end


<Prev in Thread] Current Thread [Next in Thread>