-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathglobes.scene
56 lines (45 loc) · 1.15 KB
/
globes.scene
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
pi = 3.14159
draw(plane(<0, 1, 0>, 25.01, red * 0.5, 0.2))
support_color = rgb(0.6, 0.5, 0.7)
support_reflection = 0.2
// Base
translate(0, -25, 0) do
scale(1, 0.1, 1)
translate(0, 20, 0)
a = cube(30)
base = csg(a, sphere(15), 'intersection', support_color, support_reflection)
end
draw(base)
// Support rod
translate(0, -20, 0) do
scale(1, 100, 1)
support = sphere(1)
support = csg(support, cube(10), 'intersection', support_color, support_reflection)
end
draw(support)
translate(0, 5, 0)
rotate(0, (2*pi) * 0.2, 0)
rotate(0.3, 0, 0) do
// Claw
scale(0.05, 1, 1)
translate(0, 0, 15)
a = cube(40)
b = csg(sphere(20), sphere(18), 'difference')
claw = csg(b, a, 'intersection', support_color, support_reflection)
// Globe
worldmap = texture("worldmap.png")
rotate(0, (pi * 2) * time, 0)
globe = sphere(15, worldmap)
// Glass globe
glass = sphere(15, blue, 0, 0.8)
// Axis rod
scale(1, 100, 1)
axis = sphere(1)
axis = csg(axis, cube(40), 'intersection', support_color * 0.7, support_reflection)
end
draw(claw)
draw(globe)
//draw(glass)
draw(axis)
append light(<0, 0, -35>, white * 0.5, 100)
set camera(<0, 10, -85>)