/[thuban]/trunk/thuban/Thuban/Model/layer.py
ViewVC logotype

Diff of /trunk/thuban/Thuban/Model/layer.py

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

revision 1587 by bh, Fri Aug 15 10:31:07 2003 UTC revision 1978 by bh, Tue Nov 25 14:30:34 2003 UTC
# Line 8  Line 8 
8    
9  __version__ = "$Revision$"  __version__ = "$Revision$"
10    
11    import os
12  import warnings  import warnings
13    
14  from Thuban import _  from Thuban import _
# Line 124  class Layer(BaseLayer): Line 125  class Layer(BaseLayer):
125    
126          self.UnsetModified()          self.UnsetModified()
127    
     def __getattr__(self, attr):  
         """Access to some attributes for backwards compatibility  
   
         The attributes implemented here are now held by the shapestore  
         if at all. For backwards compatibility pretend that they are  
         still there but issue a DeprecationWarning when they are  
         accessed.  
         """  
         if attr in ("table", "shapetable"):  
             value = self.store.Table()  
         elif attr == "shapefile":  
             value = self.store.Shapefile()  
         elif attr == "filename":  
             value = self.store.FileName()  
         else:  
             raise AttributeError, attr  
         warnings.warn("The Layer attribute %r is deprecated."  
                       " It's value can be accessed through the shapestore"  
                       % attr, DeprecationWarning, stacklevel = 2)  
         return value  
   
128      def SetShapeStore(self, store):      def SetShapeStore(self, store):
129          # Set the classification to None if there is a classification          # Set the classification to None if there is a classification
130          # and the new shapestore doesn't have a table with a suitable          # and the new shapestore doesn't have a table with a suitable
# Line 254  class Layer(BaseLayer): Line 234  class Layer(BaseLayer):
234          return self.store.Shape(index)          return self.store.Shape(index)
235    
236      def ShapesInRegion(self, bbox):      def ShapesInRegion(self, bbox):
237          """Return the ids of the shapes that overlap the box.          """Return an iterable over the shapes that overlap the bounding box.
238    
239          Box is a tuple (left, bottom, right, top) in unprojected coordinates.          The bbox parameter should be the bounding box as a tuple in the
240            form (minx, miny, maxx, maxy) in unprojected coordinates.
241          """          """
242          if self.projection is not None:          if self.projection is not None:
243              left, bottom, right, top = bbox              left, bottom, right, top = bbox
# Line 369  class RasterLayer(BaseLayer): Line 350  class RasterLayer(BaseLayer):
350          BaseLayer.__init__(self, title, visible = visible)          BaseLayer.__init__(self, title, visible = visible)
351    
352          self.projection = projection          self.projection = projection
353          self.filename = filename          self.filename = os.path.abspath(filename)
354    
355          self.bbox = -1          self.bbox = -1
356    

Legend:
Removed from v.1587  
changed lines
  Added in v.1978

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26