summaryrefslogtreecommitdiffstats
path: root/dimension/tests/demo.dmnsn
diff options
context:
space:
mode:
Diffstat (limited to 'dimension/tests/demo.dmnsn')
-rw-r--r--dimension/tests/demo.dmnsn134
1 files changed, 134 insertions, 0 deletions
diff --git a/dimension/tests/demo.dmnsn b/dimension/tests/demo.dmnsn
new file mode 100644
index 0000000..47c0d76
--- /dev/null
+++ b/dimension/tests/demo.dmnsn
@@ -0,0 +1,134 @@
+#########################################################################
+# Copyright (C) 2010-2011 Tavian Barnes <tavianator@tavianator.com> #
+# #
+# This file is part of The Dimension Test Suite. #
+# #
+# The Dimension Test Suite is free software; you can redistribute it #
+# and/or modify it under the terms of the GNU General Public License as #
+# published by the Free Software Foundation; either version 3 of the #
+# License, or (at your option) any later version. #
+# #
+# The Dimension Test Suite is distributed in the hope that it will be #
+# useful, but WITHOUT ANY WARRANTY; without even the implied warranty #
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU #
+# General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+#########################################################################
+
+# Camera
+camera = PerspectiveCamera(location = (0, 0.25, -4),
+ look_at = 0)
+camera.transform(rotate(53*Y))
+
+# Lights
+lights = [
+ PointLight(location = (-15, 20, 10), color = White),
+]
+
+# Objects
+
+hollow_cube = Difference(
+ [
+ Box(
+ (-1, -1, -1), (1, 1, 1),
+
+ texture = Texture(
+ pigment = Color(0, 0, 1, trans = 0.75, filter = 1/3),
+ finish = Reflection(0.5),
+ ),
+ interior = Interior(
+ ior = 1.1,
+ ),
+ )
+ .transform(rotate(45*X)),
+
+ Sphere(
+ center = 0, radius = 1.25,
+ texture = Texture(
+ pigment = Green,
+ finish = Phong(strength = 0.2, size = 40),
+ ),
+ )
+ ],
+)
+
+arrow = Union(
+ [
+ Cylinder(bottom = -1.25*Y, top = 1.25*Y, radius = 0.1),
+ Cone(
+ bottom = 1.25*Y, bottom_radius = 0.1,
+ top = 1.5*Y, top_radius = 0,
+ open = True
+ ),
+ ],
+ texture = Texture(
+ pigment = ColorMap(
+ Gradient(Y),
+ {
+ 0/6: Red,
+ 1/6: Orange,
+ 2/6: Yellow,
+ 3/6: Green,
+ 4/6: Blue,
+ 5/6: Magenta,
+ 6/6: Red,
+ },
+ )
+ .transform(scale(1, 2.75, 1))
+ .transform(translate(-1.25*Y)),
+ ),
+)
+arrow.transform(rotate(-45*X))
+
+torii = Union(
+ [
+ Torus(major_radius = 0.15, minor_radius = 0.05)
+ .transform(translate(-Y)),
+
+ Torus(major_radius = 0.15, minor_radius = 0.05),
+
+ Torus(major_radius = 0.15, minor_radius = 0.05)
+ .transform(translate(Y)),
+ ],
+ texture = Texture(
+ pigment = Blue,
+ finish = Ambient(1),
+ ),
+)
+torii.transform(rotate(-45*X))
+
+ground = Plane(
+ normal = Y, distance = -2,
+
+ texture = Texture(
+ pigment = PigmentMap(
+ Checker(),
+ [
+ White,
+ ColorMap(Checker(), [Black, White]).transform(scale(1/3))
+ ],
+ ),
+ ),
+)
+
+objects = [
+ hollow_cube,
+ arrow,
+ torii,
+ ground,
+]
+
+# Sky sphere
+sky_sphere = SkySphere(
+ [
+ ColorMap(
+ pattern = Gradient(Y),
+ map = {
+ 0: Orange,
+ 0.35: Color(0, 0.1, 0.2, trans = 0.1, filter = 0.0),
+ },
+ ),
+ ]
+)