Root/sfy/ben.pov

Source at commit 77fdf5ab32b5dedf49359659cad80b71e7bf6f4a created 13 years 5 months ago.
By Werner Almesberger, ben-pcb-domes is done at 1 mm and 500 um.
1#include "colors.inc"
2#include "dispshell.inc"
3#include "dispbase.inc"
4/* lcdpcb */
5/* lcd */
6#include "lcdframe.inc"
7/* screen */
8#include "baseframe.inc"
9#include "kbd.inc"
10/* pcb */
11#include "bottom.inc"
12/* battery */
13#include "batcvr.inc"
14
15/*
16 * POV-Ray defaults to a "camera" coordinate system that can be confusing.
17 * We use a traditional mathematical/engineering view, with a view from
18 * X-/Y-/Z+ into the X/Y plane.
19 */
20
21camera {
22    location <30, -920, 300>
23    look_at <0, 20, 20>
24    sky z
25    right -2/1*x
26    angle 18
27}
28
29background { color White }
30
31light_source {
32    <-200, -300, 200>
33    color White
34}
35
36light_source {
37    <0, -100, 30>
38    color White
39}
40
41/*
42 * Mark the coordinate axes:
43 * - a red unit sphere at the center
44 * - three green spheres at x = 10*i
45 * - two blue spheres at y = 10*i
46 * - one yellow sphere at z = 10
47 */
48
49#declare Finish = finish {
50    brilliance 2
51    phong 0.8
52    phong_size 100
53    metallic
54    ambient 0.5
55}
56
57#declare All = union {
58    object {
59        Part_dispshell
60        pigment { rgb <0.8, 0.8, 0.8> }
61        finish { Finish }
62        rotate <0, 0, 180>
63        translate <0, 0, 80>
64    }
65
66    object {
67        Part_dispbase
68        pigment { rgb <0.25, 0, 0.75> }
69        finish { Finish }
70        rotate <0, 0, 180>
71        translate <0, 0, 70>
72    }
73
74    /* lcdpcb 60 <0.5, 0. 0.5> */
75    /* lcd 50 <1, 0, 0> */
76
77    object {
78        Part_lcdframe
79        pigment { rgb <0.75, 0, 0.25> }
80        finish { Finish }
81        rotate <180, 0, 0>
82        translate <0, 0, 40>
83    }
84
85    /* screen 30 <1, 0, 0> */
86
87    object {
88        Part_baseframe
89        pigment { rgb <0.5, 0.5, 0> }
90        finish { Finish }
91        translate <0, 0, 20>
92    }
93
94    object {
95        Part_kbd
96        pigment { rgb <0, 1, 0> }
97        finish { Finish }
98        translate <0, 0, 10>
99    }
100
101    /* pcb 0 <0, 0.75, 0.25> */
102
103    object {
104        Part_bottom
105        pigment { rgb <0, 0.5, 0.5> }
106        finish { Finish }
107        translate <0, 0, -10>
108    }
109
110    /* battery -20 <0, 0.25, 0.75> */
111
112    object {
113        Part_batcvr
114        pigment { rgb <0, 0, 1> }
115        finish { Finish }
116        rotate <0, 180, 0>
117        translate <0, 0, -30>
118    }
119}
120
121object { All }
122
123object {
124    All
125    rotate <0, 0, 90>
126    translate <-110, 50, 0>
127}
128
129object {
130    All
131    rotate <0, 0, -90>
132    translate <110, 50, 0>
133}
134

Archive Download this file

Branches:
master



interactive