Пример #1
0
        public PrismSceneTests()
        {
            var prism = new Prism()
            {
                Height1 = 2,
                Height2 = 3
            };

            prism.Add(0, 0).Add(6, 0).Add(6, 8).Add(0, 8).Add(0, 0)  //outer rim
            .Add(1, 1).Add(5, 1).Add(5, 7).Add(1, 7).Add(1, 1);      //inner rim
            prism.AddModifiers(new Pigment()
            {
                Color = new PovColor(0, 0, 1)
            });
            prism.AddModifiers(new Scale(new PovVector(0.5, 1, 0.5)));
            scene.Add(prism);

            var plane = new Plane();

            plane.AddModifiers(new Pigment()
            {
                Color = new PovColor(1, 0, 0)
            });
            scene.Add(plane);
        }
Пример #2
0
        public void DemoObjectsTest()
        {
            scene.Name = "DemoObjects";
            AddBlueSphere();

            var cone = new Cone()
                       .AddModifiers(new Pigment()
            {
                Color = _Magenta
            })
                       .Translate(2, 0, 0);

            scene.Add(cone);

            var cylinder = new Cylinder()
                           .AddModifiers(new Pigment()
            {
                Color = _Cyan
            })
                           .Translate(-2, 0, 0);

            scene.Add(cylinder);

            var ovus = new Ovus()
                       .AddModifiers(new Pigment()
            {
                Color = _Yellow
            })
                       .Translate(0, 0, 2);

            scene.Add(ovus);

            var torus = new Torus()
                        .AddModifiers(new Pigment()
            {
                Color = _Green
            })
                        .Translate(0, 0, 5);

            scene.Add(torus);

            var box = new Box()
                      .AddModifiers(new Pigment()
            {
                Color = _Red
            })
                      .Translate(0, 0, -2);

            scene.Add(box);

            var plane = new Plane()
            {
                Distance = -1
            };

            plane.AddModifiers(new Pigment()
            {
                Color = _RGB(1, 0.5, 0.25)
            });
            scene.Add(plane);

            var lathe = new Lathe()
                        .Add(2, 0).Add(3, 0).Add(3, 1).Add(2, 5).Add(2, 0)
                        .AddModifiers(new Pigment()
            {
                Color = _RGB(1, 1, 0.5)
            })
                        .Scale(0.25, 0.25, 0.25)
                        .Translate(2, 0, -2);

            scene.Add(lathe);

            var sor = new SurfaceOfRevolution()
                      .Add(2, 0).Add(3, 0).Add(1, 1).Add(2, 5).Add(2, 0)
                      .AddModifiers(new Pigment()
            {
                Color = _RGB(0.5, 1, 0.5)
            })
                      .Scale(0.25, 0.25, 0.25)
                      .Translate(2, 0, 2);

            scene.Add(sor);

            var path = engine.Render(scene, options, false);
        }