]>
Commit | Line | Data |
---|---|---|
1 | ///////////////////////////////////////////////////////////////////////////// | |
2 | // Name: splash.pov | |
3 | // Purpose: POV-Ray scene used to generate splash image for wxWidgets | |
4 | // Author: Wlodzimierz ABX Skiba | |
5 | // Modified by: | |
6 | // Created: 04/08/2004 | |
7 | // Copyright: (c) Wlodzimierz Skiba | |
8 | // Licence: wxWindows licence | |
9 | ///////////////////////////////////////////////////////////////////////////// | |
10 | ||
11 | #version 3.6; | |
12 | ||
13 | // Rendering options : +FN +W638 +H478 +AM1 +A0.05 +R5 | |
14 | ||
15 | #include "colors.inc" | |
16 | #include "rad_def.inc" | |
17 | #include "screen.inc" | |
18 | #include "shapes.inc" | |
19 | ||
20 | global_settings { | |
21 | assumed_gamma 1.0 | |
22 | radiosity {} | |
23 | } | |
24 | ||
25 | #local Location = <0,5,-100> ; | |
26 | Set_Camera_Location(Location) | |
27 | Set_Camera_Look_At(<0,0,0>) | |
28 | ||
29 | background { rgb White } | |
30 | ||
31 | light_source { 1000*y color White } | |
32 | light_source { Location color White } | |
33 | ||
34 | union{ | |
35 | Center_Object( text { | |
36 | ttf | |
37 | "crystal.ttf", | |
38 | ". wxWidgets ." | |
39 | .01, 0 | |
40 | scale 20 translate 22*y | |
41 | pigment { color Black } | |
42 | } , x ) | |
43 | Center_Object( text { | |
44 | ttf | |
45 | "crystal.ttf", | |
46 | ". Cross-Platform GUI Library ." | |
47 | .01, 0 | |
48 | scale 10 translate 10*y | |
49 | pigment { color Black } | |
50 | } , x ) | |
51 | Center_Object( text { | |
52 | ttf | |
53 | "crystal.ttf", | |
54 | ". wxSplashScreen sample ." | |
55 | .01, 0 | |
56 | scale 2 translate 3 * y translate -z*84 | |
57 | pigment { color Gray } | |
58 | } , x ) | |
59 | plane { y 0 pigment { checker Black White } } | |
60 | rotate z*25 | |
61 | } | |
62 | ||
63 | #local Square = mesh { | |
64 | triangle { <0,0,0> <0,1,0> <1,0,0> } | |
65 | triangle { <1,1,0> <0,1,0> <1,0,0> } | |
66 | } | |
67 | ||
68 | #macro Round_Cone3(PtA, RadiusA, PtB, RadiusB, UseMerge) | |
69 | #local Axis = vnormalize(PtB - PtA); | |
70 | #local Len = VDist(PtA, PtB); | |
71 | #local SA = atan2(RadiusB - RadiusA, Len); | |
72 | ||
73 | #local Pt_A = PtA + Axis*RadiusA; | |
74 | #local Pt_B = PtB - Axis*RadiusB; | |
75 | ||
76 | #if(UseMerge) | |
77 | merge { | |
78 | #else | |
79 | union { | |
80 | #end | |
81 | cone {Pt_A, RadiusA, Pt_B, RadiusB} | |
82 | sphere {Pt_A + Axis*tan(SA)*RadiusA, RadiusA/cos(SA)} | |
83 | sphere {Pt_B + Axis*tan(SA)*RadiusB, RadiusB/cos(SA)} | |
84 | } | |
85 | #end | |
86 | ||
87 | #local Line = object { | |
88 | Round_Cone3_Union( <.15,.15,0>, .05, <.15,.9,0>, .05) | |
89 | pigment { color White } | |
90 | finish { ambient 1 diffuse 0 } | |
91 | scale <1,1,.01> | |
92 | } | |
93 | ||
94 | #macro Put_Square ( With_Pigment , At_Location , Order ) | |
95 | #local Next_Square = union{ | |
96 | object{ Square pigment { With_Pigment } } | |
97 | object{ Line } | |
98 | scale .15 | |
99 | }; | |
100 | Screen_Object (Next_Square, At_Location, 0, false, .1 + Order / 100 ) | |
101 | #end | |
102 | ||
103 | Put_Square( pigment {color Red} , <0.65,0.1> , 3 ) | |
104 | Put_Square( pigment {color Blue} , <0.72,0.2> , 2 ) | |
105 | Put_Square( pigment {color Yellow} , <0.81,0.13> , 1 ) | |
106 | ||
107 |