def changeSight(self, axis): self.mvMat = geo.lookAtMatrix(axis[0], -axis[1], -axis[2], self.c[0], self.c[1], self.c[2], self.up[0], self.up[1], self.up[2])
def getMvMat(self, center): """ gibt Modelview-Matrix zurueck mit Hilfe von Helicopter Position @param center: Position an der helicopter steht """ (x, y, z) = self.pos (a, b, c) = center return geo.lookAtMatrix(x, y, z, a, b, c, 0, 1, 0)
def initCamera(self): self.mvMat = geo.lookAtMatrix(self.e[0], self.e[1], self.e[2], self.c[0], self.c[1], self.c[2], self.up[0], self.up[1], self.up[2]) self.pMat = geo.perspectiveMatrix(self.fovy, self.aspect, 0.1, 30) print "cam initialisiert"
def __init__(self, e, c, up): """ Konstruktor fuer FreeCamera mit Arcball rotation @param e: standpunkt der camera @param c: blickpunkt der camera @param up: up-vektor der camera """ Camera.__init__(self) self.mvMat = geo.lookAtMatrix(e[0], e[1], e[2], # position c[0], c[1], c[2], # center up[0], up[1], up[2]) # up vector self.actOri = geo.identity() self.rotation = geo.identity() self.zoomMat = geo.identity()
def getMvMat(self, e, actOri): """ Errechnet ModelviewMatrixTransformation @param e: standpunkt helicopter @param actOri: aktuelle Ausrichtung des Helicopters """ up = Vector(0, 1, 0).multMatrix(actOri.T).normalized() c = Vector(0, 0, 1).multMatrix(actOri.T) # blickrichtung a = e.copy() a[1] += self.height ce = a + c a = a - c * self.factor return geo.lookAtMatrix(a[0], a[1], a[2], ce[0], ce[1], ce[2], up[0], up[1], up[2])