Ejemplo n.º 1
0
    def test_relocate_camera(self):
        pos = self.pos
        up = self.up
        right = self.right
        camera = c.CameraBase(pos, up, right)

        tris = t.Triangles()
        tris.add_triangle(
            t.Triangle(rp.Point3D(1., 1, -5.0), rp.Point3D(1, 0, -5.0),
                       rp.Point3D(2, 0, -5.0)))

        relocated_tris = camera.relocate_world_by_camera(tris)
        tri0 = relocated_tris[0]

        expected_tri = t.Triangle(
            rp.Point3D(0, 0, -6),
            rp.Point3D(1 / np.sqrt(2), -1 / np.sqrt(2), -6),
            rp.Point3D(np.sqrt(2), 0, -6))

        self.assertTrue(tri0 == expected_tri)
Ejemplo n.º 2
0
    def test_get_triangle(self):
        p1 = rp.Point3D(0, 0, 0)
        p2 = rp.Point3D(0, 1, 0)
        p3 = rp.Point3D(1, 0, 0)

        tri1 = tri.Triangle(p1, p2, p3)

        p1 = rp.Point3D(0, 0, 0)
        p2 = rp.Point3D(0, 0.5, 0)
        p3 = rp.Point3D(0.5, 0, 0)

        tri2 = tri.Triangle(p1, p2, p3)

        tris = tri.Triangles()
        tris.add_triangle(tri1)
        tris.add_triangle(tri2)

        trir1 = tris[0]
        trir2 = tris[1]
        self.assertEqual(trir1, tri1)
        self.assertEqual(trir2, tri2)
Ejemplo n.º 3
0
    def test_triangle(self):
        tctx = ctx.Context()
        if tctx.triangle_right_hand_norm:
            p1 = rp.Point3D(0, 0, 0)
            p2 = rp.Point3D(1, 0, 0)
            p3 = rp.Point3D(0, 1, 0)
        else:
            p1 = rp.Point3D(0, 0, 0)
            p2 = rp.Point3D(0, 1, 0)
            p3 = rp.Point3D(1, 0, 0)

        ttri = tri.Triangle(p1, p2, p3)

        self.assertTrue(ttri.verify())
Ejemplo n.º 4
0
    def test_rasterize(self):
        p1 = rp.Point(0.5, 0.5, 0.5, None, color.Color.place_holder(),
                      rp.Vector.place_holder())

        p2 = rp.Point(0.0, 0.0, 0.0, None, color.Color.place_holder(),
                      rp.Vector.place_holder())

        p3 = rp.Point(0.5, 0.0, 0.5, None, color.Color.place_holder(),
                      rp.Vector.place_holder())

        tr1 = tri.Triangles()
        tr1.add_triangle(tri.Triangle(p1, p2, p3))

        ctx = context.Context()
        render = raster.SimpleRaster(ctx)
        render.rasterize(tr1)
Ejemplo n.º 5
0
    def test_addpoint(self):
        p1 = rp.Point(0.5, 0.5, 0.5, None,
                       color.Color.place_holder(),
                       rp.Vector.place_holder())

        p2 = rp.Point(0.0, 0.0, 0.0, None,
                       color.Color.place_holder(),
                       rp.Vector.place_holder())

        p3 = rp.Point(0.5, 0.0, 0.5, None,
                       color.Color.place_holder(),
                       rp.Vector.place_holder())

        tr1 = tri.Triangles()
        tr1.add_triangle(tri.Triangle(p1, p2, p3))
        
        self.assertEqual(tr1.cindex, 1)