def processFSZ(): """Compute attributes for Fault Source Zones: - activity parameters for background and buffer zone - """ global metadata print "loading FSZ layer" metadata['fsz_layer'] = faultsource.loadFaultSourceFromSHP( metadata['infile_name']) pr = metadata['fsz_layer'].dataProvider() pr.select() print "features:", pr.featureCount() print "fields:", pr.fieldCount() all_features = [feat.id() for feat in pr] #all_features = [120] metadata['fsz_layer'].setSelectedFeatures(all_features) print "loading FBZ layer" # load fault background layer from default file metadata['fbz_layer'] = faultbackground.loadFaultBackgroundFromSHP( FAULTBACKGROUND_DEFAULT_PATH) print "computing attributes for FSZ layer" engine.computeFSZ(metadata['fsz_layer'], metadata['fbz_layer'], metadata['background_layer'], metadata['catalog'], metadata['catalog'].timeSpan()[0], ui_mode=False) return metadata['fsz_layer']
def computeFSZ(self): """Compute attributes for selected feature in FSZ layer. Only one feature can be selected.""" if not utils.check_only_one_feature_selected(self.fault_source_layer): return (mindepth, maxdepth) = eqcatalog.getMinMaxDepth(self) engine.computeFSZ(self.fault_source_layer, self.fault_background_layer, self.background_zone_layer, self.catalog, self.catalog_time_span[0], m_threshold=self.spinboxFBZMThres.value(), mindepth=mindepth, maxdepth=maxdepth, ui_mode=True) self.showFSZ()