Merge branch 'develop' into compare_events
This commit is contained in:
		
						commit
						f4fc067f16
					
				| @ -9,6 +9,7 @@ import subprocess | ||||
| 
 | ||||
| import numpy as np | ||||
| from obspy import UTCDateTime, read | ||||
| from obspy.core import AttribDict | ||||
| from obspy.signal.rotate import rotate2zne | ||||
| from obspy.io.xseed.utils import SEEDParserException | ||||
| 
 | ||||
| @ -95,6 +96,8 @@ def excludeQualityClasses(picks, qClasses, timeerrorsP, timeerrorsS): | ||||
| 
 | ||||
|     for station, phases in picks.items(): | ||||
|         for phase, pick in phases.items(): | ||||
|             if not type(pick) in [AttribDict, dict]: | ||||
|                 continue | ||||
|             pickerror = phaseError[identifyPhaseID(phase)] | ||||
|             quality = getQualityFromUncertainty(pick['spe'], pickerror) | ||||
|             if not quality in qClasses: | ||||
|  | ||||
| @ -2031,20 +2031,77 @@ class CanvasWidget(QWidget): | ||||
|         self.main_layout.addWidget(canvas) | ||||
| 
 | ||||
| 
 | ||||
| class AutoPickWidget(QWidget): | ||||
| class MultiEventWidget(QWidget): | ||||
|     start = Signal() | ||||
|     ''' | ||||
| 
 | ||||
|     ''' | ||||
|     def __init__(self, pickoptions=None, parent=None, windowflag=1): | ||||
|         QtGui.QWidget.__init__(self, parent, windowflag) | ||||
| 
 | ||||
|         self.pickoptions = pickoptions | ||||
|         # self.pickoptions =[('current event', None), | ||||
|         #                    ('tune events', None), | ||||
|         #                    ('test events', None), | ||||
|         #                    ('all (picked)', None), | ||||
|         #                    ('all events', None)] | ||||
| 
 | ||||
|         self.setupUi() | ||||
|         # set initial size | ||||
|         self.resize(1280, 720) | ||||
| 
 | ||||
|     def setupUi(self): | ||||
|         # init main layout | ||||
|         self.main_layout = QtGui.QVBoxLayout() | ||||
|         self.setLayout(self.main_layout) | ||||
|         # init main splitter | ||||
|         self.main_splitter = QtGui.QSplitter() | ||||
|         self.main_splitter.setChildrenCollapsible(False) | ||||
| 
 | ||||
|         self.init_checkboxes() | ||||
| 
 | ||||
|         self.eventbox = QtGui.QComboBox() | ||||
|         self.button_clear = QtGui.QPushButton('Clear') | ||||
| 
 | ||||
|         self.main_layout.insertWidget(1, self.main_splitter) | ||||
| 
 | ||||
|         self.main_layout.setStretch(0, 0) | ||||
|         self.main_layout.setStretch(1, 1) | ||||
|         self.main_splitter.setStretchFactor(0, 1) | ||||
|         self.main_splitter.setStretchFactor(1, 2) | ||||
| 
 | ||||
|     def init_checkboxes(self): | ||||
|         self.rb_layout = QtGui.QHBoxLayout() | ||||
| 
 | ||||
|         self.rb_dict = {} | ||||
| 
 | ||||
|         self.start_button = QtGui.QPushButton('Start') | ||||
| 
 | ||||
|         for index, (key, func) in enumerate(self.pickoptions): | ||||
|             rb = QtGui.QRadioButton(key) | ||||
|             if index == 0: | ||||
|                 rb.setChecked(True) | ||||
|             self.rb_dict[key] = rb | ||||
|             self.rb_layout.insertWidget(index, rb) | ||||
|             self.rb_layout.setStretch(index, 0) | ||||
| 
 | ||||
|         self.rb_layout.addWidget(self.start_button) | ||||
| 
 | ||||
|         self.rb_layout.addWidget(QtGui.QWidget()) | ||||
|         self.rb_layout.setStretch(len(self.pickoptions)+1, 1) | ||||
| 
 | ||||
|         self.main_layout.insertLayout(0, self.rb_layout) | ||||
| 
 | ||||
| 
 | ||||
| class AutoPickWidget(MultiEventWidget): | ||||
|     ''' | ||||
|     ''' | ||||
| 
 | ||||
|     def __init__(self, parent, pickoptions): | ||||
|         QtGui.QWidget.__init__(self, parent, 1) | ||||
|         self.pickoptions = pickoptions | ||||
|         self.setupUi() | ||||
|         MultiEventWidget.__init__(self, pickoptions, parent, 1) | ||||
|         self.connect_buttons() | ||||
|         self.reinitEvents2plot() | ||||
|         self.setWindowTitle('Autopick events interactively') | ||||
|         # set initial size | ||||
|         self.resize(1280, 720) | ||||
| 
 | ||||
|     def setupUi(self): | ||||
|         # init main layout | ||||
| @ -2069,7 +2126,7 @@ class AutoPickWidget(QWidget): | ||||
|         self.main_splitter.setStretchFactor(1, 2) | ||||
| 
 | ||||
|     def connect_buttons(self): | ||||
|         self.start_button.clicked.connect(self.start_picker) | ||||
|         self.start_button.clicked.connect(self.run) | ||||
|         self.button_clear.clicked.connect(self.reinitEvents2plot) | ||||
| 
 | ||||
|     def init_checkboxes(self): | ||||
| @ -2169,7 +2226,7 @@ class AutoPickWidget(QWidget): | ||||
|                 tooltip = 'No events for this selection' | ||||
|             self.rb_dict[key].setToolTip(tooltip) | ||||
| 
 | ||||
|     def start_picker(self): | ||||
|     def run(self): | ||||
|         self.refresh_plot_tabs() | ||||
|         self.start.emit() | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user