当前位置: 首页>>代码示例>>Python>>正文


Python QgsMultiRenderChecker.setControlName方法代码示例

本文整理汇总了Python中qgis.core.QgsMultiRenderChecker.setControlName方法的典型用法代码示例。如果您正苦于以下问题:Python QgsMultiRenderChecker.setControlName方法的具体用法?Python QgsMultiRenderChecker.setControlName怎么用?Python QgsMultiRenderChecker.setControlName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在qgis.core.QgsMultiRenderChecker的用法示例。


在下文中一共展示了QgsMultiRenderChecker.setControlName方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: testRenderLineLayerDataDefined

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def testRenderLineLayerDataDefined(self):
        """ test that rendering a line symbol with data defined enabled layer works"""

        lines_shp = os.path.join(TEST_DATA_DIR, 'lines.shp')
        lines_layer = QgsVectorLayer(lines_shp, 'Lines', 'ogr')
        QgsProject.instance().addMapLayer(lines_layer)

        layer = QgsSimpleLineSymbolLayer()
        layer.setDataDefinedProperty(QgsSymbolLayer.PropertyLayerEnabled, QgsProperty.fromExpression("Name='Highway'"))
        layer.setColor(QColor(100, 150, 150))
        layer.setWidth(5)

        symbol = QgsLineSymbol()
        symbol.changeSymbolLayer(0, layer)
        lines_layer.setRenderer(QgsSingleSymbolRenderer(symbol))

        ms = QgsMapSettings()
        ms.setOutputSize(QSize(400, 400))
        ms.setOutputDpi(96)
        ms.setExtent(QgsRectangle(-133, 22, -70, 52))
        ms.setLayers([lines_layer])

        renderchecker = QgsMultiRenderChecker()
        renderchecker.setMapSettings(ms)
        renderchecker.setControlPathPrefix('symbol_layer')
        renderchecker.setControlName('expected_linelayer_ddenabled')
        self.assertTrue(renderchecker.runTest('linelayer_ddenabled'))
        QgsProject.instance().removeMapLayer(lines_layer)
开发者ID:mj10777,项目名称:QGIS,代码行数:30,代码来源:test_qgssymbollayer.py

示例2: testRenderMarkerLayerDataDefined

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def testRenderMarkerLayerDataDefined(self):
        """ test that rendering a marker symbol with data defined enabled layer works"""

        points_shp = os.path.join(TEST_DATA_DIR, 'points.shp')
        points_layer = QgsVectorLayer(points_shp, 'Points', 'ogr')
        QgsProject.instance().addMapLayer(points_layer)

        layer = QgsSimpleMarkerSymbolLayer()
        layer.setDataDefinedProperty(QgsSymbolLayer.PropertyLayerEnabled, QgsProperty.fromExpression("Class='Biplane'"))
        layer.setColor(QColor(100, 150, 150))
        layer.setSize(5)
        layer.setStrokeStyle(Qt.NoPen)

        symbol = QgsMarkerSymbol()
        symbol.changeSymbolLayer(0, layer)
        points_layer.setRenderer(QgsSingleSymbolRenderer(symbol))

        ms = QgsMapSettings()
        ms.setOutputSize(QSize(400, 400))
        ms.setOutputDpi(96)
        ms.setExtent(QgsRectangle(-133, 22, -70, 52))
        ms.setLayers([points_layer])

        renderchecker = QgsMultiRenderChecker()
        renderchecker.setMapSettings(ms)
        renderchecker.setControlPathPrefix('symbol_layer')
        renderchecker.setControlName('expected_markerlayer_ddenabled')
        self.assertTrue(renderchecker.runTest('markerlayer_ddenabled'))
        QgsProject.instance().removeMapLayer(points_layer)
开发者ID:mj10777,项目名称:QGIS,代码行数:31,代码来源:test_qgssymbollayer.py

示例3: testRenderWithin

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def testRenderWithin(self):
     self.layer.renderer().setTolerance(10)
     renderchecker = QgsMultiRenderChecker()
     renderchecker.setMapSettings(self.mapsettings)
     renderchecker.setControlPathPrefix('cluster_renderer')
     renderchecker.setControlName('expected_cluster_cluster')
     self.assertTrue(renderchecker.runTest('expected_cluster_cluster'))
开发者ID:dmarteau,项目名称:QGIS,代码行数:9,代码来源:test_qgspointclusterrenderer.py

示例4: renderCheck

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def renderCheck(self, mismatch=0, colortol=0, imgpath='', grpprefix=''):
        """Check rendered map canvas or existing image against control image

        :mismatch: number of pixels different from control, and still valid
        :colortol: maximum difference for each color component including alpha
        :imgpath: existing image; if present, skips rendering canvas
        :grpprefix: compare test image/rendering against different test group
        """
        if not grpprefix:
            grpprefix = self._TestGroupPrefix
        chk = QgsMultiRenderChecker()

        chk.setControlPathPrefix('expected_' + grpprefix)

        chk.setControlName(self._Test)

        if imgpath:
            chk.setRenderedImage(imgpath)

        ms = self._MapSettings  # class settings
        if self._TestMapSettings is not None:
            ms = self._TestMapSettings  # per test settings
        chk.setMapSettings(ms)

        chk.setColorTolerance(colortol)
        # noinspection PyUnusedLocal
        res = chk.runTest(self._Test, mismatch)
        if PALREPORT and not res:  # don't report ok checks
            testname = self._TestGroup + ' . ' + self._Test
            PALREPORTS[testname] = chk.report()
        msg = '\nRender check failed for "{0}"'.format(self._Test)
        return res, msg
