Ignore:
Timestamp:
04/12/09 16:07:45 (11 years ago)
Author:
pnorton
Message:

Imroved the colour bar code so that a legend colour bar can be used without specifying any intervals.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • qesdi/geoplot/trunk/lib/geoplot/layer_drawer_grid_fast.py

    r5946 r6089  
    1212from geoplot.grid_builder_lat_lon_subset import GridBuilderLatLonSubset 
    1313 
     14import numpy 
     15 
     16from geoplot.colour_bar import COLOUR_BAR_STYLES 
     17 
    1418log = logging.getLogger(__name__) 
    1519 
     
    2024                 showGridLines=False,  
    2125                 cmap=None,  
     26                 numIntervals=None, 
    2227                 colourBarMin=None, 
    2328                 colourBarMax=None,  
     29                 hideOutside=False, 
    2430                 transparent=False, 
    2531                 colourBarScale='linear', 
     32                 colourBarStyle=COLOUR_BAR_STYLES.CONTINUOUS, 
    2633                 intervals=None,  
    2734                 bgcolour='white'): 
     
    2936        self._gridDrawer = GridDrawer() 
    3037        self._csBuilder = ColourSchemeBuilder() 
     38        self.numIntervals = numIntervals 
     39        self.hideOutside = hideOutside 
    3140         
     41        log.debug("self._csBuilder.hideOutsideBounds = %s" % (self._csBuilder.hideOutsideBounds,)) 
     42         
     43        self.colourBarStyle = colourBarStyle 
    3244        self.cdmsVar = cdmsVar 
    3345        self.showGridLines = showGridLines 
     
    8799        Creates a new grid object and draws it onto the axis. 
    88100        """ 
    89                  
    90         scheme = self._csBuilder.buildScheme(grid) 
     101         
     102             
     103         
     104        scheme = self._csBuilder.buildScheme(self.colourBarStyle, grid=grid) 
    91105        cmap = scheme.colourMap 
     106         
     107        grid = self._applyMask(grid, scheme, self.hideOutside) 
    92108         
    93109        if self.transparent: 
     
    102118                              cmap=cmap, 
    103119                              assumeBoundsParallel=True) 
    104          
     120     
     121 
     122                 
     123     
    105124    ### properties ### 
    106125                             
     
    146165     
    147166    projection = property(__get_projection, __set_projection, None, None) 
     167     
     168    def __set_numIntervals(self, value): 
     169 
     170        self._csBuilder.numIntervals = value 
     171 
     172    def __get_numIntervals(self): 
     173        return self._csBuilder.numIntervals 
     174         
     175    numIntervals = property(__get_numIntervals, __set_numIntervals, None, None) 
     176     
     177    def __set_hideOutside(self, value): 
     178        self._hideOutsideBounds = value 
     179 
     180    def __get_hideOutside(self): 
     181        return self._hideOutsideBounds 
     182         
     183    hideOutside = property(__get_hideOutside, __set_hideOutside, None, None) 
Note: See TracChangeset for help on using the changeset viewer.