Source code for mm.frame

import mmapi

[docs]class mmFrame(object): """ This class represents a 3D frame with an origin (.origin) and .x/.y/.z ortho-normal axes. """ def __init__(self): """initialize to origin and identity matrix""" self.origin = (0,0,0) self.x = (1,0,0) self.y = (0,1,0) self.z = (0,0,1)
[docs] def set(self, o, x, y, z): """initialize with origin and X/Y/Z axes""" self.origin = (o[0],o[1],o[2]); self.x = (x[0],x[1],x[2]); self.y = (y[0],y[1],y[2]); self.z = (z[0],z[1],z[2]);
[docs] def setFromMM(self, f): """initialize with wrapped C++ frame3f object, see StoredCommands.h""" self.origin = (f.origin_x, f.origin_y, f.origin_z); self.x = (f.tan1_x, f.tan1_y, f.tan1_z); self.y = (f.tan2_x, f.tan2_y, f.tan2_z); self.z = (f.normal_x, f.normal_y, f.normal_z);
[docs] def get_matrix(self): """return orientation as 9-element tuple""" return (self.x[0], self.x[1], self.x[2], self.y[0],self.y[1],self.y[2], self.z[0],self.z[1],self.z[2])