Show
Ignore:
Timestamp:
07/22/03 13:17:39 (5 years ago)
Author:
sholloway
Message:

*** empty log message ***

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/RBRapier/demo/Attic/SVG.old/display.py

    r631 r643  
    2626import logging 
    2727import sys 
     28import time 
    2829 
    2930from wxPython import wx 
     
    3435 
    3536from RBRapier.Renderer import SequenceMgr 
     37from RBRapier.Renderer import DisplayList 
    3638from RBRapier.Renderer.Environment import Buffers 
    3739from RBRapier.Renderer.View import Viewport 
     40from RBRapier.Renderer.View import Transformations 
     41from RBRapier.Renderer.View import TransformationSettings 
    3842 
    3943from RBRapier.Formats import SVG 
     
    7882        self.svgitems = [SVG.SVGSkinner.SkinFile(svgfile).object for svgfile in sys.argv[1:]] 
    7983 
    80         self.viewsetup = GLViewSetup(self.glcanvas
     84        self.viewsetup = GLViewSetup(self.glcanvas, 30
    8185        self.viewsetup.OnRender.Add(self.Initialize) 
    8286        self.viewsetup.OnRender.Add(self.Render) 
     87        self.viewsetup.OnRender.Add(self.PostRender) 
    8388        self.viewsetup.StartRendering() 
    8489 
     
    9398        self.root.AddElement(self.viewport, -2) 
    9499 
     100        self.projection = Transformations.OrthographicMgd(GL.GL_PROJECTION, True, -1, 1, -1, 1, -1, 1) 
     101        self.root.AddElement(self.projection.Select) 
     102        self.root.AddPostElement(self.projection.Deselect) 
     103 
     104        self.svgs = SequenceMgr.Sequence() 
    95105        svgrenderer = SVG.Renderers.Rapier.RapierRenderer() 
    96106        while self.svgitems: 
    97107            svg = self.svgitems.pop() 
    98             self.root.AddElement(svgrenderer.Display(svg)) 
     108            self.svgs.AddElement(svgrenderer.Display(svg)) 
     109 
     110        self.root.AddElement(self.Thing) 
     111        self.root.AddElement(self.svgs) 
    99112 
    100113    def Render(self, subject, canvas): 
    101114        self.viewport.SetRectangle(canvas.GetClientRect().asTuple()) 
     115        self.projection.Dimensions = 2, 2, 2 
     116        self.projection.AspectRatio = self.viewport.AspectRatio 
    102117        self.root.Execute(None) 
    103118 
    104         maxfps = 40 
    105         realfps = self.root.Statistics['persecond'] 
    106         targetfps = self.viewsetup.GetTargetFPS() 
    107         if realfps < 2*targetfps: 
    108             newtarget = min(maxfps, realfps*0.45) 
    109             self.viewsetup.SetTargetFPS(newtarget) 
    110             print "Lowering fps to:", newtarget, "old target:", targetfps, "real:", realfps 
     119        #maxfps = 40 
     120        #realfps = self.root.Statistics['persecond'] 
     121        #targetfps = self.viewsetup.GetTargetFPS() 
     122        #if realfps < 2*targetfps: 
     123        #    newtarget = min(maxfps, realfps*0.45) 
     124        #    self.viewsetup.SetTargetFPS(newtarget) 
     125        #    print "Lowering fps to:", newtarget, "old target:", targetfps, "real:", realfps 
     126 
     127    def Thing(self, *args): 
     128        GL.glRotated((3*time.clock())%360., 1, 0, 0) 
     129        GL.glRotated((2*time.clock())%360., 0, 1, 0) 
     130        GL.glRotated((1*time.clock())%360., 0, 0, 1) 
     131 
     132    def PostRender(self, glviewsetup, canvas): 
     133        glviewsetup.OnRender.Remove(self.PostRender) 
     134        DisplayList.DisplayList.InsertAspect(self.svgs) 
    111135 
    112136#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~