Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
{
  "title" : "Spatial Display",
  "layers" : [ {
    "name" : "CS3",
    "title" : "",
    "groupName" : "Surge Ensemble",
    "keywordList" : [ {
      "parameterId" : "H.forecast.surge",
      "locationId" : "EnsembleSurge",
      "moduleInstanceId" : "ImportMOSurgeEnsemble",
      "timeSeriesType" : "EXTERNAL_FORECASTING",
      "ensembleId" : "MOSurge",
      "ensembleMemberId" : "2"
    }, {
      "parameterId" : "H.forecast.surge",
      "locationId" : "EnsembleSurge",
      "moduleInstanceId" : "ImportMOSurgeEnsemble",
      "timeSeriesType" : "EXTERNAL_FORECASTING",
      "ensembleId" : "MOSurge",
      "ensembleMemberId" : "1"
    }, {
      "parameterId" : "H.forecast.surge",
      "locationId" : "EnsembleSurge",
      "moduleInstanceId" : "ImportMOSurgeEnsemble",
      "timeSeriesType" : "EXTERNAL_FORECASTING",
      "ensembleId" : "MOSurge",
      "ensembleMemberId" : "0"
    } ],
    "ensembles" : [ {
      "ensembleId" : "MOSurge",
      "ensembleMemberIds" : [ "2", "1", "0" ]
    } ],
    "times" : [ "2020-04-13T07:00:00Z", "2020-04-13T08:00:00Z", "2020-04-13T09:00:00Z", "2020-04-13T10:00:00Z", "2020-04-13T11:00:00Z", "2020-04-13T12:00:00Z", "2020-04-13T13:00:00Z", "2020-04-13T14:00:00Z", "2020-04-13T15:00:00Z", "2020-04-13T16:00:00Z", "2020-04-13T17:00:00Z", "2020-04-13T18:00:00Z", "2020-04-13T19:00:00Z", "2020-04-13T20:00:00Z", "2020-04-13T21:00:00Z", "2020-04-13T22:00:00Z", "2020-04-13T23:00:00Z", "2020-04-14T00:00:00Z", "2020-04-14T01:00:00Z", "2020-04-14T02:00:00Z", "2020-04-14T03:00:00Z", "2020-04-14T04:00:00Z", "2020-04-14T05:00:00Z", "2020-04-14T06:00:00Z", "2020-04-14T07:00:00Z", "2020-04-14T08:00:00Z", "2020-04-14T09:00:00Z", "2020-04-14T10:00:00Z", "2020-04-14T11:00:00Z", "2020-04-14T12:00:00Z", "2020-04-14T13:00:00Z", "2020-04-14T14:00:00Z", "2020-04-14T15:00:00Z", "2020-04-14T16:00:00Z", "2020-04-14T17:00:00Z", "2020-04-14T18:00:00Z", "2020-04-14T19:00:00Z", "2020-04-14T20:00:00Z", "2020-04-14T21:00:00Z", "2020-04-14T22:00:00Z", "2020-04-14T23:00:00Z", "2020-04-15T00:00:00Z", "2020-04-15T01:00:00Z", "2020-04-15T02:00:00Z", "2020-04-15T03:00:00Z", "2020-04-15T04:00:00Z", "2020-04-15T05:00:00Z", "2020-04-15T06:00:00Z", "2020-04-15T07:00:00Z", "2020-04-15T08:00:00Z", "2020-04-15T09:00:00Z", "2020-04-15T10:00:00Z", "2020-04-15T11:00:00Z", "2020-04-15T12:00:00Z", "2020-04-15T13:00:00Z", "2020-04-15T14:00:00Z", "2020-04-15T15:00:00Z", "2020-04-15T16:00:00Z", "2020-04-15T17:00:00Z", "2020-04-15T18:00:00Z", "2020-04-15T19:00:00Z", "2020-04-15T20:00:00Z", "2020-04-15T21:00:00Z", "2020-04-15T22:00:00Z", "2020-04-15T23:00:00Z", "2020-04-16T00:00:00Z", "2020-04-16T01:00:00Z", "2020-04-16T02:00:00Z", "2020-04-16T03:00:00Z", "2020-04-16T04:00:00Z", "2020-04-16T05:00:00Z", "2020-04-16T06:00:00Z", "2020-04-16T07:00:00Z", "2020-04-16T08:00:00Z", "2020-04-16T09:00:00Z", "2020-04-16T10:00:00Z", "2020-04-16T11:00:00Z", "2020-04-16T12:00:00Z", "2020-04-16T13:00:00Z", "2020-04-16T14:00:00Z", "2020-04-16T15:00:00Z", "2020-04-16T16:00:00Z", "2020-04-16T17:00:00Z", "2020-04-16T18:00:00Z", "2020-04-16T19:00:00Z", "2020-04-16T20:00:00Z", "2020-04-16T21:00:00Z", "2020-04-16T22:00:00Z", "2020-04-16T23:00:00Z", "2020-04-17T00:00:00Z", "2020-04-17T01:00:00Z", "2020-04-17T02:00:00Z", "2020-04-17T03:00:00Z", "2020-04-17T04:00:00Z", "2020-04-17T05:00:00Z", "2020-04-17T06:00:00Z", "2020-04-17T07:00:00Z", "2020-04-17T08:00:00Z", "2020-04-17T09:00:00Z", "2020-04-17T10:00:00Z", "2020-04-17T11:00:00Z", "2020-04-17T12:00:00Z", "2020-04-17T13:00:00Z", "2020-04-17T14:00:00Z", "2020-04-17T15:00:00Z", "2020-04-17T16:00:00Z", "2020-04-17T17:00:00Z", "2020-04-17T18:00:00Z", "2020-04-17T19:00:00Z", "2020-04-17T20:00:00Z", "2020-04-17T21:00:00Z", "2020-04-17T22:00:00Z", "2020-04-17T23:00:00Z", "2020-04-18T00:00:00Z", "2020-04-18T01:00:00Z", "2020-04-18T02:00:00Z", "2020-04-18T03:00:00Z", "2020-04-18T04:00:00Z", "2020-04-18T05:00:00Z", "2020-04-18T06:00:00Z", "2020-04-18T07:00:00Z", "2020-04-18T08:00:00Z", "2020-04-18T09:00:00Z", "2020-04-18T10:00:00Z", "2020-04-18T11:00:00Z", "2020-04-18T12:00:00Z", "2020-04-18T13:00:00Z", "2020-04-18T14:00:00Z", "2020-04-18T15:00:00Z", "2020-04-18T16:00:00Z", "2020-04-18T17:00:00Z", "2020-04-18T18:00:00Z", "2020-04-18T19:00:00Z", "2020-04-18T20:00:00Z", "2020-04-18T21:00:00Z", "2020-04-18T22:00:00Z", "2020-04-18T23:00:00Z", "2020-04-19T00:00:00Z", "2020-04-19T01:00:00Z", "2020-04-19T02:00:00Z", "2020-04-19T03:00:00Z", "2020-04-19T04:00:00Z", "2020-04-19T05:00:00Z", "2020-04-19T06:00:00Z", "2020-04-19T07:00:00Z", "2020-04-19T08:00:00Z", "2020-04-19T09:00:00Z", "2020-04-19T10:00:00Z", "2020-04-19T11:00:00Z", "2020-04-19T12:00:00Z", "2020-04-19T13:00:00Z", "2020-04-19T14:00:00Z", "2020-04-19T15:00:00Z", "2020-04-19T16:00:00Z", "2020-04-19T17:00:00Z", "2020-04-19T18:00:00Z", "2020-04-19T19:00:00Z", "2020-04-19T20:00:00Z", "2020-04-19T21:00:00Z", "2020-04-19T22:00:00Z", "2020-04-19T23:00:00Z", "2020-04-20T00:00:00Z" ]
  } ]
}


