From 7eed48e4ac1394087a63f0b9998cc34dea270d67 Mon Sep 17 00:00:00 2001 From: mjames-upc Date: Wed, 4 May 2016 15:26:31 -0500 Subject: [PATCH] GFE perspective fixes and improvements for 16.1.5 --- .../help/ifpServerStartup.html | 2 +- .../dialogs/WeatherElementBrowserDialog.java | 63 +++++----- .../viz/gfe/perspective/GFEPerspective.java | 5 +- .../localization/menus/obs/index.xml | 4 +- .../common_static/base/gfe/vcmodule/iscQPF.py | 107 ----------------- .../base/gfe/vcmodule/iscSnowAmt.py | 108 ------------------ .../base/gfe/vcmodule/iscmaxt.py | 95 --------------- .../base/gfe/vcmodule/iscmint.py | 94 --------------- .../common_static/base/gfe/vcmodule/iscpop.py | 108 ------------------ .../gfe/vcmodule/utility/VCModuleInterface.py | 59 ---------- .../base/grid/dataset/alias/gfeParamInfo.xml | 4 +- .../grid/datasetInfo/gribDatasets_NCEP-7.xml | 2 +- .../base/grid/dataset/alias/d2d-title.xml | 58 +--------- .../base/styleRules/d2dContourStyleRules.xml | 58 +++++----- 14 files changed, 63 insertions(+), 704 deletions(-) delete mode 100644 edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscQPF.py delete mode 100644 edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscSnowAmt.py delete mode 100644 edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmaxt.py delete mode 100644 edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmint.py delete mode 100644 edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscpop.py delete mode 100644 edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/utility/VCModuleInterface.py diff --git a/cave/com.raytheon.viz.gfe/help/ifpServerStartup.html b/cave/com.raytheon.viz.gfe/help/ifpServerStartup.html index 7bbd9f8a1b..dfdf8258de 100644 --- a/cave/com.raytheon.viz.gfe/help/ifpServerStartup.html +++ b/cave/com.raytheon.viz.gfe/help/ifpServerStartup.html @@ -200,7 +200,7 @@ following
  File "<string>", line 1