开发者ID:GrokImageCompression,项目名称:QGIS,代码行数:34,代码来源:test_qgspallabeling_base.py

示例5: testVectorBlending

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def testVectorBlending(self):
        """Test that blend modes work for vector layers."""

        # Add vector layers to map
        myLayers = []
        myLayers.append(self.mLineLayer.id())
        myLayers.append(self.mPolygonLayer.id())
        self.mapSettings.setLayers(myLayers)
        self.mapSettings.setExtent(self.extent)

        # Set blending modes for both layers
        self.mLineLayer.setBlendMode(QPainter.CompositionMode_Difference)
        self.mPolygonLayer.setBlendMode(QPainter.CompositionMode_Difference)

        checker = QgsMultiRenderChecker()
        checker.setControlName("expected_vector_blendmodes")
        checker.setMapSettings(self.mapSettings)
        checker.setColorTolerance(1)

        myResult = checker.runTest("vector_blendmodes", 20)
        myMessage = ('vector blending failed')
        assert myResult, myMessage

        # Reset layers
        self.mLineLayer.setBlendMode(QPainter.CompositionMode_SourceOver)
        self.mPolygonLayer.setBlendMode(QPainter.CompositionMode_SourceOver)
开发者ID:NyakudyaA,项目名称:QGIS,代码行数:28,代码来源:test_qgsblendmodes.py

示例6: testRenderFillLayerDataDefined

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def testRenderFillLayerDataDefined(self):
        """ test that rendering a fill symbol with data defined enabled layer works"""

        polys_shp = os.path.join(TEST_DATA_DIR, 'polys.shp')
        polys_layer = QgsVectorLayer(polys_shp, 'Polygons', 'ogr')
        QgsProject.instance().addMapLayer(polys_layer)

        layer = QgsSimpleFillSymbolLayer()
        layer.setDataDefinedProperty("enabled", QgsDataDefined("Name='Lake'"))
        layer.setBorderStyle(Qt.NoPen)
        layer.setColor(QColor(100, 150, 150))

        symbol = QgsFillSymbol()
        symbol.changeSymbolLayer(0, layer)
        polys_layer.setRenderer(QgsSingleSymbolRenderer(symbol))

        ms = QgsMapSettings()
        ms.setOutputSize(QSize(400, 400))
        ms.setOutputDpi(96)
        ms.setExtent(QgsRectangle(-133, 22, -70, 52))
        ms.setLayers([polys_layer])

        renderchecker = QgsMultiRenderChecker()
        renderchecker.setMapSettings(ms)
        renderchecker.setControlPathPrefix('symbol_layer')
        renderchecker.setControlName('expected_filllayer_ddenabled')
        self.assertTrue(renderchecker.runTest('filllayer_ddenabled'))
        QgsProject.instance().removeMapLayer(polys_layer)
开发者ID:spono,项目名称:QGIS,代码行数:30,代码来源:test_qgssymbollayer.py

示例7: testRenderNoCluster

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def testRenderNoCluster(self):
     self.layer.renderer().setTolerance(1)
     renderchecker = QgsMultiRenderChecker()
     renderchecker.setMapSettings(self.mapsettings)
     renderchecker.setControlPathPrefix('displacement_renderer')
     renderchecker.setControlName('expected_displacement_no_cluster')
     self.assertTrue(renderchecker.runTest('displacement_no_cluster'))
开发者ID:CS-SI,项目名称:QGIS,代码行数:9,代码来源:test_qgspointdisplacementrenderer.py

示例8: testRenderGrid

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def testRenderGrid(self):
     self.layer.renderer().setTolerance(10)
     self.layer.renderer().setPlacement(QgsPointDisplacementRenderer.Grid)
     renderchecker = QgsMultiRenderChecker()
     renderchecker.setMapSettings(self.mapsettings)
     renderchecker.setControlPathPrefix('displacement_renderer')
     renderchecker.setControlName('expected_displacement_grid')
     self.assertTrue(renderchecker.runTest('expected_displacement_grid'))
开发者ID:CS-SI,项目名称:QGIS,代码行数:10,代码来源:test_qgspointdisplacementrenderer.py

示例9: test_marker

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def test_marker(self):
     sym = self.renderer.symbol()
     sym_layer = QgsGeometryGeneratorSymbolLayerV2.create({'geometryModifier': 'centroid($geometry)'})
     sym_layer.setSymbolType(QgsSymbolV2.Marker)
     sym.changeSymbolLayer(0, sym_layer)
     renderchecker = QgsMultiRenderChecker()
     renderchecker.setMapSettings(self.mapsettings)
     renderchecker.setControlName('expected_geometrygenerator_marker')
     self.assertTrue(renderchecker.runTest('geometrygenerator_marker'))
