mirror of
https://github.com/qgis/QGIS.git
synced 2025-12-06 00:03:16 -05:00
Merge pull request #30071 from lbartoletti/wms_tile_buffer
[server]New parameter for WMS service: tile_buffer
This commit is contained in:
commit
ee6642477e
@ -74,6 +74,25 @@ Set coordinates of the rectangle which should be rendered.
|
||||
The actual visible extent used for rendering could be slightly different
|
||||
since the given extent may be expanded in order to fit the aspect ratio
|
||||
of output size. Use visibleExtent() to get the resulting extent.
|
||||
%End
|
||||
|
||||
double extentBuffer() const;
|
||||
%Docstring
|
||||
Returns the buffer in map units to use around the visible extent for rendering
|
||||
symbols whose corresponding geometries are outside the visible extent.
|
||||
|
||||
.. seealso:: :py:func:`setExtentBuffer`
|
||||
|
||||
.. versionadded:: 3.10
|
||||
%End
|
||||
|
||||
void setExtentBuffer( double buffer );
|
||||
%Docstring
|
||||
Sets the buffer in map units to use around the visible extent for rendering
|
||||
symbols whose corresponding geometries are outside the visible extent. This
|
||||
is useful when using tiles to avoid cut symbols at tile boundaries.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
%End
|
||||
|
||||
QSize outputSize() const;
|
||||
|
||||
@ -152,6 +152,17 @@ Returns the quality for WMS images defined in a QGIS project.
|
||||
:param project: the QGIS project
|
||||
|
||||
:return: quality if defined in project, -1 otherwise.
|
||||
%End
|
||||
|
||||
int wmsTileBuffer( const QgsProject &project );
|
||||
%Docstring
|
||||
Returns the tile buffer in pixels for WMS images defined in a QGIS project.
|
||||
|
||||
:param project: the QGIS project
|
||||
|
||||
:return: tile buffer if defined in project, 0 otherwise.
|
||||
|
||||
.. versionadded:: 3.10
|
||||
%End
|
||||
|
||||
int wmsMaxAtlasFeatures( const QgsProject &project );
|
||||
|
||||
@ -644,6 +644,9 @@ QgsProjectProperties::QgsProjectProperties( QgsMapCanvas *mapCanvas, QWidget *pa
|
||||
mWMSImageQualitySpinBox->setValue( imageQuality );
|
||||
}
|
||||
|
||||
// WMS tileBuffer
|
||||
mWMSTileBufferSpinBox->setValue( QgsProject::instance()->readNumEntry( QStringLiteral( "WMSTileBuffer" ), QStringLiteral( "/" ), 0 ) );
|
||||
|
||||
mWMSMaxAtlasFeaturesSpinBox->setValue( QgsProject::instance()->readNumEntry( QStringLiteral( "WMSMaxAtlasFeatures" ), QStringLiteral( "/" ), 1 ) );
|
||||
|
||||
QString defaultValueToolTip = tr( "In case of no other information to evaluate the map unit sized symbols, it uses default scale (on projected CRS) or default map units per mm (on geographic CRS)." );
|
||||
@ -1323,6 +1326,9 @@ void QgsProjectProperties::apply()
|
||||
QgsProject::instance()->writeEntry( QStringLiteral( "WMSImageQuality" ), QStringLiteral( "/" ), imageQualityValue );
|
||||
}
|
||||
|
||||
// WMS TileBuffer
|
||||
QgsProject::instance()->writeEntry( QStringLiteral( "WMSTileBuffer" ), QStringLiteral( "/" ), mWMSTileBufferSpinBox->value() );
|
||||
|
||||
int maxAtlasFeatures = mWMSMaxAtlasFeaturesSpinBox->value();
|
||||
QgsProject::instance()->writeEntry( QStringLiteral( "WMSMaxAtlasFeatures" ), QStringLiteral( "/" ), maxAtlasFeatures );
|
||||
|
||||
|
||||
@ -254,6 +254,7 @@ LayerRenderJobs QgsMapRendererJob::prepareJobs( QPainter *painter, QgsLabelingEn
|
||||
}
|
||||
|
||||
QgsRectangle r1 = mSettings.visibleExtent(), r2;
|
||||
r1.grow( mSettings.extentBuffer() );
|
||||
QgsCoordinateTransform ct;
|
||||
|
||||
ct = mSettings.layerTransform( ml );
|
||||
|
||||
@ -87,6 +87,16 @@ void QgsMapSettings::setExtent( const QgsRectangle &extent, bool magnified )
|
||||
updateDerived();
|
||||
}
|
||||
|
||||
double QgsMapSettings::extentBuffer() const
|
||||
{
|
||||
return mExtentBuffer;
|
||||
}
|
||||
|
||||
void QgsMapSettings::setExtentBuffer( const double buffer )
|
||||
{
|
||||
mExtentBuffer = buffer;
|
||||
}
|
||||
|
||||
double QgsMapSettings::rotation() const
|
||||
{
|
||||
return mRotation;
|
||||
|
||||
@ -102,6 +102,22 @@ class CORE_EXPORT QgsMapSettings
|
||||
*/
|
||||
void setExtent( const QgsRectangle &rect, bool magnified = true );
|
||||
|
||||
/**
|
||||
* Returns the buffer in map units to use around the visible extent for rendering
|
||||
* symbols whose corresponding geometries are outside the visible extent.
|
||||
* \see setExtentBuffer()
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
double extentBuffer() const;
|
||||
|
||||
/**
|
||||
* Sets the buffer in map units to use around the visible extent for rendering
|
||||
* symbols whose corresponding geometries are outside the visible extent. This
|
||||
* is useful when using tiles to avoid cut symbols at tile boundaries.
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
void setExtentBuffer( double buffer );
|
||||
|
||||
//! Returns the size of the resulting map image
|
||||
QSize outputSize() const;
|
||||
//! Sets the size of the resulting map image
|
||||
@ -539,6 +555,7 @@ class CORE_EXPORT QgsMapSettings
|
||||
float mDevicePixelRatio = 1.0;
|
||||
|
||||
QgsRectangle mExtent;
|
||||
double mExtentBuffer = 0.0;
|
||||
|
||||
double mRotation = 0.0;
|
||||
double mMagnificationFactor = 1.0;
|
||||
|
||||
@ -157,8 +157,10 @@ bool QgsRenderContext::testFlag( QgsRenderContext::Flag flag ) const
|
||||
QgsRenderContext QgsRenderContext::fromMapSettings( const QgsMapSettings &mapSettings )
|
||||
{
|
||||
QgsRenderContext ctx;
|
||||
QgsRectangle extent = mapSettings.visibleExtent();
|
||||
extent.grow( mapSettings.extentBuffer() );
|
||||
ctx.setMapToPixel( mapSettings.mapToPixel() );
|
||||
ctx.setExtent( mapSettings.visibleExtent() );
|
||||
ctx.setExtent( extent );
|
||||
ctx.setMapExtent( mapSettings.visibleExtent() );
|
||||
ctx.setFlag( DrawEditingInfo, mapSettings.testFlag( QgsMapSettings::DrawEditingInfo ) );
|
||||
ctx.setFlag( ForceVectorOutput, mapSettings.testFlag( QgsMapSettings::ForceVectorOutput ) );
|
||||
|
||||
@ -111,6 +111,11 @@ int QgsServerProjectUtils::wmsImageQuality( const QgsProject &project )
|
||||
return project.readNumEntry( QStringLiteral( "WMSImageQuality" ), QStringLiteral( "/" ), -1 );
|
||||
}
|
||||
|
||||
int QgsServerProjectUtils::wmsTileBuffer( const QgsProject &project )
|
||||
{
|
||||
return project.readNumEntry( QStringLiteral( "WMSTileBuffer" ), QStringLiteral( "/" ), 0 );
|
||||
}
|
||||
|
||||
int QgsServerProjectUtils::wmsMaxAtlasFeatures( const QgsProject &project )
|
||||
{
|
||||
return project.readNumEntry( QStringLiteral( "WMSMaxAtlasFeatures" ), QStringLiteral( "/" ), 1 );
|
||||
|
||||
@ -147,6 +147,14 @@ namespace QgsServerProjectUtils
|
||||
*/
|
||||
SERVER_EXPORT int wmsImageQuality( const QgsProject &project );
|
||||
|
||||
/**
|
||||
* Returns the tile buffer in pixels for WMS images defined in a QGIS project.
|
||||
* \param project the QGIS project
|
||||
* \returns tile buffer if defined in project, 0 otherwise.
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
SERVER_EXPORT int wmsTileBuffer( const QgsProject &project );
|
||||
|
||||
/**
|
||||
* Returns the maximum number of atlas features which can be printed in a request
|
||||
* \param project the QGIS project
|
||||
|
||||
@ -44,6 +44,7 @@ namespace QgsWms
|
||||
context.setFlag( QgsWmsRenderContext::AddHighlightLayers );
|
||||
context.setFlag( QgsWmsRenderContext::AddExternalLayers );
|
||||
context.setFlag( QgsWmsRenderContext::SetAccessControl );
|
||||
context.setFlag( QgsWmsRenderContext::UseTileBuffer );
|
||||
context.setParameters( parameters );
|
||||
|
||||
// rendering
|
||||
|
||||
@ -223,6 +223,11 @@ namespace QgsWms
|
||||
QVariant( 0 ) );
|
||||
save( pQuality );
|
||||
|
||||
const QgsWmsParameter pTiled( QgsWmsParameter::TILED,
|
||||
QVariant::Bool,
|
||||
QVariant( false ) );
|
||||
save( pTiled );
|
||||
|
||||
const QgsWmsParameter pBoxSpace( QgsWmsParameter::BOXSPACE,
|
||||
QVariant::Double,
|
||||
QVariant( 2.0 ) );
|
||||
@ -944,6 +949,16 @@ namespace QgsWms
|
||||
return mWmsParameters[ QgsWmsParameter::IMAGE_QUALITY ].toInt();
|
||||
}
|
||||
|
||||
QString QgsWmsParameters::tiled() const
|
||||
{
|
||||
return mWmsParameters[ QgsWmsParameter::TILED ].toString();
|
||||
}
|
||||
|
||||
bool QgsWmsParameters::tiledAsBool() const
|
||||
{
|
||||
return mWmsParameters[ QgsWmsParameter::TILED ].toBool();
|
||||
}
|
||||
|
||||
QString QgsWmsParameters::showFeatureCount() const
|
||||
{
|
||||
return mWmsParameters[ QgsWmsParameter::SHOWFEATURECOUNT ].toString();
|
||||
|
||||
@ -177,7 +177,8 @@ namespace QgsWms
|
||||
ATLAS_PK,
|
||||
FORMAT_OPTIONS,
|
||||
SRCWIDTH,
|
||||
SRCHEIGHT
|
||||
SRCHEIGHT,
|
||||
TILED
|
||||
};
|
||||
Q_ENUM( Name )
|
||||
|
||||
@ -628,6 +629,20 @@ namespace QgsWms
|
||||
*/
|
||||
int imageQualityAsInt() const;
|
||||
|
||||
/**
|
||||
* Returns TILED parameter or an empty string if not
|
||||
* defined.
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
QString tiled() const;
|
||||
|
||||
/**
|
||||
* Returns TILED parameter as a boolean.
|
||||
* \throws QgsBadRequestException
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
bool tiledAsBool() const;
|
||||
|
||||
/**
|
||||
* Returns infoFormat. If the INFO_FORMAT parameter is not used, then the
|
||||
* default value is text/plain.
|
||||
|
||||
@ -24,7 +24,6 @@
|
||||
using namespace QgsWms;
|
||||
|
||||
const double OGC_PX_M = 0.00028; // OGC reference pixel size in meter
|
||||
|
||||
QgsWmsRenderContext::QgsWmsRenderContext( const QgsProject *project, QgsServerInterface *interface )
|
||||
: mProject( project )
|
||||
, mInterface( interface )
|
||||
@ -132,6 +131,18 @@ int QgsWmsRenderContext::imageQuality() const
|
||||
return imageQuality;
|
||||
}
|
||||
|
||||
int QgsWmsRenderContext::tileBuffer() const
|
||||
{
|
||||
int tileBuffer = 0;
|
||||
|
||||
if ( mParameters.tiledAsBool() )
|
||||
{
|
||||
tileBuffer = QgsServerProjectUtils::wmsTileBuffer( *mProject );
|
||||
}
|
||||
|
||||
return tileBuffer;
|
||||
}
|
||||
|
||||
int QgsWmsRenderContext::precision() const
|
||||
{
|
||||
int precision = QgsServerProjectUtils::wmsFeatureInfoPrecision( *mProject );
|
||||
@ -638,6 +649,26 @@ bool QgsWmsRenderContext::isValidWidthHeight() const
|
||||
return true;
|
||||
}
|
||||
|
||||
double QgsWmsRenderContext::mapTileBuffer( const int mapWidth ) const
|
||||
{
|
||||
double buffer;
|
||||
if ( mFlags & UseTileBuffer )
|
||||
{
|
||||
const QgsRectangle extent = mParameters.bboxAsRectangle();
|
||||
if ( !mParameters.bbox().isEmpty() && extent.isEmpty() )
|
||||
{
|
||||
throw QgsBadRequestException( QgsServiceException::QGIS_InvalidParameterValue,
|
||||
mParameters[QgsWmsParameter::BBOX] );
|
||||
}
|
||||
buffer = tileBuffer() * ( extent.width() / mapWidth );
|
||||
}
|
||||
else
|
||||
{
|
||||
buffer = 0;
|
||||
}
|
||||
return buffer;
|
||||
}
|
||||
|
||||
QSize QgsWmsRenderContext::mapSize( const bool aspectRatio ) const
|
||||
{
|
||||
int width = mapWidth();
|
||||
|
||||
@ -47,7 +47,8 @@ namespace QgsWms
|
||||
AddQueryLayers = 0x80,
|
||||
UseWfsLayersOnly = 0x100,
|
||||
AddExternalLayers = 0x200,
|
||||
UseSrcWidthHeight = 0x400
|
||||
UseSrcWidthHeight = 0x400,
|
||||
UseTileBuffer = 0x800
|
||||
};
|
||||
Q_DECLARE_FLAGS( Flags, Flag )
|
||||
|
||||
@ -148,6 +149,13 @@ namespace QgsWms
|
||||
*/
|
||||
int imageQuality() const;
|
||||
|
||||
/**
|
||||
* Returns the tile buffer value to use for rendering according to the
|
||||
* current configuration.
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
int tileBuffer() const;
|
||||
|
||||
/**
|
||||
* Returns the precision to use according to the current configuration.
|
||||
*/
|
||||
@ -200,6 +208,12 @@ namespace QgsWms
|
||||
*/
|
||||
QMap<QString, QList<QgsMapLayer *> > layerGroups() const;
|
||||
|
||||
/**
|
||||
* Returns the tile buffer in geographical units for the given map width in pixels.
|
||||
* \since QGIS 3.10
|
||||
*/
|
||||
double mapTileBuffer( int mapWidth ) const;
|
||||
|
||||
/**
|
||||
* Returns the size (in pixels) of the map to render, according to width
|
||||
* and height WMS parameters as well as the \a aspectRatio option.
|
||||
|
||||
@ -17,7 +17,6 @@
|
||||
* *
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
#include "qgswmsutils.h"
|
||||
#include "qgsjsonutils.h"
|
||||
#include "qgswmsrenderer.h"
|
||||
@ -1028,6 +1027,9 @@ namespace QgsWms
|
||||
|
||||
mapSettings.setExtent( mapExtent );
|
||||
|
||||
// set the extent buffer
|
||||
mapSettings.setExtentBuffer( mContext.mapTileBuffer( paintDevice->width() ) );
|
||||
|
||||
/* Define the background color
|
||||
* Transparent or colored
|
||||
*/
|
||||
|
||||
@ -236,7 +236,7 @@
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>4</number>
|
||||
<number>8</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="mProjOptsGeneral">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_6">
|
||||
@ -265,8 +265,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>537</width>
|
||||
<height>795</height>
|
||||
<width>535</width>
|
||||
<height>740</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_8">
|
||||
@ -863,8 +863,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>546</width>
|
||||
<height>164</height>
|
||||
<width>544</width>
|
||||
<height>155</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_7">
|
||||
@ -938,8 +938,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>269</width>
|
||||
<height>553</height>
|
||||
<width>266</width>
|
||||
<height>524</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_12">
|
||||
@ -1514,8 +1514,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>167</width>
|
||||
<height>55</height>
|
||||
<width>165</width>
|
||||
<height>52</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_17">
|
||||
@ -1575,9 +1575,9 @@
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>598</width>
|
||||
<height>2732</height>
|
||||
<y>-793</y>
|
||||
<width>671</width>
|
||||
<height>2614</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_13">
|
||||
@ -2437,6 +2437,23 @@
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="11" column="0" colspan="3">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_18">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_33">
|
||||
<property name="toolTip">
|
||||
<string>When using tiles set this to the size of the larger symbols to avoid cut symbols at tile boundaries. This works by drawing features that are outside the tile extent.</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Tile buffer in pixels</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="mWMSTileBufferSpinBox"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@ -40,6 +40,7 @@ class TestQgsMapSettings: public QObject
|
||||
void testGettersSetters();
|
||||
void testLabelingEngineSettings();
|
||||
void visibleExtent();
|
||||
void extentBuffer();
|
||||
void mapUnitsPerPixel();
|
||||
void testDevicePixelRatio();
|
||||
void visiblePolygon();
|
||||
@ -160,6 +161,17 @@ void TestQgsMapSettings::visibleExtent()
|
||||
QCOMPARE( ms.visibleExtent().toString( 0 ), QString( "-56,-81 : 156,131" ) );
|
||||
}
|
||||
|
||||
void TestQgsMapSettings::extentBuffer()
|
||||
{
|
||||
QgsMapSettings ms;
|
||||
ms.setExtent( QgsRectangle( 50, 50, 100, 100 ) );
|
||||
ms.setOutputSize( QSize( 50, 50 ) );
|
||||
ms.setExtentBuffer( 10 );
|
||||
QgsRectangle visibleExtent = ms.visibleExtent();
|
||||
visibleExtent.grow( ms.extentBuffer() );
|
||||
QCOMPARE( visibleExtent.toString( 0 ), QString( "40,40 : 110,110" ) );
|
||||
}
|
||||
|
||||
void TestQgsMapSettings::mapUnitsPerPixel()
|
||||
{
|
||||
QgsMapSettings ms;
|
||||
|
||||
@ -1578,6 +1578,62 @@ class TestQgsServerWMSGetMap(QgsServerTestBase):
|
||||
r, h = self._result(self._execute_request(qs))
|
||||
self._img_diff_error(r, h, "WMS_GetMap_Group_Layer_Order")
|
||||
|
||||
def test_wms_getmap_tile_buffer(self):
|
||||
"""Test the implementation of tile_map_edge_buffer from mapserver."""
|
||||
|
||||
# Check without tiled parameters (default is false)
|
||||
qs = "?" + "&".join(["%s=%s" % i for i in list({
|
||||
"MAP": urllib.parse.quote(os.path.join(self.testdata_path, 'wms_tile_buffer.qgs')),
|
||||
"SERVICE": "WMS",
|
||||
"VERSION": "1.3.0",
|
||||
"REQUEST": "GetMap",
|
||||
"BBOX": "310187,6163153,324347,6177313",
|
||||
"CRS": "EPSG:3857",
|
||||
"WIDTH": "512",
|
||||
"HEIGHT": "512",
|
||||
"LAYERS": "wms_tile_buffer_data",
|
||||
"FORMAT": "image/png"
|
||||
}.items())])
|
||||
|
||||
r, h = self._result(self._execute_request(qs))
|
||||
self._img_diff_error(r, h, "WMS_GetMap_Tiled_False")
|
||||
|
||||
# Check with tiled=false
|
||||
qs = "?" + "&".join(["%s=%s" % i for i in list({
|
||||
"MAP": urllib.parse.quote(os.path.join(self.testdata_path, 'wms_tile_buffer.qgs')),
|
||||
"SERVICE": "WMS",
|
||||
"VERSION": "1.3.0",
|
||||
"REQUEST": "GetMap",
|
||||
"BBOX": "310187,6163153,324347,6177313",
|
||||
"CRS": "EPSG:3857",
|
||||
"WIDTH": "512",
|
||||
"HEIGHT": "512",
|
||||
"LAYERS": "wms_tile_buffer_data",
|
||||
"FORMAT": "image/png",
|
||||
"TILED": "false"
|
||||
}.items())])
|
||||
|
||||
r, h = self._result(self._execute_request(qs))
|
||||
self._img_diff_error(r, h, "WMS_GetMap_Tiled_False")
|
||||
|
||||
# Check with tiled=true
|
||||
qs = "?" + "&".join(["%s=%s" % i for i in list({
|
||||
"MAP": urllib.parse.quote(os.path.join(self.testdata_path, 'wms_tile_buffer.qgs')),
|
||||
"SERVICE": "WMS",
|
||||
"VERSION": "1.3.0",
|
||||
"REQUEST": "GetMap",
|
||||
"BBOX": "310187,6163153,324347,6177313",
|
||||
"CRS": "EPSG:3857",
|
||||
"WIDTH": "512",
|
||||
"HEIGHT": "512",
|
||||
"LAYERS": "wms_tile_buffer_data",
|
||||
"FORMAT": "image/png",
|
||||
"TILED": "true"
|
||||
}.items())])
|
||||
|
||||
r, h = self._result(self._execute_request(qs))
|
||||
self._img_diff_error(r, h, "WMS_GetMap_Tiled_True")
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
||||
BIN
tests/testdata/control_images/qgis_server/WMS_GetMap_Tiled_False/WMS_GetMap_Tiled_False.png
vendored
Normal file
BIN
tests/testdata/control_images/qgis_server/WMS_GetMap_Tiled_False/WMS_GetMap_Tiled_False.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
BIN
tests/testdata/control_images/qgis_server/WMS_GetMap_Tiled_True/WMS_GetMap_Tiled_True.png
vendored
Normal file
BIN
tests/testdata/control_images/qgis_server/WMS_GetMap_Tiled_True/WMS_GetMap_Tiled_True.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
598
tests/testdata/qgis_server/wms_tile_buffer.qgs
vendored
Normal file
598
tests/testdata/qgis_server/wms_tile_buffer.qgs
vendored
Normal file
@ -0,0 +1,598 @@
|
||||
<!DOCTYPE qgis PUBLIC 'http://mrcc.com/qgis.dtd' 'SYSTEM'>
|
||||
<qgis projectname="" version="3.7.0-Master">
|
||||
<homePath path=""/>
|
||||
<title></title>
|
||||
<autotransaction active="0"/>
|
||||
<evaluateDefaultValues active="0"/>
|
||||
<trust active="1"/>
|
||||
<projectCrs>
|
||||
<spatialrefsys>
|
||||
<proj4>+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs</proj4>
|
||||
<srsid>3857</srsid>
|
||||
<srid>3857</srid>
|
||||
<authid>EPSG:3857</authid>
|
||||
<description>WGS 84 / Pseudo-Mercator</description>
|
||||
<projectionacronym>merc</projectionacronym>
|
||||
<ellipsoidacronym>WGS84</ellipsoidacronym>
|
||||
<geographicflag>false</geographicflag>
|
||||
</spatialrefsys>
|
||||
</projectCrs>
|
||||
<layer-tree-group>
|
||||
<customproperties/>
|
||||
<layer-tree-layer name="wms_tile_buffer_data" id="wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98" providerKey="ogr" checked="Qt::Checked" source="/home/lbartoletti/eleonore-test/wms_tile_buffer_data.gpkg|layername=wms_tile_buffer_data" expanded="1">
|
||||
<customproperties/>
|
||||
</layer-tree-layer>
|
||||
<custom-order enabled="0">
|
||||
<item>wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98</item>
|
||||
</custom-order>
|
||||
</layer-tree-group>
|
||||
<snapping-settings unit="1" type="1" enabled="0" tolerance="12" intersection-snapping="0" mode="2">
|
||||
<individual-layer-settings>
|
||||
<layer-setting type="1" enabled="0" tolerance="12" id="wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98" units="1"/>
|
||||
</individual-layer-settings>
|
||||
</snapping-settings>
|
||||
<relations/>
|
||||
<mapcanvas annotationsVisible="1" name="theMapCanvas">
|
||||
<units>meters</units>
|
||||
<extent>
|
||||
<xmin>304918.47943539364496246</xmin>
|
||||
<ymin>6160178.90903625823557377</ymin>
|
||||
<xmax>329687.225462922884617</xmax>
|
||||
<ymax>6174497.13128242827951908</ymax>
|
||||
</extent>
|
||||
<rotation>0</rotation>
|
||||
<destinationsrs>
|
||||
<spatialrefsys>
|
||||
<proj4>+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs</proj4>
|
||||
<srsid>3857</srsid>
|
||||
<srid>3857</srid>
|
||||
<authid>EPSG:3857</authid>
|
||||
<description>WGS 84 / Pseudo-Mercator</description>
|
||||
<projectionacronym>merc</projectionacronym>
|
||||
<ellipsoidacronym>WGS84</ellipsoidacronym>
|
||||
<geographicflag>false</geographicflag>
|
||||
</spatialrefsys>
|
||||
</destinationsrs>
|
||||
<rendermaptile>0</rendermaptile>
|
||||
<expressionContextScope/>
|
||||
</mapcanvas>
|
||||
<legend updateDrawingOrder="true">
|
||||
<legendlayer name="wms_tile_buffer_data" drawingOrder="-1" showFeatureCount="0" checked="Qt::Checked" open="true">
|
||||
<filegroup open="true" hidden="false">
|
||||
<legendlayerfile isInOverview="0" layerid="wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98" visible="1"/>
|
||||
</filegroup>
|
||||
</legendlayer>
|
||||
</legend>
|
||||
<mapViewDocks/>
|
||||
<mapViewDocks3D/>
|
||||
<projectlayers>
|
||||
<maplayer hasScaleBasedVisibilityFlag="0" simplifyMaxScale="1" refreshOnNotifyMessage="" simplifyLocal="1" autoRefreshTime="0" simplifyDrawingHints="0" wkbType="Point" minScale="150001" simplifyDrawingTol="1" simplifyAlgorithm="0" geometry="Point" autoRefreshEnabled="0" maxScale="1" refreshOnNotifyEnabled="0" readOnly="0" type="vector" labelsEnabled="0" styleCategories="AllStyleCategories">
|
||||
<extent>
|
||||
<xmin>289998</xmin>
|
||||
<ymin>6156740</ymin>
|
||||
<xmax>344497</xmax>
|
||||
<ymax>6188080</ymax>
|
||||
</extent>
|
||||
<id>wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98</id>
|
||||
<datasource>./wms_tile_buffer_data.gpkg|layername=wms_tile_buffer_data</datasource>
|
||||
<keywordList>
|
||||
<value></value>
|
||||
</keywordList>
|
||||
<layername>wms_tile_buffer_data</layername>
|
||||
<srs>
|
||||
<spatialrefsys>
|
||||
<proj4>+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs</proj4>
|
||||
<srsid>3857</srsid>
|
||||
<srid>3857</srid>
|
||||
<authid>EPSG:3857</authid>
|
||||
<description>WGS 84 / Pseudo-Mercator</description>
|
||||
<projectionacronym>merc</projectionacronym>
|
||||
<ellipsoidacronym>WGS84</ellipsoidacronym>
|
||||
<geographicflag>false</geographicflag>
|
||||
</spatialrefsys>
|
||||
</srs>
|
||||
<resourceMetadata>
|
||||
<identifier></identifier>
|
||||
<parentidentifier></parentidentifier>
|
||||
<language></language>
|
||||
<type></type>
|
||||
<title></title>
|
||||
<abstract></abstract>
|
||||
<links/>
|
||||
<fees></fees>
|
||||
<encoding></encoding>
|
||||
<crs>
|
||||
<spatialrefsys>
|
||||
<proj4></proj4>
|
||||
<srsid>0</srsid>
|
||||
<srid>0</srid>
|
||||
<authid></authid>
|
||||
<description></description>
|
||||
<projectionacronym></projectionacronym>
|
||||
<ellipsoidacronym></ellipsoidacronym>
|
||||
<geographicflag>true</geographicflag>
|
||||
</spatialrefsys>
|
||||
</crs>
|
||||
<extent/>
|
||||
</resourceMetadata>
|
||||
<provider encoding="UTF-8">ogr</provider>
|
||||
<vectorjoins/>
|
||||
<layerDependencies/>
|
||||
<dataDependencies/>
|
||||
<legend type="default-vector"/>
|
||||
<expressionfields/>
|
||||
<map-layer-style-manager current="défaut">
|
||||
<map-layer-style name="défaut"/>
|
||||
</map-layer-style-manager>
|
||||
<auxiliaryLayer/>
|
||||
<flags>
|
||||
<Identifiable>1</Identifiable>
|
||||
<Removable>1</Removable>
|
||||
<Searchable>1</Searchable>
|
||||
</flags>
|
||||
<renderer-v2 enableorderby="0" type="singleSymbol" forceraster="0" symbollevels="0">
|
||||
<symbols>
|
||||
<symbol name="0" type="marker" clip_to_extent="1" alpha="1" force_rhr="0">
|
||||
<layer locked="0" enabled="1" class="SvgMarker" pass="0">
|
||||
<prop v="0" k="angle"/>
|
||||
<prop v="190,178,151,255" k="color"/>
|
||||
<prop v="0" k="fixedAspectRatio"/>
|
||||
<prop v="1" k="horizontal_anchor_point"/>
|
||||
<prop v="accommodation/accommodation_bed_and_breakfast.svg" k="name"/>
|
||||
<prop v="0,-30" k="offset"/>
|
||||
<prop v="3x:0,0,0,0,0,0" k="offset_map_unit_scale"/>
|
||||
<prop v="Pixel" k="offset_unit"/>
|
||||
<prop v="35,35,35,255" k="outline_color"/>
|
||||
<prop v="0" k="outline_width"/>
|
||||
<prop v="3x:0,0,0,0,0,0" k="outline_width_map_unit_scale"/>
|
||||
<prop v="Pixel" k="outline_width_unit"/>
|
||||
<prop v="diameter" k="scale_method"/>
|
||||
<prop v="60" k="size"/>
|
||||
<prop v="3x:0,0,0,0,0,0" k="size_map_unit_scale"/>
|
||||
<prop v="Pixel" k="size_unit"/>
|
||||
<prop v="1" k="vertical_anchor_point"/>
|
||||
<data_defined_properties>
|
||||
<Option type="Map">
|
||||
<Option name="name" type="QString" value=""/>
|
||||
<Option name="properties"/>
|
||||
<Option name="type" type="QString" value="collection"/>
|
||||
</Option>
|
||||
</data_defined_properties>
|
||||
</layer>
|
||||
</symbol>
|
||||
</symbols>
|
||||
<rotation/>
|
||||
<sizescale/>
|
||||
</renderer-v2>
|
||||
<customproperties>
|
||||
<property value="id" key="dualview/previewExpressions"/>
|
||||
<property value="0" key="embeddedWidgets/count"/>
|
||||
<property key="variableNames"/>
|
||||
<property key="variableValues"/>
|
||||
</customproperties>
|
||||
<blendMode>0</blendMode>
|
||||
<featureBlendMode>0</featureBlendMode>
|
||||
<layerOpacity>1</layerOpacity>
|
||||
<SingleCategoryDiagramRenderer attributeLegend="1" diagramType="Histogram">
|
||||
<DiagramCategory rotationOffset="270" penAlpha="255" backgroundColor="#ffffff" labelPlacementMethod="XHeight" scaleDependency="Area" height="15" width="15" enabled="0" sizeType="MM" lineSizeType="MM" diagramOrientation="Up" penWidth="0" penColor="#000000" sizeScale="3x:0,0,0,0,0,0" backgroundAlpha="255" opacity="1" scaleBasedVisibility="0" barWidth="5" lineSizeScale="3x:0,0,0,0,0,0" maxScaleDenominator="1e+08" minimumSize="0" minScaleDenominator="1">
|
||||
<fontProperties style="" description=".SF NS Text,13,-1,5,50,0,0,0,0,0"/>
|
||||
<attribute color="#000000" label="" field=""/>
|
||||
</DiagramCategory>
|
||||
</SingleCategoryDiagramRenderer>
|
||||
<DiagramLayerSettings placement="0" dist="0" showAll="1" obstacle="0" priority="0" linePlacementFlags="18" zIndex="0">
|
||||
<properties>
|
||||
<Option type="Map">
|
||||
<Option name="name" type="QString" value=""/>
|
||||
<Option name="properties"/>
|
||||
<Option name="type" type="QString" value="collection"/>
|
||||
</Option>
|
||||
</properties>
|
||||
</DiagramLayerSettings>
|
||||
<geometryOptions geometryPrecision="0" removeDuplicateNodes="0">
|
||||
<activeChecks/>
|
||||
<checkConfiguration/>
|
||||
</geometryOptions>
|
||||
<fieldConfiguration>
|
||||
<field name="fid">
|
||||
<editWidget type="">
|
||||
<config>
|
||||
<Option/>
|
||||
</config>
|
||||
</editWidget>
|
||||
</field>
|
||||
<field name="id">
|
||||
<editWidget type="TextEdit">
|
||||
<config>
|
||||
<Option/>
|
||||
</config>
|
||||
</editWidget>
|
||||
</field>
|
||||
</fieldConfiguration>
|
||||
<aliases>
|
||||
<alias name="" field="fid" index="0"/>
|
||||
<alias name="" field="id" index="1"/>
|
||||
</aliases>
|
||||
<excludeAttributesWMS/>
|
||||
<excludeAttributesWFS/>
|
||||
<defaults>
|
||||
<default field="fid" applyOnUpdate="0" expression=""/>
|
||||
<default field="id" applyOnUpdate="0" expression=""/>
|
||||
</defaults>
|
||||
<constraints>
|
||||
<constraint unique_strength="1" field="fid" constraints="3" exp_strength="0" notnull_strength="1"/>
|
||||
<constraint unique_strength="1" field="id" constraints="3" exp_strength="0" notnull_strength="1"/>
|
||||
</constraints>
|
||||
<constraintExpressions>
|
||||
<constraint exp="" field="fid" desc=""/>
|
||||
<constraint exp="" field="id" desc=""/>
|
||||
</constraintExpressions>
|
||||
<expressionfields/>
|
||||
<attributeactions>
|
||||
<defaultAction value="{00000000-0000-0000-0000-000000000000}" key="Canvas"/>
|
||||
</attributeactions>
|
||||
<attributetableconfig actionWidgetStyle="dropDown" sortExpression="" sortOrder="0">
|
||||
<columns>
|
||||
<column name="id" type="field" width="-1" hidden="0"/>
|
||||
<column name="contract_code" type="field" width="-1" hidden="0"/>
|
||||
<column name="contract_name" type="field" width="-1" hidden="0"/>
|
||||
<column type="actions" width="-1" hidden="1"/>
|
||||
<column name="asset_uid" type="field" width="-1" hidden="0"/>
|
||||
<column name="bu_id" type="field" width="-1" hidden="0"/>
|
||||
<column name="bu_name" type="field" width="-1" hidden="0"/>
|
||||
<column name="country_name" type="field" width="-1" hidden="0"/>
|
||||
<column name="community_id" type="field" width="-1" hidden="0"/>
|
||||
<column name="community_name" type="field" width="-1" hidden="0"/>
|
||||
<column name="time_zone" type="field" width="-1" hidden="0"/>
|
||||
<column name="insertion_time" type="field" width="-1" hidden="0"/>
|
||||
<column name="reception_time" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_id" type="field" width="-1" hidden="0"/>
|
||||
<column name="gis_asset_id" type="field" width="-1" hidden="0"/>
|
||||
<column name="gis_asset_uuid" type="field" width="-1" hidden="0"/>
|
||||
<column name="local_activity_level1" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_post_code_local" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_town" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_street_name" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_data_source" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_domain" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_operator" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_owner" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_precision_class" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_status" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_type_text" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_subtype" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_function" type="field" width="-1" hidden="0"/>
|
||||
<column name="cmms_asset_id" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_name" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_street_name_added_information" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_commissioning_date" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_closure_date" type="field" width="-1" hidden="0"/>
|
||||
<column name="tank_vessels_number" type="field" width="-1" hidden="0"/>
|
||||
<column name="tank_vessels_volume_capacity" type="field" width="-1" hidden="0"/>
|
||||
<column name="installation_invert_altitude" type="field" width="-1" hidden="0"/>
|
||||
<column name="installation_overflow_altitude" type="field" width="-1" hidden="0"/>
|
||||
<column name="installation_land_altitude" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_longitude" type="field" width="-1" hidden="0"/>
|
||||
<column name="asset_latitude" type="field" width="-1" hidden="0"/>
|
||||
<column name="angle" type="field" width="-1" hidden="0"/>
|
||||
</columns>
|
||||
</attributetableconfig>
|
||||
<conditionalstyles>
|
||||
<rowstyles/>
|
||||
<fieldstyles/>
|
||||
</conditionalstyles>
|
||||
<editform tolerant="1">.</editform>
|
||||
<editforminit/>
|
||||
<editforminitcodesource>0</editforminitcodesource>
|
||||
<editforminitfilepath></editforminitfilepath>
|
||||
<editforminitcode></editforminitcode>
|
||||
<featformsuppress>0</featformsuppress>
|
||||
<editorlayout>generatedlayout</editorlayout>
|
||||
<editable>
|
||||
<field name="activity_code" editable="1"/>
|
||||
<field name="activity_name" editable="1"/>
|
||||
<field name="activity_type" editable="1"/>
|
||||
<field name="address" editable="1"/>
|
||||
<field name="angle" editable="1"/>
|
||||
<field name="asset_closure_date" editable="1"/>
|
||||
<field name="asset_commissioning_date" editable="1"/>
|
||||
<field name="asset_data_source" editable="1"/>
|
||||
<field name="asset_domain" editable="1"/>
|
||||
<field name="asset_function" editable="1"/>
|
||||
<field name="asset_id" editable="1"/>
|
||||
<field name="asset_latitude" editable="1"/>
|
||||
<field name="asset_longitude" editable="1"/>
|
||||
<field name="asset_name" editable="1"/>
|
||||
<field name="asset_operator" editable="1"/>
|
||||
<field name="asset_owner" editable="1"/>
|
||||
<field name="asset_post_code_local" editable="1"/>
|
||||
<field name="asset_precision_class" editable="1"/>
|
||||
<field name="asset_status" editable="1"/>
|
||||
<field name="asset_street_name" editable="1"/>
|
||||
<field name="asset_street_name_added_information" editable="1"/>
|
||||
<field name="asset_subtype" editable="1"/>
|
||||
<field name="asset_town" editable="1"/>
|
||||
<field name="asset_type_text" editable="1"/>
|
||||
<field name="asset_uid" editable="1"/>
|
||||
<field name="bottom_slab_level" editable="1"/>
|
||||
<field name="bu_id" editable="1"/>
|
||||
<field name="bu_name" editable="1"/>
|
||||
<field name="capacity" editable="1"/>
|
||||
<field name="city_code" editable="1"/>
|
||||
<field name="city_name" editable="1"/>
|
||||
<field name="cmms_asset_id" editable="1"/>
|
||||
<field name="code" editable="1"/>
|
||||
<field name="community_id" editable="1"/>
|
||||
<field name="community_name" editable="1"/>
|
||||
<field name="contract_code" editable="1"/>
|
||||
<field name="contract_name" editable="1"/>
|
||||
<field name="country_name" editable="1"/>
|
||||
<field name="data_source" editable="1"/>
|
||||
<field name="date_insert" editable="1"/>
|
||||
<field name="date_maj_ddesk" editable="1"/>
|
||||
<field name="date_update" editable="1"/>
|
||||
<field name="default" editable="1"/>
|
||||
<field name="district_name" editable="1"/>
|
||||
<field name="ditrict_code" editable="1"/>
|
||||
<field name="ditrict_name" editable="1"/>
|
||||
<field name="end_of_operation_date" editable="1"/>
|
||||
<field name="flow_daily" editable="1"/>
|
||||
<field name="flow_peak" editable="1"/>
|
||||
<field name="gis_asset_id" editable="1"/>
|
||||
<field name="gis_asset_uuid" editable="1"/>
|
||||
<field name="ground_level" editable="1"/>
|
||||
<field name="id" editable="1"/>
|
||||
<field name="insertion_time" editable="1"/>
|
||||
<field name="installation_invert_altitude" editable="1"/>
|
||||
<field name="installation_land_altitude" editable="1"/>
|
||||
<field name="installation_overflow_altitude" editable="1"/>
|
||||
<field name="local_activity_level1" editable="1"/>
|
||||
<field name="name" editable="1"/>
|
||||
<field name="num_tanks" editable="1"/>
|
||||
<field name="operator" editable="1"/>
|
||||
<field name="overflow_level" editable="1"/>
|
||||
<field name="owner" editable="1"/>
|
||||
<field name="power" editable="1"/>
|
||||
<field name="precision_class" editable="1"/>
|
||||
<field name="pressure_zone_name" editable="1"/>
|
||||
<field name="pressure_zone_type" editable="1"/>
|
||||
<field name="pump_nb" editable="1"/>
|
||||
<field name="reception_time" editable="1"/>
|
||||
<field name="service_date" editable="1"/>
|
||||
<field name="service_year" editable="1"/>
|
||||
<field name="source_id" editable="1"/>
|
||||
<field name="status" editable="1"/>
|
||||
<field name="street_name" editable="1"/>
|
||||
<field name="tank_vessels_number" editable="1"/>
|
||||
<field name="tank_vessels_volume_capacity" editable="1"/>
|
||||
<field name="time_zone" editable="1"/>
|
||||
<field name="type" editable="1"/>
|
||||
</editable>
|
||||
<labelOnTop>
|
||||
<field name="activity_code" labelOnTop="0"/>
|
||||
<field name="activity_name" labelOnTop="0"/>
|
||||
<field name="activity_type" labelOnTop="0"/>
|
||||
<field name="address" labelOnTop="0"/>
|
||||
<field name="angle" labelOnTop="0"/>
|
||||
<field name="asset_closure_date" labelOnTop="0"/>
|
||||
<field name="asset_commissioning_date" labelOnTop="0"/>
|
||||
<field name="asset_data_source" labelOnTop="0"/>
|
||||
<field name="asset_domain" labelOnTop="0"/>
|
||||
<field name="asset_function" labelOnTop="0"/>
|
||||
<field name="asset_id" labelOnTop="0"/>
|
||||
<field name="asset_latitude" labelOnTop="0"/>
|
||||
<field name="asset_longitude" labelOnTop="0"/>
|
||||
<field name="asset_name" labelOnTop="0"/>
|
||||
<field name="asset_operator" labelOnTop="0"/>
|
||||
<field name="asset_owner" labelOnTop="0"/>
|
||||
<field name="asset_post_code_local" labelOnTop="0"/>
|
||||
<field name="asset_precision_class" labelOnTop="0"/>
|
||||
<field name="asset_status" labelOnTop="0"/>
|
||||
<field name="asset_street_name" labelOnTop="0"/>
|
||||
<field name="asset_street_name_added_information" labelOnTop="0"/>
|
||||
<field name="asset_subtype" labelOnTop="0"/>
|
||||
<field name="asset_town" labelOnTop="0"/>
|
||||
<field name="asset_type_text" labelOnTop="0"/>
|
||||
<field name="asset_uid" labelOnTop="0"/>
|
||||
<field name="bottom_slab_level" labelOnTop="0"/>
|
||||
<field name="bu_id" labelOnTop="0"/>
|
||||
<field name="bu_name" labelOnTop="0"/>
|
||||
<field name="capacity" labelOnTop="0"/>
|
||||
<field name="city_code" labelOnTop="0"/>
|
||||
<field name="city_name" labelOnTop="0"/>
|
||||
<field name="cmms_asset_id" labelOnTop="0"/>
|
||||
<field name="code" labelOnTop="0"/>
|
||||
<field name="community_id" labelOnTop="0"/>
|
||||
<field name="community_name" labelOnTop="0"/>
|
||||
<field name="contract_code" labelOnTop="0"/>
|
||||
<field name="contract_name" labelOnTop="0"/>
|
||||
<field name="country_name" labelOnTop="0"/>
|
||||
<field name="data_source" labelOnTop="0"/>
|
||||
<field name="date_insert" labelOnTop="0"/>
|
||||
<field name="date_maj_ddesk" labelOnTop="0"/>
|
||||
<field name="date_update" labelOnTop="0"/>
|
||||
<field name="default" labelOnTop="0"/>
|
||||
<field name="district_name" labelOnTop="0"/>
|
||||
<field name="ditrict_code" labelOnTop="0"/>
|
||||
<field name="ditrict_name" labelOnTop="0"/>
|
||||
<field name="end_of_operation_date" labelOnTop="0"/>
|
||||
<field name="flow_daily" labelOnTop="0"/>
|
||||
<field name="flow_peak" labelOnTop="0"/>
|
||||
<field name="gis_asset_id" labelOnTop="0"/>
|
||||
<field name="gis_asset_uuid" labelOnTop="0"/>
|
||||
<field name="ground_level" labelOnTop="0"/>
|
||||
<field name="id" labelOnTop="0"/>
|
||||
<field name="insertion_time" labelOnTop="0"/>
|
||||
<field name="installation_invert_altitude" labelOnTop="0"/>
|
||||
<field name="installation_land_altitude" labelOnTop="0"/>
|
||||
<field name="installation_overflow_altitude" labelOnTop="0"/>
|
||||
<field name="local_activity_level1" labelOnTop="0"/>
|
||||
<field name="name" labelOnTop="0"/>
|
||||
<field name="num_tanks" labelOnTop="0"/>
|
||||
<field name="operator" labelOnTop="0"/>
|
||||
<field name="overflow_level" labelOnTop="0"/>
|
||||
<field name="owner" labelOnTop="0"/>
|
||||
<field name="power" labelOnTop="0"/>
|
||||
<field name="precision_class" labelOnTop="0"/>
|
||||
<field name="pressure_zone_name" labelOnTop="0"/>
|
||||
<field name="pressure_zone_type" labelOnTop="0"/>
|
||||
<field name="pump_nb" labelOnTop="0"/>
|
||||
<field name="reception_time" labelOnTop="0"/>
|
||||
<field name="service_date" labelOnTop="0"/>
|
||||
<field name="service_year" labelOnTop="0"/>
|
||||
<field name="source_id" labelOnTop="0"/>
|
||||
<field name="status" labelOnTop="0"/>
|
||||
<field name="street_name" labelOnTop="0"/>
|
||||
<field name="tank_vessels_number" labelOnTop="0"/>
|
||||
<field name="tank_vessels_volume_capacity" labelOnTop="0"/>
|
||||
<field name="time_zone" labelOnTop="0"/>
|
||||
<field name="type" labelOnTop="0"/>
|
||||
</labelOnTop>
|
||||
<widgets/>
|
||||
<previewExpression>id</previewExpression>
|
||||
<mapTip></mapTip>
|
||||
</maplayer>
|
||||
</projectlayers>
|
||||
<layerorder>
|
||||
<layer id="wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98"/>
|
||||
</layerorder>
|
||||
<properties>
|
||||
<DefaultStyles>
|
||||
<ColorRamp type="QString"></ColorRamp>
|
||||
<Fill type="QString"></Fill>
|
||||
<Line type="QString"></Line>
|
||||
<Marker type="QString"></Marker>
|
||||
<Opacity type="double">1</Opacity>
|
||||
<RandomColors type="bool">true</RandomColors>
|
||||
</DefaultStyles>
|
||||
<Gui>
|
||||
<CanvasColorBluePart type="int">255</CanvasColorBluePart>
|
||||
<CanvasColorGreenPart type="int">255</CanvasColorGreenPart>
|
||||
<CanvasColorRedPart type="int">255</CanvasColorRedPart>
|
||||
<SelectionColorAlphaPart type="int">255</SelectionColorAlphaPart>
|
||||
<SelectionColorBluePart type="int">0</SelectionColorBluePart>
|
||||
<SelectionColorGreenPart type="int">255</SelectionColorGreenPart>
|
||||
<SelectionColorRedPart type="int">255</SelectionColorRedPart>
|
||||
</Gui>
|
||||
<Legend>
|
||||
<filterByMap type="bool">false</filterByMap>
|
||||
</Legend>
|
||||
<Macros>
|
||||
<pythonCode type="QString"></pythonCode>
|
||||
</Macros>
|
||||
<Measure>
|
||||
<Ellipsoid type="QString">WGS84</Ellipsoid>
|
||||
</Measure>
|
||||
<Measurement>
|
||||
<AreaUnits type="QString"><unknown></AreaUnits>
|
||||
<DistanceUnits type="QString">meters</DistanceUnits>
|
||||
</Measurement>
|
||||
<PAL>
|
||||
<CandidatesLine type="int">50</CandidatesLine>
|
||||
<CandidatesPoint type="int">16</CandidatesPoint>
|
||||
<CandidatesPolygon type="int">30</CandidatesPolygon>
|
||||
<DrawOutlineLabels type="bool">true</DrawOutlineLabels>
|
||||
<DrawRectOnly type="bool">false</DrawRectOnly>
|
||||
<SearchMethod type="int">0</SearchMethod>
|
||||
<ShowingAllLabels type="bool">false</ShowingAllLabels>
|
||||
<ShowingCandidates type="bool">false</ShowingCandidates>
|
||||
<ShowingPartialsLabels type="bool">true</ShowingPartialsLabels>
|
||||
<TextFormat type="int">0</TextFormat>
|
||||
</PAL>
|
||||
<Paths>
|
||||
<Absolute type="bool">false</Absolute>
|
||||
</Paths>
|
||||
<PositionPrecision>
|
||||
<Automatic type="bool">true</Automatic>
|
||||
<DecimalPlaces type="int">2</DecimalPlaces>
|
||||
<DegreeFormat type="QString">MU</DegreeFormat>
|
||||
</PositionPrecision>
|
||||
<SpatialRefSys>
|
||||
<ProjectionsEnabled type="int">1</ProjectionsEnabled>
|
||||
</SpatialRefSys>
|
||||
<WCSLayers type="QStringList"/>
|
||||
<WCSUrl type="QString"></WCSUrl>
|
||||
<WFSLayers type="QStringList"/>
|
||||
<WFSTLayers>
|
||||
<Delete type="QStringList"/>
|
||||
<Insert type="QStringList"/>
|
||||
<Update type="QStringList"/>
|
||||
</WFSTLayers>
|
||||
<WFSUrl type="QString"></WFSUrl>
|
||||
<WMSAccessConstraints type="QString">None</WMSAccessConstraints>
|
||||
<WMSAddWktGeometry type="bool">true</WMSAddWktGeometry>
|
||||
<WMSContactMail type="QString"></WMSContactMail>
|
||||
<WMSContactOrganization type="QString"></WMSContactOrganization>
|
||||
<WMSContactPerson type="QString"></WMSContactPerson>
|
||||
<WMSContactPhone type="QString"></WMSContactPhone>
|
||||
<WMSContactPosition type="QString"></WMSContactPosition>
|
||||
<WMSDefaultMapUnitsPerMm type="double">1</WMSDefaultMapUnitsPerMm>
|
||||
<WMSFees type="QString">conditions unknown</WMSFees>
|
||||
<WMSImageQuality type="int">90</WMSImageQuality>
|
||||
<WMSKeywordList type="QStringList">
|
||||
<value></value>
|
||||
</WMSKeywordList>
|
||||
<WMSMaxAtlasFeatures type="int">1</WMSMaxAtlasFeatures>
|
||||
<WMSOnlineResource type="QString"></WMSOnlineResource>
|
||||
<WMSPrecision type="QString">8</WMSPrecision>
|
||||
<WMSRequestDefinedDataSources type="bool">false</WMSRequestDefinedDataSources>
|
||||
<WMSRootName type="QString"></WMSRootName>
|
||||
<WMSSegmentizeFeatureInfoGeometry type="bool">false</WMSSegmentizeFeatureInfoGeometry>
|
||||
<WMSServiceAbstract type="QString"></WMSServiceAbstract>
|
||||
<WMSServiceCapabilities type="bool">false</WMSServiceCapabilities>
|
||||
<WMSServiceTitle type="QString"></WMSServiceTitle>
|
||||
<WMSTileBuffer type="int">60</WMSTileBuffer>
|
||||
<WMSUrl type="QString"></WMSUrl>
|
||||
<WMSUseLayerIDs type="bool">false</WMSUseLayerIDs>
|
||||
<WMTSGrids>
|
||||
<CRS type="QStringList"/>
|
||||
<Config type="QStringList"/>
|
||||
</WMTSGrids>
|
||||
<WMTSJpegLayers>
|
||||
<Group type="QStringList"/>
|
||||
<Layer type="QStringList">
|
||||
<value>wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98</value>
|
||||
</Layer>
|
||||
<Project type="bool">true</Project>
|
||||
</WMTSJpegLayers>
|
||||
<WMTSLayers>
|
||||
<Group type="QStringList"/>
|
||||
<Layer type="QStringList">
|
||||
<value>wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98</value>
|
||||
</Layer>
|
||||
<Project type="bool">true</Project>
|
||||
</WMTSLayers>
|
||||
<WMTSMinScale type="int">5000</WMTSMinScale>
|
||||
<WMTSPngLayers>
|
||||
<Group type="QStringList"/>
|
||||
<Layer type="QStringList">
|
||||
<value>wms_tile_buffer_data_fcfdbf36_dd5a_45d6_b770_bdbb3794cf98</value>
|
||||
</Layer>
|
||||
<Project type="bool">true</Project>
|
||||
</WMTSPngLayers>
|
||||
<WMTSUrl type="QString"></WMTSUrl>
|
||||
</properties>
|
||||
<visibility-presets/>
|
||||
<transformContext/>
|
||||
<projectMetadata>
|
||||
<identifier></identifier>
|
||||
<parentidentifier></parentidentifier>
|
||||
<language></language>
|
||||
<type></type>
|
||||
<title></title>
|
||||
<abstract></abstract>
|
||||
<contact>
|
||||
<name></name>
|
||||
<organization></organization>
|
||||
<position></position>
|
||||
<voice></voice>
|
||||
<fax></fax>
|
||||
<email></email>
|
||||
<role></role>
|
||||
</contact>
|
||||
<links/>
|
||||
<author>SALSE Alice</author>
|
||||
<creation>2019-02-13T15:29:32</creation>
|
||||
</projectMetadata>
|
||||
<Annotations/>
|
||||
<Layouts/>
|
||||
</qgis>
|
||||
BIN
tests/testdata/qgis_server/wms_tile_buffer_data.gpkg
vendored
Normal file
BIN
tests/testdata/qgis_server/wms_tile_buffer_data.gpkg
vendored
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user