Get Capabilites Styles (2020.02)

In the timeSeriesDisplay.xml configuration, one or more classBreaks can be configured. For example:

Code Block
languagexml
titletimeSeriesDisplay.xml
<classBreaks id="Class.Temperature.Extreme">
   <description>Extreme Temperature Style</description>
   <missingValueColor>white</missingValueColor>
   <missingValueOpaquenessPercentage>0</missingValueOpaquenessPercentage>
   <belowRangeColor>black</belowRangeColor>
   <belowRangeOpaquenessPercentage>0</belowRangeOpaquenessPercentage>
   <aboveRangeColor>black</aboveRangeColor>
   <aboveRangeOpaquenessPercentage>0</aboveRangeOpaquenessPercentage>
   <unitVisible>true</unitVisible>
   <color color="042333" symbolSize="10" lowerValue="0"/>
   <color color="3C0912" symbolSize="10" lowerValue="10"/>
   <color color="730E27" symbolSize="10" lowerValue="20"/>
   <color color="A62225" symbolSize="10" lowerValue="30"/>
   <color color="C0583B" symbolSize="10" lowerValue="40"/>
   <color color="D08B73" symbolSize="10" lowerValue="50"/>
   <color color="DFBCB0" symbolSize="10" lowerValue="60"/>
   <color color="F1EDEC" symbolSize="10" lowerValue="70"/>
</classBreaks>

In the gridDisplay.xml for each gridPlot one or more classBreakId's can be referenced. For example:

