Merge branch 'develop'

This commit is contained in:
Marcel Paffrath 2017-06-20 16:26:32 +02:00
commit d5a7e1f35f
7 changed files with 52 additions and 34 deletions

View File

@ -44,8 +44,8 @@ from obspy import UTCDateTime
try:
import pyqtgraph as pg
except:
print('QtPyLoT: Could not import pyqtgraph.')
except Exception as e:
print('QtPyLoT: Could not import pyqtgraph. {}'.format(e))
pg = None
try:
@ -943,9 +943,9 @@ class MainWindow(QMainWindow):
settings = QSettings()
fbasename = self.getEventFileName()
exform = settings.value('data/exportFormat', 'QUAKEML')
# try:
# self.get_data().applyEVTData(self.getPicks())
# except OverwriteError:
try:
self.get_data().applyEVTData(self.getPicks())
except OverwriteError:
# msgBox = QMessageBox()
# msgBox.setText("Picks have been modified!")
# msgBox.setInformativeText(
@ -955,11 +955,11 @@ class MainWindow(QMainWindow):
# msgBox.setDefaultButton(QMessageBox.Save)
# ret = msgBox.exec_()
# if ret == QMessageBox.Save:
# self.get_data().resetPicks()
# return self.saveData()
self.get_data().resetPicks()
return self.saveData()
# elif ret == QMessageBox.Cancel:
# return False
# MP MP changed due to new event structure not uniquely refering to data object
# MP MP changed to suppress unnecessary user prompt
try:
self.get_data().exportEvent(fbasename, exform)
except FormatError as e:
@ -985,7 +985,6 @@ class MainWindow(QMainWindow):
# export to given path
self.get_data().exportEvent(fbasename, exform)
# all files save (ui clean)
self.setDirty(False)
self.update_status('Picks saved as %s' % (fbasename + exform))
self.disableSaveManualPicksAction()
return True

View File

@ -130,21 +130,35 @@ def autoPyLoT(input_dict=None, parameter=None, inputfile=None, fnames=None, even
print("!!No source parameter estimation possible!!")
print(" !!! ")
datapath = datastructure.expandDataPath()
if fnames == 'None' and not parameter.hasParam('eventID'):
# multiple event processing
# read each event in database
events = [events for events in glob.glob(os.path.join(datapath, '*')) if os.path.isdir(events)]
elif fnames == 'None' and parameter.hasParam('eventID'):
# single event processing
events = glob.glob(os.path.join(datapath, parameter.get('eventID')))
if not input_dict:
# started in production mode
datapath = datastructure.expandDataPath()
if fnames == 'None' and not parameter['eventID']:
# multiple event processing
# read each event in database
events = [events for events in glob.glob(os.path.join(datapath, '*')) if os.path.isdir(events)]
elif fnames == 'None' and parameter['eventID']:
# single event processing
events = glob.glob(os.path.join(datapath, parameter.get('eventID')))
else:
# autoPyLoT was initialized from GUI
events = []
events.append(eventid)
evID = os.path.split(eventid)[-1]
locflag = 2
else:
# autoPyLoT was initialized from GUI
# started in tune mode
datapath = os.path.join(parameter['rootpath'],
parameter['datapath'])
events = []
events.append(eventid)
evID = os.path.split(eventid)[-1]
locflag = 2
events.append(os.path.join(datapath,
parameter['database'],
parameter['eventID']))
if not events:
print('autoPyLoT: No events given. Return!')
return
for event in events:
if fnames == 'None':
data.setWFData(glob.glob(os.path.join(datapath, event, '*')))
@ -385,9 +399,5 @@ if __name__ == "__main__":
cla = parser.parse_args()
try:
picks, mainFig = autoPyLoT(inputfile=str(cla.inputfile), fnames=str(cla.fnames),
eventid=str(cla.eventid), savepath=str(cla.spath))
except ValueError:
print("autoPyLoT was running in production mode.")
picks = autoPyLoT(inputfile=str(cla.inputfile), fnames=str(cla.fnames),
eventid=str(cla.eventid), savepath=str(cla.spath))

View File

@ -1 +1 @@
1b17-dirty
ab97-dirty

View File

@ -275,7 +275,11 @@ defaults = {'rootpath': {'type': str,
'wdttolerance': {'type': float,
'tooltip': 'maximum allowed deviation from Wadati-diagram',
'value': 1.0}
'value': 1.0},
'localMag': {'type': float,
'tooltip': 'maximum allowed deviation from Wadati-diagram',
'value': 1.0}
}
settings_main={
@ -297,7 +301,8 @@ settings_main={
'smoment':[
'vp',
'rho',
'Qp'],
'Qp',
'localMag'],
'pick':[
'extent',
'pstart',

View File

@ -239,8 +239,8 @@ class AICPicker(AutoPicker):
fig = self.fig
ax = fig.add_subplot(111)
x = self.Data[0].data
ax.plot(self.Tcf, x / max(x), 'k', legend='(HOS-/AR-) Data')
ax.plot(self.Tcf, aicsmooth / max(aicsmooth), 'r', legend='Smoothed AIC-CF')
ax.plot(self.Tcf, x / max(x), 'k', label='(HOS-/AR-) Data')
ax.plot(self.Tcf, aicsmooth / max(aicsmooth), 'r', label='Smoothed AIC-CF')
ax.legend()
ax.set_xlabel('Time [s] since %s' % self.Data[0].stats.starttime)
ax.set_yticks([])

View File

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
import sys
import sys, os
from PySide.QtCore import QThread, Signal, Qt
from PySide.QtGui import QDialog, QProgressBar, QLabel, QHBoxLayout
@ -64,7 +64,9 @@ class Thread(QThread):
except Exception as e:
self._executed = False
self._executedError = e
print(e)
exc_type, exc_obj, exc_tb = sys.exc_info()
fname = os.path.split(exc_tb.tb_frame.f_code.co_filename)[1]
print('Exception: {}, file: {}, line: {}'.format(exc_type, fname, exc_tb.tb_lineno))
sys.stdout = sys.__stdout__
def __del__(self):

View File

@ -2228,6 +2228,8 @@ class AutoPickParaBox(QtGui.QWidget):
if type(box) == QtGui.QLineEdit:
box.setText(str(value))
elif type(box) == QtGui.QSpinBox or type(box) == QtGui.QDoubleSpinBox:
if not value:
value = 0.
box.setValue(value)
elif type(box) == QtGui.QCheckBox:
if value == 'True':