/[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 1165 by jonathan, Thu Jun 12 12:42:10 2003 UTC revision 1234 by jonathan, Wed Jun 18 14:47:38 2003 UTC
# Line 22  from wxPython.wx import wxMemoryDC, wxEm Line 22  from wxPython.wx import wxMemoryDC, wxEm
22      wxImageFromStream, wxBITMAP_TYPE_BMP      wxImageFromStream, wxBITMAP_TYPE_BMP
23    
24  from wxproj import draw_polygon_shape, draw_polygon_init  from wxproj import draw_polygon_shape, draw_polygon_init
 from gdalwarp import ProjectRasterFile  
25    
26  from Thuban.UI.common import Color2wxColour  from Thuban.UI.common import Color2wxColour
27  from Thuban.UI.classifier import ClassDataPreviewer  from Thuban.UI.classifier import ClassDataPreviewer
# Line 37  from Thuban.Model.classification import Line 36  from Thuban.Model.classification import
36  from Thuban.Model.color import Color  from Thuban.Model.color import Color
37  import Thuban.Model.resource  import Thuban.Model.resource
38    
39    if Thuban.Model.resource.has_gdal_support():
40        from gdalwarp import ProjectRasterFile
41    
42  class MapRenderer:  class MapRenderer:
43    
44      """Class to render a map onto a wxDC"""      """Class to render a map onto a wxDC"""
# Line 83  class MapRenderer: Line 85  class MapRenderer:
85          # and only begin drawing layers once we have drawn it.          # and only begin drawing layers once we have drawn it.
86          # That way we avoid drawing layers that won't be seen.          # That way we avoid drawing layers that won't be seen.
87          #          #
88          for layer in map.Layers():          if Thuban.Model.resource.has_gdal_support():
89              if isinstance(layer, RasterLayer) and layer.Visible():              for layer in map.Layers():
90                  seenRaster = False                  if isinstance(layer, RasterLayer) and layer.Visible():
91                  break                      seenRaster = False
92                        break
93    
94          for layer in map.Layers():          for layer in map.Layers():
95              # if honor_visibility is true, only draw visible layers,              # if honor_visibility is true, only draw visible layers,
# Line 129  class MapRenderer: Line 132  class MapRenderer:
132          else:          else:
133              draw_func = lambda i: \              draw_func = lambda i: \
134                     self.draw_polygon_shape(polygon_render_param, i, pen, brush)                     self.draw_polygon_shape(polygon_render_param, i, pen, brush)
135                
136            table = layer.ShapeStore().Table()
137          for i in self.layer_ids(layer):          for i in self.layer_ids(layer):
138    
139              if field is None:              if field is None:
140                  group = defaultGroup                  group = defaultGroup
141              else:              else:
142                  record = layer.table.ReadRowAsDict(i)                  record = table.ReadRowAsDict(i)
143                  assert record is not None                  assert record is not None
144                  group = lc.FindGroup(record[field])                  group = lc.FindGroup(record[field])
145    
# Line 232  class MapRenderer: Line 236  class MapRenderer:
236      def polygon_render_param(self, layer):      def polygon_render_param(self, layer):
237          """Return the low-lever render parameter for the layer"""          """Return the low-lever render parameter for the layer"""
238          offx, offy = self.offset          offx, offy = self.offset
239          return draw_polygon_init(layer.shapefile, self.dc,          return draw_polygon_init(layer.ShapeStore().Shapefile(), self.dc,
240                                   self.map.projection,                                   self.map.projection,
241                                   layer.projection,                                   layer.projection,
242                                   self.scale, -self.scale,                                   self.scale, -self.scale,

Legend:
Removed from v.1165  
changed lines
  Added in v.1234

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26