/[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 394 by jonathan, Mon Feb 10 15:27:13 2003 UTC revision 442 by jonathan, Thu Feb 27 15:55:25 2003 UTC
# Line 1  Line 1 
1  # Copyright (c) 2001, 2002 by Intevation GmbH  # Copyright (c) 2001, 2002, 2003 by Intevation GmbH
2  # Authors:  # Authors:
3  # Bernhard Herzog <[email protected]>  # Bernhard Herzog <[email protected]>
4    # Jonathan Coles <[email protected]>
5  #  #
6  # This program is free software under the GPL (>=v2)  # This program is free software under the GPL (>=v2)
7  # Read the file COPYING coming with Thuban for details.  # Read the file COPYING coming with Thuban for details.
8    
9  __version__ = "$Revision$"  __version__ = "$Revision$"
10    
11  from wxPython.wx import wxPoint, wxColour, wxPen, wxBrush, wxFont, \  from wxPython.wx import wxPoint, wxPen, wxBrush, wxFont, \
12       wxTRANSPARENT_PEN, wxTRANSPARENT_BRUSH, \       wxTRANSPARENT_PEN, wxTRANSPARENT_BRUSH, \
13       wxBLACK, wxSOLID, wxCROSS_HATCH, wxSWISS, wxNORMAL       wxBLACK, wxSOLID, wxCROSS_HATCH, wxSWISS, wxNORMAL
14    
15  from wxproj import draw_polygon_shape  from wxproj import draw_polygon_shape
16    
17  from Thuban import _  from Thuban import _
18    from Thuban.UI.common import *
19    
20  from Thuban.Model.layer import SHAPETYPE_POLYGON, SHAPETYPE_ARC, \  from Thuban.Model.layer import SHAPETYPE_POLYGON, SHAPETYPE_ARC, \
21       SHAPETYPE_POINT       SHAPETYPE_POINT
# Line 21  from Thuban.Model.label import ALIGN_CEN Line 23  from Thuban.Model.label import ALIGN_CEN
23       ALIGN_LEFT, ALIGN_RIGHT, ALIGN_BASELINE       ALIGN_LEFT, ALIGN_RIGHT, ALIGN_BASELINE
24    
25  from Thuban.Model.classification import Classification  from Thuban.Model.classification import Classification
26    from Thuban.Model.color import Color
27    
28    
29  class MapRenderer:  class MapRenderer:
# Line 78  class MapRenderer: Line 81  class MapRenderer:
81          old_prop = None          old_prop = None
82          for i in self.layer_ids(layer):          for i in self.layer_ids(layer):
83              value = None              value = None
84              shape = layer.Shape(i)              lc = layer.GetClassification()
             lc = layer.classification  
85              field = lc.field              field = lc.field
86    
87              if field is not None:              if field is not None:
# Line 94  class MapRenderer: Line 96  class MapRenderer:
96              #              #
97              prop = lc.GetProperties(value)              prop = lc.GetProperties(value)
98    
99              if prop != old_prop:              # don't recreate new objects if they are the same as before
100                if prop != old_prop:
101                  old_prop = prop                  old_prop = prop
102    
103                  if shapetype == SHAPETYPE_ARC:                  if shapetype == SHAPETYPE_ARC:
104                      fill = None                      fill = Color.None
105                  else:                  else:
106                      fill = prop.GetFill()                      fill = prop.GetFill()
107            
108                  if fill is None:                  if fill is Color.None:
109                      brush = wxTRANSPARENT_BRUSH                      brush = wxTRANSPARENT_BRUSH
110                  else:                  else:
111                      color = wxColour(fill.red * 255,                      color = Color2wxColour(fill)
                                      fill.green * 255,  
                                      fill.blue * 255)  
112                      brush = wxBrush(color, wxSOLID)                      brush = wxBrush(color, wxSOLID)
113            
114                  stroke = prop.GetStroke()                  stroke = prop.GetStroke()
115                  stroke_width = prop.GetStrokeWidth()                  stroke_width = prop.GetStrokeWidth()
116                  if stroke is None:                  if stroke is Color.None:
117                      pen = wxTRANSPARENT_PEN                      pen = wxTRANSPARENT_PEN
118                  else:                  else:
119                      color = wxColour(stroke.red * 255,                      color = Color2wxColour(stroke)
                                      stroke.green * 255,  
                                      stroke.blue * 255)  
120                      pen = wxPen(color, stroke_width, wxSOLID)                      pen = wxPen(color, stroke_width, wxSOLID)
121            
122              if shapetype == SHAPETYPE_POINT:              if shapetype == SHAPETYPE_POINT:

Legend:
Removed from v.394  
changed lines
  Added in v.442

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26