]> git.saurik.com Git - wxWidgets.git/blame - samples/splash/press.pov
wxMediaCtrl in wxSplashScreen presentation.
[wxWidgets.git] / samples / splash / press.pov
CommitLineData
b1096e45
WS
1/////////////////////////////////////////////////////////////////////////////
2// Name: press.pov
3// Purpose: POV-Ray scene used to generate clip for splash
4// Author: Wlodzimierz ABX Skiba
5// Modified by:
6// Created: 24/11/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 +W80 +H60 +AM1 +A0.05 +R5 +J0 +KFF99
15
16#include "colors.inc"
17#include "rad_def.inc"
18
19global_settings {
20 assumed_gamma 1.0
21 max_trace_level 100
22}
23
24background { colour White }
25
26#declare Texts = array[ 3 ];
27
28#declare Texts[0] = "PRESS";
29#declare Texts[1] = "ANY";
30#declare Texts[2] = "KEY";
31
32camera{ orthographic look_at .5 location .5-z right 1.05*x up 1.05*y }
33
34#declare Items = dimension_size( Texts , 1 );
35
36#declare Objects = array[ Items + 1 ];
37
38#declare f_line = function(x,xa,ya,xb,yb){((yb-ya)/(xb-xa))*(x-xa)+ya};
39
40#declare Counter = 0;
41#while ( Counter <= Items )
42 #if ( Counter < Items )
43 #declare Object = text{ ttf "crystal.ttf" Texts[ Counter ] 1 0 };
44 #else
45 #declare Object = Objects[ Items ];
46 #end
47
48 #declare M = max_extent( Object );
49 #declare m = min_extent( Object );
50 #declare S = M - m;
51 #declare Objects[ Counter ] = object{ Object translate -m + z*Counter scale <1/S.x,1/S.y,1> };
52 #declare Objects[ Items ] =
53 #if ( Counter = 0 | Counter = Items )
54 object{
55 #else
56 union{
57 object{ Objects[ Items ] translate y*1.1 }
58 #end
59 object{ Objects[ Counter ] }
60 };
61
62 #declare X0=Counter/(Items+1);
63 #declare Y0=0;
64 #declare X1=(Counter+1)/(Items+1);
65 #declare Y1=1;
66 #declare X2=(Counter+2)/(Items+1);
67 #declare Y2=0;
68
69 #declare increase=f_line(clock,X0,Y0,X1,Y1);
70 #declare decrease=f_line(clock,X1,Y1,X2,Y2);
71 #declare change=min(increase,decrease);
72 #declare level=max(change,0);
73
74 object{
75 Objects[ Counter ]
76 pigment{ rgb level transmit 1-level }
77 }
78 #declare Counter = Counter + 1;
79#end
80