def _generate_mask(self, interval, r_id): """ Actually generates a mask for a given interval and region (r_id) """ # Get GRASS interface instance g = grass.get_g() # Generate a random map name mapname = g.generate_map_name("mask") if r_id in self.bins.keys(): bins = self.bins[r_id] elif "__default" in self.bin.keys(): bins = self.bins["__default"] else: self.log.error("Could not find any phenology bins for generating mask") # Find what bin the interval lies within for d_range, mean in bins.items(): if interval >= d_range[0] and interval <= d_range[1]: g.mapcalc( mapname, "if(%s>=%f,if(%s<=%f,1,0),0)" % (self.p_map_names[r_id], d_range[0], self.p_map_names[r_id], d_range[1]), ) grassmap_mask = GrassMap(mapname) grassmap_mask.temporary = True return grassmap_mask self.log.debug("No appropriate interval range found for interval %d" % interval)
def _generate_mask(self, interval, r_id): """ Actually generates a mask for a given interval and region (r_id) """ # Get GRASS interface instance g = grass.get_g() # Generate a random map name mapname = g.generate_map_name("mask") if r_id in self.bins.keys(): bins = self.bins[r_id] elif "__default" in self.bin.keys(): bins = self.bins["__default"] else: self.log.error( "Could not find any phenology bins for generating mask") # Find what bin the interval lies within for d_range, mean in bins.items(): if interval >= d_range[0] and interval <= d_range[1]: g.mapcalc(mapname, "if(%s>=%f,if(%s<=%f,1,0),0)" % (self.p_map_names[ r_id], d_range[0], self.p_map_names[r_id], d_range[1])) grassmap_mask = GrassMap(mapname) grassmap_mask.temporary = True return grassmap_mask self.log.debug( "No appropriate interval range found for interval %d" % interval)