Newer
Older
# -*- coding: utf-8 -*-
"""
/***************************************************************************

Benjamin Jakimow
committed
EO Time Series Viewer
-------------------
begin : 2017-08-04
git sha : $Format:%H$
copyright : (C) 2017 by HU-Berlin
email : benjamin.jakimow@geo.hu-berlin.de
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
"""
# noinspection PyPep8Naming
__version__ = '1.9' # sub-subversion number is added automatically

Benjamin Jakimow
committed
DESCRIPTION = 'Visualization of multi-sensor Earth observation time series data.'
HOMEPAGE = 'https://bitbucket.org/jakimowb/eo-time-series-viewer'
DOCUMENTATION = 'http://eo-time-series-viewer.readthedocs.io/en/latest/'
REPOSITORY = 'https://bitbucket.org/jakimowb/eo-time-series-viewer'
AUTHOR = 'Benjamin Jakimow'
MAIL = 'benjamin.jakimow@geo.hu-berlin.de'
HOMEPAGE = 'https://bitbucket.org/jakimowb/eo-time-series-viewer'
ISSUE_TRACKER = 'https://bitbucket.org/jakimowb/eo-time-series-viewer/issues'
CREATE_ISSUE = 'https://bitbucket.org/jakimowb/eo-time-series-viewer/issues/new'
import os, sys, fnmatch, site, re, site
jp = os.path.join
dn = os.path.dirname
from qgis.core import QgsApplication, Qgis
from qgis.PyQt.QtGui import QIcon

benjamin.jakimow@geo.hu-berlin.de
committed
mkdir = lambda p: os.makedirs(p, exist_ok=True)

benjamin.jakimow@geo.hu-berlin.de
committed
DIR = os.path.dirname(__file__)
DIR_REPO = os.path.dirname(DIR)
DIR_UI = jp(DIR, *['ui'])
DIR_DOCS = jp(DIR, 'docs')
DIR_EXAMPLES = jp(DIR_REPO, 'example')
PATH_EXAMPLE_TIMESERIES = jp(DIR_EXAMPLES,'ExampleTimeSeries.csv')

Benjamin Jakimow
committed
PATH_LICENSE = jp(DIR_REPO, 'LICENSE.md')

Benjamin Jakimow
committed
PATH_ABOUT = jp(DIR_REPO, 'ABOUT.html')
OPENGL_AVAILABLE = False
OPENGL_AVAILABLE = True
except:
pass
# skip imports when on RTD, as we can not install the full QGIS environment as required
# https://docs.readthedocs.io/en/stable/builds.html
if not os.environ.get('READTHEDOCS') in ['True', 'TRUE', True]:
from .externals.qps.crosshair.crosshair import CrosshairStyle, CrosshairWidget, CrosshairMapCanvasItem, CrosshairDialog, getCrosshairStyle
from .externals.qps.plotstyling.plotstyling import PlotStyle, PlotStyleDialog, PlotStyleButton, PlotStyleWidget
from .externals.qps.classification.classificationscheme import ClassificationScheme, ClassInfo, ClassificationSchemeComboBox, ClassificationSchemeWidget, ClassificationSchemeDialog, hasClassification
from .externals.qps.models import Option, OptionListModel, TreeNode, TreeModel, TreeView
from .externals.qps.speclib.spectrallibraries import SpectralLibrary, SpectralProfile, SpectralLibraryPanel, SpectralLibraryWidget
from .externals.qps.layerproperties import LayerFieldConfigEditorWidget
from .externals.qps.maptools import *
from .externals.qps.utils import *
def messageLog(msg, level=None):
"""
:param msg: log message string
:param level: QgsMessageLog::MessageLevel with MessageLevel =[INFO | ALL | WARNING | CRITICAL | NONE]
"""
QgsApplication.instance().messageLog().logMessage(msg, 'EO TSV', level)

benjamin.jakimow@geo.hu-berlin.de
committed
def initResources():
"""
Loads (or reloads) required Qt resources
:return:
"""
try:
import eotimeseriesviewer.ui.resources
eotimeseriesviewer.ui.resources.qInitResources()
print('Unable to initialize EO Time Series Viewer resources', file=sys.stderr)
import eotimeseriesviewer.externals.qps.qpsresources
eotimeseriesviewer.externals.qps.qpsresources.qInitResources()
print('Unable to import qps resources', file=sys.stderr)
def initEditorWidgets():
"""
Initialises QgsEditorWidgets
"""
import eotimeseriesviewer.externals.qps as qps
def initAll():
"""
Calls all required init routines
:return:
"""
initResources()
initEditorWidgets()
def icon()->QIcon:
"""
Returns the EO Time Series Viewer icon
:return: QIcon
"""
path = os.path.join(os.path.dirname(__file__), 'icon.png')
return QIcon(path)