开发者ID:supergis,项目名称:QGIS,代码行数:11,代码来源:test_qgsgeometrygeneratorsymbollayerv2.py

示例10: testOrderBy

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def testOrderBy(self):
        self.renderer.setOrderBy(QgsFeatureRequest.OrderBy([QgsFeatureRequest.OrderByClause('Value', False)]))

        # Setup rendering check
        renderchecker = QgsMultiRenderChecker()
        renderchecker.setMapSettings(self.mapsettings)
        renderchecker.setControlName('expected_singlesymbol_orderby')
        result = renderchecker.runTest('singlesymbol_orderby')

        assert result
开发者ID:avautour,项目名称:QGIS,代码行数:12,代码来源:test_qgssinglesymbolrenderer.py

示例11: checkImage

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def checkImage(self, name, reference_image, rendered_image, size_tolerance=0):
     checker = QgsMultiRenderChecker()
     checker.setControlPathPrefix("layout_exporter")
     checker.setControlName("expected_layoutexporter_" + reference_image)
     checker.setRenderedImage(rendered_image)
     checker.setColorTolerance(2)
     checker.setSizeTolerance(size_tolerance, size_tolerance)
     result = checker.runTest(name, 20)
     self.report += checker.report()
     print((self.report))
     return result
开发者ID:lyhkop,项目名称:QGIS,代码行数:13,代码来源:test_qgslayoutexporter.py

示例12: testRenderWithin

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def testRenderWithin(self):
     layer, renderer, mapsettings = self._setUp()
     layer.renderer().setTolerance(10)
     renderchecker = QgsMultiRenderChecker()
     renderchecker.setMapSettings(mapsettings)
     renderchecker.setControlPathPrefix('displacement_renderer')
     renderchecker.setControlName('expected_displacement_cluster')
     res = renderchecker.runTest('expected_displacement_cluster')
     self.report += renderchecker.report()
     self.assertTrue(res)
     self._tearDown(layer)
开发者ID:dmarteau,项目名称:QGIS,代码行数:13,代码来源:test_qgspointdisplacementrenderer.py

示例13: testOrderBy

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def testOrderBy(self):
        self.renderer.setOrderBy(QgsFeatureRequest.OrderBy([QgsFeatureRequest.OrderByClause('Value', False)]))
        self.renderer.setOrderByEnabled(True)

        # Setup rendering check
        renderchecker = QgsMultiRenderChecker()
        renderchecker.setMapSettings(self.mapsettings)
        renderchecker.setControlName('expected_singlesymbol_orderby')
        self.assertTrue(renderchecker.runTest('singlesymbol_orderby'))

        # disable order by and retest
        self.renderer.setOrderByEnabled(False)
        self.assertTrue(renderchecker.runTest('single'))
开发者ID:yoichigmf,项目名称:QGIS,代码行数:15,代码来源:test_qgssinglesymbolrenderer.py

示例14: test_marker

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
    def test_marker(self):
        sym = self.polys_layer.renderer().symbol()
        sym_layer = QgsGeometryGeneratorSymbolLayer.create({"geometryModifier": "centroid($geometry)"})
        sym_layer.setSymbolType(QgsSymbol.Marker)
        sym.changeSymbolLayer(0, sym_layer)

        rendered_layers = [self.polys_layer.id()]
        self.mapsettings.setLayers(rendered_layers)

        renderchecker = QgsMultiRenderChecker()
        renderchecker.setMapSettings(self.mapsettings)
        renderchecker.setControlName("expected_geometrygenerator_marker")
        self.assertTrue(renderchecker.runTest("geometrygenerator_marker"))
开发者ID:mbernasocchi,项目名称:QGIS,代码行数:15,代码来源:test_qgsgeometrygeneratorsymbollayer.py

示例15: test_mixed

# 需要导入模块: from qgis.core import QgsMultiRenderChecker [as 别名]
# 或者: from qgis.core.QgsMultiRenderChecker import setControlName [as 别名]
 def test_mixed(self):
     sym = self.renderer.symbol()
     buffer_layer = QgsGeometryGeneratorSymbolLayerV2.create({'geometryModifier': 'buffer($geometry, "value"/15)'})
     buffer_layer.setSymbolType(QgsSymbolV2.Fill)
     buffer_layer.subSymbol()
     sym.appendSymbolLayer(buffer_layer)
     marker_layer = QgsGeometryGeneratorSymbolLayerV2.create({'geometryModifier': 'centroid($geometry)'})
     marker_layer.setSymbolType(QgsSymbolV2.Marker)
     sym.appendSymbolLayer(marker_layer)
     renderchecker = QgsMultiRenderChecker()
     renderchecker.setMapSettings(self.mapsettings)
     renderchecker.setControlName('expected_geometrygenerator_mixed')
     self.assertTrue(renderchecker.runTest('geometrygenerator_mixed'))
开发者ID:supergis,项目名称:QGIS,代码行数:15,代码来源:test_qgsgeometrygeneratorsymbollayerv2.py


注:本文中的qgis.core.QgsMultiRenderChecker.setControlName方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。