/[gzz]/gzz/gfx/demo/irregu3.py
ViewVC logotype

Diff of /gzz/gfx/demo/irregu3.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.5 by jvk, Fri Oct 18 11:39:16 2002 UTC revision 1.6 by jvk, Mon Oct 21 06:56:08 2002 UTC
# Line 6  tex = GL.createTexture() Line 6  tex = GL.createTexture()
6  #                       "scale", "0.15", "freq", "1", "df", "2",  #                       "scale", "0.15", "freq", "1", "df", "2",
7  #                       "scale2", "0.25", "freq2", "10", "df2", ".5"])  #                       "scale2", "0.25", "freq2", "10", "df2", ".5"])
8    
9  #tex.shade(16, 16, 0, 4, "RGBA", "RGBA",  ripple_scale = 0.25
10  #          "geometric", ["type", "7", "bias", "-0", "scale", "2"])  tex.shade_all_levels(256, 256, 0, 4, "RGBA", "RGBA",
11                         "irregu", ["radius", "2", str(ripple_scale), "0.25",
12                                    "scale", ".25", "bias", ".75", "eps", ".125"])
13    
14    
15    
# Line 24  irr = getDList(""" Line 26  irr = getDList("""
26    
27      BindTexture TEXTURE_2D %(texid)s      BindTexture TEXTURE_2D %(texid)s
28    
29        PushMatrix
30        Translate -.5 -.75 0
31    
32      # Try to convince the GL implementation to do      # Try to convince the GL implementation to do
33      # perspective correct color interpolation      # perspective correct color interpolation
34      Hint PERSPECTIVE_CORRECTION_HINT NICEST      Hint PERSPECTIVE_CORRECTION_HINT NICEST
35    
36      #Debug mountains      #Debug mountains
37      TexImage2D TEXTURE_2D 0 LUMINANCE_ALPHA 8 1 0 LUMINANCE_ALPHA \      #TexImage2D TEXTURE_2D 0 LUMINANCE_ALPHA 8 1 0 LUMINANCE_ALPHA \
38      .5 .5 1 1 .5 .5 .85 .85 .5 .5 .7 .7 .5 .5 .55 .55      .5 .5 1 1 .5 .5 .85 .85 .5 .5 .7 .7 .5 .5 .55 .55
39      TexParameter TEXTURE_2D TEXTURE_BASE_LEVEL 0      #TexParameter TEXTURE_2D TEXTURE_BASE_LEVEL 0
40      TexParameter TEXTURE_2D TEXTURE_MAX_LEVEL 0      #TexParameter TEXTURE_2D TEXTURE_MAX_LEVEL 0
41      TexParameter TEXTURE_2D TEXTURE_MIN_FILTER LINEAR      TexParameter TEXTURE_2D TEXTURE_MIN_FILTER LINEAR_MIPMAP_LINEAR
42      TexParameter TEXTURE_2D TEXTURE_MAG_FILTER LINEAR      TexParameter TEXTURE_2D TEXTURE_MAG_FILTER LINEAR
43            
44      Enable TEXTURE_2D      Enable TEXTURE_2D
# Line 44  irr = getDList(""" Line 49  irr = getDList("""
49      #BlendFunc SRC_ALPHA ONE_MINUS_SRC_ALPHA      #BlendFunc SRC_ALPHA ONE_MINUS_SRC_ALPHA
50      #Enable BLEND      #Enable BLEND
51      #Disable TEXTURE_2D      #Disable TEXTURE_2D
52        
53      Color 1 1 1 1      Color 1 1 1 1
54    
55        TexEnv TEXTURE_ENV TEXTURE_ENV_MODE MODULATE
56    
57      # Debug strip      # Debug strip
58      Begin QUAD_STRIP      Begin QUAD_STRIP
59      TexCoord 0 0 0 1      TexCoord 0 0 0 1
# Line 59  irr = getDList(""" Line 66  irr = getDList("""
66      Vertex %(e)s %(e)s 0 %(e)s      Vertex %(e)s %(e)s 0 %(e)s
67      End      End
68    
69        BlendFunc ZERO ZERO
70        Enable BLEND
71    
72        TexEnv TEXTURE_ENV TEXTURE_ENV_MODE COMBINE_ARB
73        TexEnv TEXTURE_ENV COMBINE_RGB_ARB DOT3_RGBA_ARB
74        TexEnv TEXTURE_ENV SOURCE0_RGB_ARB TEXTURE
75        TexEnv TEXTURE_ENV OPERAND0_RGB_ARB SRC_COLOR
76        TexEnv TEXTURE_ENV SOURCE1_RGB_ARB PREVIOUS_ARB
77        TexEnv TEXTURE_ENV OPERAND1_RGB_ARB SRC_COLOR
78    
79        # Ignored with dot3:
80        #TexEnv TEXTURE_ENV COMBINE_ALPHA_ARB REPLACE
81        #TexEnv TEXTURE_ENV SOURCE0_ALPHA_ARB TEXTURE
82        #TexEnv TEXTURE_ENV OPERAND0_ALPHA_ARB SRC_ALPHA
83        #TexEnv TEXTURE_ENV SOURCE1_ALPHA_ARB TEXTURE
84        #TexEnv TEXTURE_ENV OPERAND1_ALPHA_ARB SRC_ALPHA
85    
86        MatrixMode TEXTURE
87        LoadMatrix 1 0 0 0  0 1 0 0  0 0 1 0  0 0 0 1
88        MatrixMode MODELVIEW
89            
90        Begin QUAD_STRIP
91    
92        TexCoord 0 0 0 1
93        Color 1 .5 .5
94        Vertex 0 %(e)s 0 1
95    
96        TexCoord 0 0 0 %(e)s
97        Color .75 .5 .5
98        Vertex 0 %(e)s 0 %(e)s
99    
100        TexCoord 1 0 0 1
101        Color 1 .5 .5
102        Vertex 1 %(e)s 0 1
103    
104        TexCoord %(e)s 0 0 %(e)s
105        Color .75 .5 .5
106        Vertex %(e)s %(e)s 0 %(e)s
107    
108        End
109    
110        Disable BLEND
111    
112        TexEnv TEXTURE_ENV TEXTURE_ENV_MODE MODULATE
113    
114        #Translate 0 -1 0
115        #Scale 1 2 1
116    
117      Begin QUAD_STRIP      Begin QUAD_STRIP
118    
119      TexCoord 0 0 0 1      TexCoord 0 0 0 1
120      Color 0 0 0 1      Color 1 1 0 1
121      Vertex 0 %(e)s 0 1      Vertex 0 %(e)s 0 1
122    
123      TexCoord 0 0 0 %(e)s      TexCoord 0 0 0 %(e)s
124      Color 0 0 0 %(e)s      Color 1 1 0 %(e)s
125      Vertex 0 %(e)s 0 %(e)s      Vertex 0 %(e)s 0 %(e)s
126    
127      TexCoord 1 0 0 1      TexCoord 1 0 0 1
128      Color 0 0 0 1      Color 1 1 0 1
129      Vertex 1 %(e)s 0 1      Vertex 1 %(e)s 0 1
130    
131      TexCoord %(e)s 0 0 %(e)s      TexCoord %(e)s 0 0 %(e)s
132      Color 0 0 0 %(e)s      Color 1 1 0 %(e)s
133      Vertex %(e)s %(e)s 0 %(e)s      Vertex %(e)s %(e)s 0 %(e)s
134    
135      End      End
136    
137        PopMatrix
138            
139    
140      PopAttrib      PopAttrib
141  """ % vars())  """ % vars())
142    
143    
144    def getIrregu(x0, y0, x1, y1, s0, t0, s1, t1):
145        tlen = sqrt((s1 - s0)**2 + (t1 - t0)**2)
146        len =  sqrt((x1 - x0)**2 + (y1 - y0)**2)
147    
148    
149  class IrreguScene:  class IrreguScene:
150        def __init__(self):
151            self.scale = 8
152            
153      def scene(self, vs):      def scene(self, vs):
154          putnoc(vs, background((0.1,0.4,0.5)))          putnoc(vs, background((0.1,0.4,0.5)))
155    
156            cs1 = vs.coords.affineCoordsys(0, 0, 512, 384, 128*self.scale, 0, 0, -64*self.scale)
         cs1 = vs.coords.affineCoordsys(0, 0, 12, 700, 1000, 0, 0, -600)  
157          vs.matcher.add(cs1, "1")          vs.matcher.add(cs1, "1")
158    
159          vs.map.put(irr, cs1)          vs.map.put(irr, cs1)
160    
161      def key(self, k):      def key(self, k):
162          pass          if k == "+": self.scale *= 2.0
163            if k == "-": self.scale /= 2.0
164    
165  currentScene = IrreguScene()          currentScene = IrreguScene()        

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26