Skip to content
Snippets Groups Projects

feat: Add test page (spatial) with mapserver layer in openlayers map

Merged Lene Wasskog requested to merge feature/gridv-6-mapserver-layer into develop
2 files
+ 113
18
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -220,7 +220,7 @@ function getDateArray(timestart, interval, length)
/**
*
* @param {Integer} weatherParameterId the parameter di
* @param {Integer} weatherParameterId the parameter id
* @returns {Json} parameter metadata (name, description, unit, aggregation type (MIN/MAX/AVG))
*/
function getWeatherParameter(weatherParameterId){
@@ -272,13 +272,59 @@ function getWeatherStationCoordinate(weatherDatasource, weatherStationId)
* @returns
*/
function getPragmaticWeatherParameterList(requestedParameters, availableParameters)
{
return getParametersWithFallbacks(requestedParameters).filter(param => availableParameters.includes(param));
}
function getParametersWithFallbacks(parameterList)
{
let completeList = [];
for(let i=0;i<requestedParameters.length;i++)
for(let i=0;i<parameterList.length;i++)
{
completeList = completeList.concat(requestedParameters[i], fallbackParams[requestedParameters[i]]);
completeList = completeList.concat(parameterList[i], fallbackParams[parameterList[i]]);
}
return completeList.filter(param => availableParameters.includes(param));
return completeList;
}
function arePragmaticWeatherParametersInList(requestedParameters, availableParameters)
{
for(let i=0; i<requestedParameters.length;i++)
{
let requestedParameter = requestedParameters[i];
// 1. Is the requested parameter in the availableParameters list?
if(! availableParameters.includes(requestedParameter))
{
if(isEmpty(fallbackParams[requestedParameter]))
{
return false;
}
// If no, check if any fallback parameters are available
let match = false;
for(let j=0;j<fallbackParams[requestedParameter].length; j++)
{
if(availableParameters.includes(fallbackParams[requestedParameter][j]))
{
match = true;
}
}
if(!match)
{
return false;
}
}
}
return true;
}
function getRequiredParameters(modelMetaData)
{
let parameterList = []
modelMetaData.input.weather_parameters.forEach(function(weatherParameter){
parameterList.push(weatherParameter.parameter_code)
})
return parameterList;
}
/**
Loading