Code Block
<gridPlot id="kzn_temperature" name="Temperature">
   <dataLayer>
      <timeSeriesSet>
         <moduleInstanceId>kzn</moduleInstanceId>
         <valueType>grid</valueType>
         <parameterId>water_temperature</parameterId>
         <locationId>SigmaLayer_0</locationId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <readWriteMode>read complete forecast</readWriteMode>
      </timeSeriesSet>
      <sigmaScaleReferenceTimeSeriesSet>
         <moduleInstanceId>kzn</moduleInstanceId>
         <valueType>grid</valueType>
         <parameterId>water_depth</parameterId>
         <locationId>kzn</locationId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <readWriteMode>read complete forecast</readWriteMode>
      </sigmaScaleReferenceTimeSeriesSet>
   </dataLayer>
   <hideLastValueCheckBox>true</hideLastValueCheckBox>
   <classBreaksId>Class.Temperature</classBreaksId>
   <classBreaksId>Class.Temperature.Extreme</classBreaksId>
</gridPlot>

All classbreaks that have be configured this way, using classBreaksId references, will be reported in the GetCapabilties of the layer as a possible style that can be applied to the GetMap or GetLegendGraphic request. See for example the following GetCapabilities response where the kzn_temperature layer supports 2 styles: Class.Temperature and Class.Temperature.Extreme.

Code Block
languagexml
titleGetCapabilities with Styles
<Layer queryable="1">
    <Name>kzn_temperature</Name>
    <Title>Temperature</Title>
    <KeywordList>
        <Keyword>parameterId=water_temperature</Keyword>
        <Keyword>locationId=SigmaLayer_0</Keyword>
        <Keyword>moduleInstanceId=kzn</Keyword>
        <Keyword>timeSeriesType=EXTERNAL_HISTORICAL</Keyword>
    </KeywordList>
    <Dimension units="ISO8601" name="time">2010-04-15T00:00:00Z,2010-04-15T01:00:00Z,2010-04-15T02:00:00Z,2010-04-15T03:00:00Z,2010-04-15T04:00:00Z,2010-04-15T05:00:00Z,2010-04-15T06:00:00Z,2010-04-15T07:00:00Z,2010-04-15T08:00:00Z,2010-04-15T09:00:00Z,2010-04-15T10:00:00Z,2010-04-15T11:00:00Z,2010-04-15T12:00:00Z,2010-04-15T13:00:00Z,2010-04-15T14:00:00Z,2010-04-15T15:00:00Z,2010-04-15T16:00:00Z,2010-04-15T17:00:00Z,2010-04-15T18:00:00Z,2010-04-15T19:00:00Z,2010-04-15T20:00:00Z,2010-04-15T21:00:00Z,2010-04-15T22:00:00Z,2010-04-15T23:00:00Z,2010-04-16T00:00:00Z</Dimension>
    <Dimension units="water_depth" name="elevation">10.453057/3432.3235</Dimension>
    <Style>
        <Name>Class.Temperature</Name>
        <Title>Temperature Style</Title>
    </Style>
    <Style>
        <Name>Class.Temperature.Extreme</Name>
        <Title>Extreme Temperature Style</Title>
    </Style>
</Layer>




GetMap

Get the plot image as png for a layer for a requested time, image size and extent. Only untiled images are supported, which means the complete image has to be requested for the complete extent.

...

  • layers (required): the layerId of the plot to display. Only one layerid is supported.
  • time (required): the time for which the grid has to be plotted. Only one time is supported. Time ranges are NOT supported. Time has to be in the xml dateformat:  yyyy-MM-ddTHH:mm:ssZ. The times returned by the GetCapabilities are in this format as well.
  • width (optional): width of the image. Default is 800. 
  • height (optional): height of the image. Default is 600
  • version (optional): supported version is 1.3 and is the default if not set. Older versions might work, but are not supported
  • crs (required): the output projection of the plot. Only supported projection is: EPSG:3857
  • bbox (required): the bounding box (in the projection as defined by the SRS parameter) of the extent that should be plotshould be plot.
  • colorscalerange (optional): rescale the colors in the map by changing the min and max values of the range. The minimuma value and maximum value are seperated by a , For example: colorscalerange=2.0,10.0. This option can be used for legends as well.

Vendor request parameters

...

  • layers (required): the gridPlotId of the gridPlot which legend should be displayed. Only one gridPlotId is supported.
  • width (optional): width of the legend. Default is 150. 
  • height (optional): height of the image. The default is based on the number of legend items, 15 pixels per item.
  • colorscalerange (optional): rescale the colors in the map by changing the min and max values of the range. The minimuma value and maximum value are seperated by a , For example: colorscalerange=2.0,10.0. This option can be used for the GetMap as well.
  • styles (optional): a style can be passed as request parameter. For example: style=Class.Temperature.Extreme. A style is the id of an existing class break that has been configured in the TimeSeriesDisplayConfig.xml.

Response

Transparent PNG image of the requested legend graphics for the specified gridPlotId and size.

...