[Chimera-users] Chimera rotational matrix
Greg Couch
gregc at cgl.ucsf.edu
Sun Nov 30 21:45:18 PST 2008
On Thu, 27 Nov 2008, Bui Khanh Huy wrote:
> Hi,
>
> I notice that Chimera has slightly different in calculation of transform
> when I tried to rotate my EM density (200x200x200 mrc file) using
> Chimera. The origin of the density reported by Volume Viewer is 0,0,0
>
> First, I print out the homologous transform matrix using:
>
> >>> om = chimera.openModels
> >>> mlist = om.list()
> >>> m = mlist[0]
> >>> print m.openState.xform
>
> The transformation is:
>
> 1 0 0 0
> 0 1 0 0
> 0 0 1 0
>
> If I rotate the model using command:
>
> roll z -30 1
>
> Then print out the transform matrix again:
>
> 0.866025 0.5 0 -36.8852
> -0.5 0.866025 0 61.2937
> 0 0 0 1
>
> That would be weird because I didn't do any translation.
> So what is really happening in Chimera when I rotate the model?
>
> Best,
>
> Huy
The model is rotated about its center. So unless your model is
centered at the origin there will be a translation component. If the
rotation is R, and T is the translation to the center, then the actual
rotation is:
R' = T R (-T)
Chimera has many different ways to choose the center. See
<http://www.cgl.ucsf.edu/chimera/docs/UsersGuide/sideview.html#rotation>
for details.
Greg Couch
UCSF Computer Graphics Lab
More information about the Chimera-users
mailing list