/[thuban]/branches/WIP-pyshapelib-bramz/Thuban/UI/renderer.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/Thuban/UI/renderer.py

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

revision 2551 by jonathan, Thu Jan 27 14:19:41 2005 UTC revision 2552 by jonathan, Fri Jan 28 15:54:00 2005 UTC
# Line 23  from wxPython.wx import wxPoint, wxRect, Line 23  from wxPython.wx import wxPoint, wxRect,
23      wxBLACK_PEN, wxBLACK, wxSOLID, wxCROSS_HATCH, wxSWISS, wxNORMAL, \      wxBLACK_PEN, wxBLACK, wxSOLID, wxCROSS_HATCH, wxSWISS, wxNORMAL, \
24      wxBitmapFromImage, wxImageFromStream, wxBITMAP_TYPE_BMP, \      wxBitmapFromImage, wxImageFromStream, wxBITMAP_TYPE_BMP, \
25      wxBITMAP_TYPE_JPEG, wxBITMAP_TYPE_PNG, wxBITMAP_TYPE_TIF, \      wxBITMAP_TYPE_JPEG, wxBITMAP_TYPE_PNG, wxBITMAP_TYPE_TIF, \
26      wxBITMAP_TYPE_GIF, wxEmptyImage, wxMask      wxBITMAP_TYPE_GIF, wxEmptyImage, wxMask, wxBitmapFromBits
27    
28  from wxproj import draw_polygon_shape, draw_polygon_init  from wxproj import draw_polygon_shape, draw_polygon_init
29    
# Line 107  class MapRenderer(BaseRenderer): Line 107  class MapRenderer(BaseRenderer):
107      def draw_raster_data(self, x,y, data, format = 'BMP'):      def draw_raster_data(self, x,y, data, format = 'BMP'):
108    
109          mask = None          mask = None
110    
111          if format == 'RAW':          if format == 'RAW':
112              image = wxEmptyImage(data[0], data[1])              image = wxEmptyImage(data[0], data[1])
113              image.SetData(data[2][0])              image.SetData(data[2][0])
114              if data[2][1] is not None:              if data[2][1] is not None:
115                  mask = wxEmptyImage(data[0], data[1])                  mask = wxBitmapFromBits(data[2][1], data[0], data[1], 1)
116                  mask.SetData(data[2][1])                  mask = wxMask(mask)
117          else:          else:
118              stream = cStringIO.StringIO(data[2][0])              stream = cStringIO.StringIO(data[2][0])
119              image = wxImageFromStream(stream, raster_format_map[format])              image = wxImageFromStream(stream, raster_format_map[format])
120              if data[2][1] is not None:              if data[2][1] is not None:
121                  stream = cStringIO.StringIO(data[2][1])                  stream = cStringIO.StringIO(data[2][1])
122                  mask = wxImageFromStream(stream, raster_format_map[format])                  mask = wxImageFromStream(stream, raster_format_map[format])
123                    mask = wxMask(wxBitmapFromImage(mask, 1))
124    
125          bitmap = wxBitmapFromImage(image)          bitmap = wxBitmapFromImage(image)
126            bitmap.SetMask(mask)
127    
128          if mask is None:          self.dc.DrawBitmap(bitmap, int(round(x)), int(round(y)), True)
             self.dc.DrawBitmap(bitmap, int(round(x)), int(round(y)), False)  
         else:  
             # if we are given a mask object, try to pass it to SetMaskColour,  
             # otherwise assume it's a mask image  
             try:  
                 bitmap.SetMask(wxMask(wxBitmapFromImage(mask, 1)))  
                 self.dc.DrawBitmap(bitmap, int(round(x)), int(round(y)), True)  
             except (TypeError):  
                 # implement using a mask image  
                 raise NotImplementedError  
129    
130    
131  class ScreenRenderer(MapRenderer):  class ScreenRenderer(MapRenderer):

Legend:
Removed from v.2551  
changed lines
  Added in v.2552

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26