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