Exemple #1
0
    def test__look_at(self):
        from core.transform import Transform
        from maths.point3d import Point3d
        from maths.vector3d import Vector3d

        pos = Point3d(1.0, 0.0, 0.0)
        at = Point3d(1.0, 0.0, 1.0)
        up = Vector3d.get_up()

        t = Transform.create_look_at(pos, at, up)

        foo = Vector3d(1.0, 0.0, 0.0)

        self.assertEqual(foo * t, Vector3d(0.0, 0.0, 0.0))
Exemple #2
0
def pbrtLookAt(e: Vector3d, l: Vector3d, u: Vector3d):
    global curTransform
    for i in range(len(curTransform)):
        curTransform[i] = curTransform[i] * Transform.create_look_at(e, l, u)