-     from serverConfig 8mport * +     from serverConfig import *
                       ^ diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java index c94f0522c4..257e5b51d7 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/dialogs/WeatherElementBrowserDialog.java @@ -404,32 +404,32 @@ public class WeatherElementBrowserDialog extends CaveJFACEDialog { */ private void createTypesComp(Composite parent) { - GridData data = new GridData(100, 200); - Composite comp = new Composite(parent, SWT.BORDER); - comp.setLayoutData(data); - comp.setLayout(new GridLayout()); - Label lab = new Label(comp, SWT.NONE); - lab.setText("Types"); - data = new GridData(); - data.horizontalAlignment = SWT.CENTER; - lab.setLayoutData(data); + //GridData data = new GridData(100, 200); + //Composite comp = new Composite(parent, SWT.BORDER); + //comp.setLayoutData(data); + //comp.setLayout(new GridLayout()); + //Label lab = new Label(comp, SWT.NONE); + //lab.setText("Types"); + //data = new GridData(); + //data.horizontalAlignment = SWT.CENTER; + //lab.setLayoutData(data); for (final WEBrowserTypeRecord entry : typeEntries) { - final Button b = new Button(comp, SWT.RADIO | SWT.BORDER); - b.setText(entry.getType()); - b.addSelectionListener(new SelectionAdapter() { - @Override - public void widgetSelected(SelectionEvent e) { - if (b.getSelection()) { - selectedType = entry; - setupListsForCurrentType(); - } - } - }); +// final Button b = new Button(comp, SWT.RADIO | SWT.BORDER); +// b.setText(entry.getType()); +// b.addSelectionListener(new SelectionAdapter() { +// @Override +// public void widgetSelected(SelectionEvent e) { +// if (b.getSelection()) { +// selectedType = entry; +// setupListsForCurrentType(); +// } +// } +// }); - if (typeEntries.indexOf(entry) == 0) { + if (typeEntries.indexOf(entry) == 1) { selectedType = entry; - b.setSelection(true); + //b.setSelection(true); } } } @@ -828,16 +828,13 @@ public class WeatherElementBrowserDialog extends CaveJFACEDialog { * Creates the source composite. */ private void createSourceComp(Composite parent) { + Composite comp = new Composite(parent, SWT.BORDER); comp.setLayout(new GridLayout(1, true)); - GridData data = new GridData(140, 200); + GridData data = new GridData(170, 200); comp.setLayoutData(data); - - Label lab1 = new Label(comp, SWT.NONE); - lab1.setText("Sources"); data = new GridData(); data.horizontalAlignment = SWT.LEFT; - lab1.setLayoutData(data); sourceMenu = new Menu(getParentShell(), SWT.POP_UP); sourceToolBar = new ToolBar(comp, SWT.NONE); @@ -880,16 +877,12 @@ public class WeatherElementBrowserDialog extends CaveJFACEDialog { * Creates the field composite. */ private void createFieldsComp(Composite parent) { - GridData data = new GridData(140, 200); + GridData data = new GridData(170, 200); Composite comp = new Composite(parent, SWT.BORDER); comp.setLayout(new GridLayout()); comp.setLayoutData(data); - - Label lab = new Label(comp, SWT.NONE); - lab.setText("Fields"); data = new GridData(); data.horizontalAlignment = SWT.CENTER; - lab.setLayoutData(data); fieldsMenu = new Menu(getParentShell(), SWT.POP_UP); fieldsToolBar = new ToolBar(comp, SWT.NONE); @@ -920,18 +913,14 @@ public class WeatherElementBrowserDialog extends CaveJFACEDialog { * Creates the plans composite. */ private void createPlanesComp(Composite parent) { - GridData data = new GridData(180, 200); + GridData data = new GridData(220, 200); Composite comp = new Composite(parent, SWT.BORDER); comp.setLayout(new GridLayout(2, false)); comp.setLayoutData(data); - Label lab = new Label(comp, SWT.NONE); - lab.setText("Planes"); data = new GridData(); data.horizontalAlignment = SWT.CENTER; data.horizontalSpan = 2; - lab.setLayoutData(data); - presMenu = new Menu(getParentShell(), SWT.POP_UP); miscMenu = new Menu(getParentShell(), SWT.POP_UP); diff --git a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/perspective/GFEPerspective.java b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/perspective/GFEPerspective.java index f746239e1c..06e9fb9a8e 100644 --- a/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/perspective/GFEPerspective.java +++ b/cave/com.raytheon.viz.gfe/src/com/raytheon/viz/gfe/perspective/GFEPerspective.java @@ -57,10 +57,8 @@ public class GFEPerspective implements IPerspectiveFactory { */ public void createInitialLayout(IPageLayout layout) { IPreferenceStore prefs = Activator.getDefault().getPreferenceStore(); - // Get the editor area. String editorArea = layout.getEditorArea(); - layout.setFixed(false); int width = prefs.getInt("TimeScale_horizSize"); @@ -92,7 +90,8 @@ public class GFEPerspective implements IPerspectiveFactory { layout.addStandaloneView( "com.raytheon.viz.gfe.GridManagerView:GridManager", true, - relationship, ratio, editorArea); + IPageLayout.RIGHT,0.65f, editorArea); + IViewLayout viewLayout = layout .getViewLayout("com.raytheon.viz.gfe.GridManagerView:GridManager"); if (viewLayout != null) { diff --git a/cave/com.raytheon.viz.pointdata/localization/menus/obs/index.xml b/cave/com.raytheon.viz.pointdata/localization/menus/obs/index.xml index e26b863e5e..98a3af6bc2 100644 --- a/cave/com.raytheon.viz.pointdata/localization/menus/obs/index.xml +++ b/cave/com.raytheon.viz.pointdata/localization/menus/obs/index.xml @@ -25,6 +25,4 @@ fileName="menus/obs/baseLocalData.xml"/> - - \ No newline at end of file + diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscQPF.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscQPF.py deleted file mode 100644 index 623b915d03..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscQPF.py +++ /dev/null @@ -1,107 +0,0 @@ -# -*-python-*- -import time -from numpy import * - -SCALAR = 'Scalar' -VECTOR = 'Vector' -WEATHER = 'Weather' -DISCRETE = 'Discrete' -YES = True -NO = False - -class VCParm: - - def splitTR(self, tr, inv): - for btr in inv: - if self._overlaps(btr, tr): - if self._containsTR(btr, tr): - return [] - else: - splitlst = [] - if not self._contains(btr, tr[0]): - splitlst = splitlst + self.splitTR((tr[0], btr[0]), - inv) - if not self._contains(btr, tr[1]): - splitlst = splitlst + self.splitTR((btr[1], tr[1]), - inv) - return splitlst - return [tr] - - def tcmp(self, t1, t2): - return cmp(t1[0], t2[0]) - - def getInventory(self, QPF, QPF_ISC): - # all Fcst grids get included if they overlap an ISC grid - rval = [] - for tr in QPF: - lst = [] - for itr in QPF_ISC: - if self._overlaps(tr, itr): - lst.append(itr) - if len(lst): - rval.append((tr, [tr], lst)) - - # Any ISC grid which does not overlap - # or any portion that does not overlap - # goes in as well - for tr in QPF_ISC: - for ntr in self.splitTR(tr, QPF): - for ftr in QPF: - if self._overlaps(ntr, ftr): - break - else: - rval.append((ntr, [], [tr])) - - #must sort in ascending order - rval.sort(lambda x,y:cmp(x[0][0], y[0][0])) - - return rval - - # returns the percentage of tr1 that overlaps tr2 - def poverlap(self, tr1, tr2): - itr = self._intersect(tr1, tr2) - return (itr[1] - itr[0]) / float(tr1[1] - tr1[0]) - - def calcGrid(self, QPF, QPF_ISC): - # If getInventory() works right - # we either get 0 or 1 QPF grids. - # And if 0 then only 1 QPF_ISC - if len(QPF) == 0: - return QPF_ISC[0][1] - rval = QPF[0][1] * 0.0 - for i in QPF_ISC: - rval = rval + i[1] * self.poverlap(i[0], QPF[0][0]) - return rval - - def calcHistory(self, QPF_ISC): - rval = [] - for t in QPF_ISC: - for i in t[1]: - rval.append(i) - return rval - - def getWEInfo(self): - # For some reason, setting time dependent to YES - # makes the GFE loose this ??? - return (("QPF", SCALAR, "in", "QPF", 5.0, 0.0, 2, YES), - ("ISC", "V"), (3600, 3600, 0)) - - def _containsTR(self, tr1, tr2): - if tr1 == tr2: - return True - return self._contains(tr1, tr2[0]) and self._contains(tr1, tr2[1]) - - def _contains(self, timerange, time): - if timerange[1] - timerange[0]: - return ((time >= timerange[0]) and (time < timerange[1])) - return time == timerange[0] - - def _overlaps(self, tr1, tr2): - if self._contains(tr2, tr1[0]) or self._contains(tr1, tr2[0]): - return True - return False - - def _intersect(self, t1, t2): - if self._overlaps(t1, t2): - return (max(t1[0], t2[0]), min(t1[1], t2[1])) - return None diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscSnowAmt.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscSnowAmt.py deleted file mode 100644 index 1929ac466f..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscSnowAmt.py +++ /dev/null @@ -1,108 +0,0 @@ -# -*-python-*- -import time -from numpy import * - -SCALAR = 'Scalar' -VECTOR = 'Vector' -WEATHER = 'Weather' -DISCRETE = 'Discrete' -YES = True -NO = False - -class VCParm: - def splitTR(self, tr, inv): - for btr in inv: - if self._overlaps(btr, tr): - if self._containsTR(btr, tr): - return [] - else: - splitlst = [] - if not self._contains(btr, tr[0]): - splitlst = splitlst + self.splitTR((tr[0], btr[0]), - inv) - if not self._contains(btr, tr[1]): - splitlst = splitlst + self.splitTR((btr[1], tr[1]), - inv) - return splitlst - return [tr] - - def tcmp(self, t1, t2): - return cmp(t1[0], t2[0]) - - def getInventory(self, SnowAmt, SnowAmt_ISC): - # all Fcst grids get included if they overlap an ISC grid - rval = [] - for tr in SnowAmt: - lst = [] - for itr in SnowAmt_ISC: - if self._overlaps(tr, itr): - lst.append(itr) - if len(lst): - rval.append((tr, [tr], lst)) - - # Any ISC grid which does not overlap - # or any portion that does not overlap - # goes in as well - for tr in SnowAmt_ISC: - for ntr in self.splitTR(tr, SnowAmt): - for ftr in SnowAmt: - if self._overlaps(ntr, ftr): - break - else: - rval.append((ntr, [], [tr])) - - #must sort in ascending order - rval.sort(lambda x,y:cmp(x[0][0], y[0][0])) - - return rval - - - # returns the percentage of tr1 that overlaps tr2 - def poverlap(self, tr1, tr2): - itr = self._intersect(tr1, tr2) - return (itr[1] - itr[0]) / float(tr1[1] - tr1[0]) - - def calcGrid(self, SnowAmt, SnowAmt_ISC): - # If getInventory() works right - # we either get 0 or 1 SnowAmt grids. - # And if 0 then only 1 SnowAmt_ISC - if len(SnowAmt) == 0: - return SnowAmt_ISC[0][1] - rval = SnowAmt[0][1] * 0.0 - for i in SnowAmt_ISC: - rval = rval + i[1] * self.poverlap(i[0], SnowAmt[0][0]) - return rval - - def calcHistory(self, SnowAmt_ISC): - rval = [] - for t in SnowAmt_ISC: - for i in t[1]: - rval.append(i) - return rval - - def getWEInfo(self): - # For some reason, setting time dependent to YES - # makes the GFE loose this ??? - - return (("SnowAmt", SCALAR, "in","Snowfall amount", 20.0, 0.0, 1, YES), - ("ISC", "V"), (3600, 3600, 0)) - - def _containsTR(self, tr1, tr2): - if tr1 == tr2: - return True - return self._contains(tr1, tr2[0]) and self._contains(tr1, tr2[1]) - - def _contains(self, timerange, time): - if timerange[1] - timerange[0]: - return ((time >= timerange[0]) and (time < timerange[1])) - return time == timerange[0] - - def _overlaps(self, tr1, tr2): - if self._contains(tr2, tr1[0]) or self._contains(tr1, tr2[0]): - return True - return False - - def _intersect(self, t1, t2): - if self._overlaps(t1, t2): - return (max(t1[0], t2[0]), min(t1[1], t2[1])) - return None diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmaxt.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmaxt.py deleted file mode 100644 index 0bf977d0a0..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmaxt.py +++ /dev/null @@ -1,95 +0,0 @@ -# -*-python-*- -import time -from numpy import * - -SCALAR = 'Scalar' -VECTOR = 'Vector' -WEATHER = 'Weather' -DISCRETE = 'Discrete' -YES = True -NO = False - -class VCParm: - def splitTR(self, tr, inv): - for btr in inv: - if self._overlaps(btr, tr): - if self._containsTR(btr, tr): - return [] - else: - splitlst = [] - if not self._contains(btr, tr[0]): - splitlst = splitlst + self.splitTR((tr[0], btr[0]), - inv) - if not self._contains(btr, tr[1]): - splitlst = splitlst + self.splitTR((btr[1], tr[1]), - inv) - return splitlst - return [tr] - - def tcmp(self, t1, t2): - return cmp(t1[0], t2[0]) - - def getInventory(self, MaxT, MaxT_ISC): - # all Fcst grids get included if they overlap an ISC grid - # return list is sorted in ascending time - - rval = [] - for tr in MaxT: - lst = [] - for itr in MaxT_ISC: - if self._overlaps(tr, itr): - lst.append(itr) - if len(lst): - rval.append((tr, [tr], lst)) - - return rval - - # returns the percentage of tr1 that overlaps tr2 - def poverlap(self, tr1, tr2): - itr = self._intersect(tr1, tr2) - return (itr[1] - itr[0]) / float(tr1[1] - tr1[0]) - - def calcGrid(self, MaxT, MaxT_ISC): - # If getInventory() works right - # we either get 0 or 1 MaxT grids. - # And if 0 then only 1 MaxT_ISC - if len(MaxT) == 0: - return MaxT_ISC[0][1] - rval = MaxT_ISC[0][1] - for i in MaxT_ISC: - rval = maximum(i[1], rval) - return rval - - def calcHistory(self, MaxT_ISC): - rval = [] - for t in MaxT_ISC: - for i in t[1]: - rval.append(i) - return rval - - def getWEInfo(self): - # For some reason, setting time dependent to YES - # makes the GFE loose this ??? - - return (("MaxT", SCALAR,"F","Maximum Temperature",120.0, -60.0, 0, NO), - ("ISC", "V"), (3600, 3600, 0)) - - def _containsTR(self, tr1, tr2): - if tr1 == tr2: - return True - return self._contains(tr1, tr2[0]) and self._contains(tr1, tr2[1]) - - def _contains(self, timerange, time): - if timerange[1] - timerange[0]: - return ((time >= timerange[0]) and (time < timerange[1])) - return time == timerange[0] - - def _overlaps(self, tr1, tr2): - if self._contains(tr2, tr1[0]) or self._contains(tr1, tr2[0]): - return True - return False - - def _intersect(self, t1, t2): - if self._overlaps(t1, t2): - return (max(t1[0], t2[0]), min(t1[1], t2[1])) - return None diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmint.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmint.py deleted file mode 100644 index 51b186b42c..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscmint.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*-python-*- -import time -from numpy import * - -SCALAR = 'Scalar' -VECTOR = 'Vector' -WEATHER = 'Weather' -DISCRETE = 'Discrete' -YES = True -NO = False - -class VCParm: - def splitTR(self, tr, inv): - for btr in inv: - if self._overlaps(btr, tr): - if self._containsTR(btr, tr): - return [] - else: - splitlst = [] - if not self._contains(btr, tr[0]): - splitlst = splitlst + self.splitTR((tr[0], btr[0]), - inv) - if not self._contains(btr, tr[1]): - splitlst = splitlst + self.splitTR((btr[1], tr[1]), - inv) - return splitlst - return [tr] - - def tcmp(self, t1, t2): - return cmp(t1[0], t2[0]) - - def getInventory(self, MinT, MinT_ISC): - # all Fcst grids get included if they overlap an ISC grid - # list is returned in ascending time - rval = [] - for tr in MinT: - lst = [] - for itr in MinT_ISC: - if self._overlaps(tr, itr): - lst.append(itr) - if len(lst): - rval.append((tr, [tr], lst)) - - return rval - - # returns the percentage of tr1 that overlaps tr2 - def poverlap(self, tr1, tr2): - itr = self._intersect(tr1, tr2) - return (itr[1] - itr[0]) / float(tr1[1] - tr1[0]) - - def calcGrid(self, MinT, MinT_ISC): - # If getInventory() works right - # we either get 0 or 1 MinT grids. - # And if 0 then only 1 MinT_ISC - # [(intr, grid, mask), ...] - if len(MinT) == 0: - return MinT_ISC[0][1] - #max value for this parm - maxV = self.getWEInfo()[0][4] - rval = where(MinT_ISC[0][2], MinT_ISC[0][1], maxV) - for i in MinT_ISC: - rval = where(i[2], minimum(i[1], rval), rval) - return rval - - def calcHistory(self, MinT_ISC): - rval = [] - for t in MinT_ISC: - for i in t[1]: - rval.append(i) - return rval - - def getWEInfo(self): - return (("MinT", SCALAR,"F","Minimum Temperature",120.0, -60.0, 0, NO), - ("ISC", "V"), (3600, 3600, 0)) - - def _containsTR(self, tr1, tr2): - if tr1 == tr2: - return True - return self._contains(tr1, tr2[0]) and self._contains(tr1, tr2[1]) - - def _contains(self, timerange, time): - if timerange[1] - timerange[0]: - return ((time >= timerange[0]) and (time < timerange[1])) - return time == timerange[0] - - def _overlaps(self, tr1, tr2): - if self._contains(tr2, tr1[0]) or self._contains(tr1, tr2[0]): - return True - return False - - def _intersect(self, t1, t2): - if self._overlaps(t1, t2): - return (max(t1[0], t2[0]), min(t1[1], t2[1])) - return None diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscpop.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscpop.py deleted file mode 100644 index 235d26e044..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/iscpop.py +++ /dev/null @@ -1,108 +0,0 @@ -# -*-python-*- -import time -from numpy import * - -SCALAR = 'Scalar' -VECTOR = 'Vector' -WEATHER = 'Weather' -DISCRETE = 'Discrete' -YES = True -NO = False - -class VCParm: - def splitTR(self, tr, inv): - for btr in inv: - if self._overlaps(btr, tr): - if self._containsTR(btr, tr): - return [] - else: - splitlst = [] - if not self._contains(btr, tr[0]): - splitlst = splitlst + self.splitTR((tr[0], btr[0]), - inv) - if not self._contains(btr, tr[1]): - splitlst = splitlst + self.splitTR((btr[1], tr[1]), - inv) - return splitlst - return [tr] - - def tcmp(self, t1, t2): - return cmp(t1[0], t2[0]) - - def getInventory(self, PoP, PoP_ISC): - # all Fcst grids get included if they overlap an ISC grid - # list is sorted in ascending time. - rval = [] - for tr in PoP: - lst = [] - for itr in PoP_ISC: - if self._overlaps(tr, itr): - lst.append(itr) - if len(lst): - rval.append((tr, [tr], lst)) - - # Any ISC grid which does not overlap - # or any portion that does not overlap - # goes in as well - for tr in PoP_ISC: - for ntr in self.splitTR(tr, PoP): - for ftr in PoP: - if self._overlaps(ntr, ftr): - break - else: - rval.append((ntr, [], [tr])) - - #sort the times by starting times - rval.sort(lambda x,y:cmp(x[0][0], y[0][0])) - return rval - - - # returns the percentage of tr1 that overlaps tr2 - def poverlap(self, tr1, tr2): - itr = self._intersect(tr1, tr2) - return (itr[1] - itr[0]) / float(tr1[1] - tr1[0]) - - def calcGrid(self, PoP, PoP_ISC): - # If getInventory() works right - # we either get 0 or 1 PoP grids. - # And if 0 then only 1 PoP_ISC - if len(PoP) == 0: - return PoP_ISC[0][1] - rval = PoP_ISC[0][1] - for i in PoP_ISC: - rval = maximum(i[1], rval) - return rval - - def calcHistory(self, PoP_ISC): - rval = [] - for t in PoP_ISC: - for i in t[1]: - rval.append(i) - return rval - - def getWEInfo(self): - # For some reason, setting time dependent to YES - # makes the GFE loose this ??? - - return (("PoP", SCALAR, "%", "Prob of Precip", 100.0, 0.0, 0, NO), - ("ISC", "V"), (3600, 3600, 0)) - - def _containsTR(self, tr1, tr2): - if tr1 == tr2: - return True - return self._contains(tr1, tr2[0]) and self._contains(tr1, tr2[1]) - - def _contains(self, timerange, time): - if timerange[1] - timerange[0]: - return ((time >= timerange[0]) and (time < timerange[1])) - return time == timerange[0] - - def _overlaps(self, tr1, tr2): - if self._contains(tr2, tr1[0]) or self._contains(tr1, tr2[0]): - return True - return False - - def _intersect(self, t1, t2): - if self._overlaps(t1, t2): - return (max(t1[0], t2[0]), min(t1[1], t2[1])) - return None diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/utility/VCModuleInterface.py b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/utility/VCModuleInterface.py deleted file mode 100644 index 8d0b12b487..0000000000 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/gfe/vcmodule/utility/VCModuleInterface.py +++ /dev/null @@ -1,59 +0,0 @@ -## -# This software was developed and / or modified by Raytheon Company, -# pursuant to Contract DG133W-05-CQ-1067 with the US Government. -# -# U.S. EXPORT CONTROLLED TECHNICAL DATA -# This software product contains export-restricted data whose -# export/transfer/disclosure is restricted by U.S. law. Dissemination -# to non-U.S. persons whether in the United States or abroad requires -# an export license or other authorization. -# -# Contractor Name: Raytheon Company -# Contractor Address: 6825 Pine Street, Suite 340 -# Mail Stop B8 -# Omaha, NE 68106 -# 402.291.0100 -# -# See the AWIPS II Master Rights File ("Master Rights File.pdf") for -# further licensing information. -## - -# -# Globally import and sets up instances of the smart tool scripts. -# Designed to be used as a master controller for inspecting and running -# smart tools from Java. -# -# -# -# SOFTWARE HISTORY -# -# Date Ticket# Engineer Description -# ------------ ---------- ----------- -------------------------- -# 10/21/08 njensen Initial Creation. -# -# -# - -import numpy -import sys - -import JUtil -import MasterInterface - - -class VCModuleInterface(MasterInterface.MasterInterface): - - def __init__(self, scriptPath): - MasterInterface.MasterInterface.__init__(self) - self.importModules(scriptPath) - - def getMethodArgNames(self, moduleName, className, methodName): - from java.util import ArrayList - args = self.getMethodArgs(moduleName, className, methodName) - argList = ArrayList() - for a in args: - argList.add(a) - return argList - - def getMethodArgs(self, moduleName, className, methodName): - return MasterInterface.MasterInterface.getMethodArgs(self, moduleName, className, methodName)[1:] \ No newline at end of file diff --git a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml index 3c9de3d749..37751eca44 100644 --- a/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml +++ b/edexOsgi/com.raytheon.edex.plugin.gfe/utility/common_static/base/grid/dataset/alias/gfeParamInfo.xml @@ -91,8 +91,8 @@ TPCtpm250 nic218 nic242 - dgex185 - dgex186 + dgex + dgexAK gfs212 gfs160 gfs254 diff --git a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml index 1a6b7f6885..07b7550001 100644 --- a/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml +++ b/edexOsgi/com.raytheon.edex.plugin.grib/utility/common_static/base/grid/datasetInfo/gribDatasets_NCEP-7.xml @@ -340,7 +340,7 @@ DGEX - DGEX185 + DGEX
6
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml index 29991c56cc..1a24752544 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/grid/dataset/alias/d2d-title.xml @@ -19,25 +19,9 @@ further_licensing_information. --> - AKWAVE SPE - GFS190 - GFS80 - GFS75 - GFSGbl - GFSGbl - GFSGbl - GFSGbl - GFSGbl - GFSGbl - GFSGbl - GFSGbl - GFS180 - GFSGbl BiasHPE CPCoutlook-Long - DGEX - DGEX ECMWF-LowRes ECMWF-LowRes ECMWF-LowRes @@ -52,7 +36,6 @@ ECMWF-LowRes ECMWF-MODEL0 ECMWF-LowRes - ENPwave GFSensemble GFSensemble GFSensemble @@ -62,64 +45,25 @@ GFSensemble GFSensemble GFSensemble - NAM95 - NAMWX - NAM12 - NAM12 - AK-NAM12 NAM Bufr - NAM80 - AK-GFS - SJU-GFS - Guam-GFSDNG - GFS360 - GFS40 - GFS1degGbl - GFS90 - PR-GFS + GFS1degGbl GFSBufr GFSLAMP-Stn GFSLAMP-Grid - GWW HPC GuamHurWind TPC-HurWind HawHurWind SPE - NAM40 - NAM20 - AK-NAM45 - AK-NAM22 - PR-NAM12 AK-GriddedMOS GriddedMOS MPE MPE - gfs190 - GFS150 - GFS150 - gfsLR21 - gfsLR22 - gfsLR23 - gfsLR24 - gfsLR25 - gfsLR26 - gfsLR - gfsLR - NGM180 - NGM95 - NGM90 - NGM80 OPCWave-W-ATL OPCWave-NE-PAC OPCWave-TE-PAC RTG-SST-HR-Analysis RTG-SST-Analysis - RAP13 - RAP40 - SREF - AK-SREF - PR-SREF UKMET UKMET UKMET diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml index 93b9f3c564..17668418bc 100644 --- a/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml +++ b/edexOsgi/com.raytheon.uf.common.dataplugin.grid/utility/common_static/base/styleRules/d2dContourStyleRules.xml @@ -2655,13 +2655,13 @@ mb | 1 | 0.0 | 4 |2:i4|1:i4|LH|8000F0FF| | 0 | 4 - GH - DGEX185 + DGEX 850 500 @@ -2675,12 +2675,12 @@ dam | 0.1 | 0.0 | 4 | i4 | X |LH|8000F0FF|,,,80 | 0 | 3 - - DGEX185 + DGEX GH 250 @@ -2695,12 +2695,12 @@ dam | 0.1 | 0.0 | 4 | i5 | X |LH|8000F0FF|,,,80 | 0 | 6 - - DGEX185 + DGEX PMSL @@ -2714,7 +2714,7 @@ mb | 1 | 0.0 | 4 |2:i4|1:i4|LH|8000F0FF|,,,80 | 0 | 4 - DGEX185 + DGEX msl-P @@ -2727,12 +2727,12 @@ mb | 1 | 0.0 | 4 |2:i4|1:i4|LH|8000F0FF|,,,80 | 0 | 4 - - DGEX185 + DGEX T 850 @@ -2746,12 +2746,12 @@ C | 1 |-273.15| 4 | | |..|8000F0FF|,,,80 | 0 | 2 - - DGEX185 + DGEX RH 850 @@ -2766,12 +2766,12 @@ C | 1 |-273.15| 4 | | |..|8000F0FF|,,,80 | 0 | 2 - - DGEX185 + DGEX PVV @@ -2782,12 +2782,12 @@ C | 1 |-273.15| 4 | | |..|8000F0FF|,,,80 | 0 | 2 - - DGEX185 + DGEX SLI @@ -2799,12 +2799,12 @@ C | 1 | 0 | 4 | | |..|8000F0FF|,,,80 | 0 | 2 - - DGEX185 + DGEX AV @@ -2815,13 +2815,13 @@ C | 1 | 0 | 4 | | |..|8000F0FF|,,,80 | 0 | 2 - - DGEX185 + DGEX wDiv @@ -2832,12 +2832,12 @@ C | 1 | 0 | 4 | | |..|8000F0FF|,,,80 | 0 | 2 - - DGEX185 + DGEX VAdv dVAdv PIVA @@ -3031,12 +3031,12 @@ kt|1.944| 0.0 | 4 | | |..|8000F0FF| | 0 | 10 - - DGEX185 + DGEX TAdv @@ -3047,12 +3047,12 @@ C/12hr |43200| 0.0 | 4 | | | |8000F0FF|,,,80| 5 | 1 5 10 20 50 - - DGEX185 + DGEX MAdv @@ -3062,12 +3062,12 @@ g/Kg/12hr| 43200| 0.0 | 4 | | |..|8000F0FF|,,,80| 8 | 1 2 5 10 20 50 100 200 - - DGEX185 + DGEX PoTA EPTA @@ -3078,12 +3078,12 @@ C/12hr |43200| 0.0 | 4 | | | |8000F0FF|,,,80| 5 | 1 5 10 20 50 - - DGEX185 + DGEX MCon