def __init__(self, sitecol, integration_distance, use_rtree=True): self.integration_distance = integration_distance self.sitecol = sitecol self.use_rtree = use_rtree and integration_distance and rtree if self.use_rtree: fixed_lons, self.idl = fix_lons_idl(sitecol.lons) self.index = rtree.index.Index() for sid, lon, lat in zip(sitecol.sids, fixed_lons, sitecol.lats): self.index.insert(sid, (lon, lat, lon, lat))
def __init__(self, sitecol, integration_distance, use_rtree=True): self.integration_distance = integration_distance self.sitecol = sitecol self.use_rtree = use_rtree and rtree and ( integration_distance and sitecol is not None) if self.use_rtree: fixed_lons, self.idl = fix_lons_idl(sitecol.lons) self.index = rtree.index.Index() for sid, lon, lat in zip(sitecol.sids, fixed_lons, sitecol.lats): self.index.insert(sid, (lon, lat, lon, lat)) if rtree is None: logging.info('Using distance filtering [no rtree]')
def __init__(self, sitecol, integration_distance): assert integration_distance, 'Must be set' self.integration_distance = integration_distance self.sitecol = sitecol if rtree: fixed_lons, self.idl = fix_lons_idl(sitecol.lons) if self.idl: # longitudes -> longitudes + 360 degrees sitecol.complete.lons[sitecol.sids] = fixed_lons self.index = rtree.index.Index() for sid, lon, lat in zip(sitecol.sids, sitecol.lons, sitecol.lats): self.index.insert(sid, (lon, lat, lon, lat)) else: logging.warn('Cannot find the rtree module, using slow filtering')