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


Python QgsSymbolLayerV2Utils.fieldOrExpressionToExpression方法代码示例

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


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

示例1: testQgsGraduatedSymbolRendererV2_1

# 需要导入模块: from qgis.core import QgsSymbolLayerV2Utils [as 别名]
# 或者: from qgis.core.QgsSymbolLayerV2Utils import fieldOrExpressionToExpression [as 别名]
    def testQgsGraduatedSymbolRendererV2_1(self):
        """Test QgsGraduatedSymbolRendererV2: Basic get/set functions """

        # Create a renderer
        renderer = QgsGraduatedSymbolRendererV2()

        symbol = createMarkerSymbol()
        renderer.setSourceSymbol(symbol.clone())
        self.assertEqual(symbol.dump(), renderer.sourceSymbol().dump(), "Get/set renderer source symbol")

        attr = '"value"*"value"'
        renderer.setClassAttribute(attr)
        self.assertEqual(attr, renderer.classAttribute(), "Get/set renderer class attribute")

        for m in (
            QgsGraduatedSymbolRendererV2.Custom,
            QgsGraduatedSymbolRendererV2.EqualInterval,
            QgsGraduatedSymbolRendererV2.Quantile,
            QgsGraduatedSymbolRendererV2.Jenks,
            QgsGraduatedSymbolRendererV2.Pretty,
            QgsGraduatedSymbolRendererV2.StdDev,
        ):
            renderer.setMode(m)
            self.assertEqual(m, renderer.mode(), "Get/set renderer mode")

        format = createLabelFormat()
        renderer.setLabelFormat(format)
        self.assertEqual(
            dumpLabelFormat(format),
            dumpLabelFormat(renderer.labelFormat()),
            "Get/set renderer label format")

        ramp = createColorRamp()
        renderer.setSourceColorRamp(ramp)
        self.assertEqual(
            dumpColorRamp(ramp),
            dumpColorRamp(renderer.sourceColorRamp()),
            "Get/set renderer color ramp")

        renderer.setInvertedColorRamp(True)
        self.assertTrue(renderer.invertedColorRamp(),
                        "Get/set renderer inverted color ramp")
        renderer.setInvertedColorRamp(False)
        self.assertFalse(renderer.invertedColorRamp(),
                         "Get/set renderer inverted color ramp")

        value = '"value"*2'
        exp = QgsSymbolLayerV2Utils.fieldOrExpressionToExpression(value)
        valuestr = QgsSymbolLayerV2Utils.fieldOrExpressionFromExpression(exp)
        renderer.setRotationField(value)
        self.assertEqual(valuestr, renderer.rotationField(),
                         "Get/set renderer rotation field")

        value = '"value"*3'
        exp = QgsSymbolLayerV2Utils.fieldOrExpressionToExpression(value)
        valuestr = QgsSymbolLayerV2Utils.fieldOrExpressionFromExpression(exp)
        renderer.setSizeScaleField(value)
        self.assertEqual(valuestr, renderer.sizeScaleField(),
                         "Get/set renderer size scale field")

        renderer.setSourceColorRamp(ramp)
        self.assertEqual(
            dumpColorRamp(ramp),
            dumpColorRamp(renderer.sourceColorRamp()),
            "Get/set renderer color ramp")

        for sm in (
            QgsSymbolV2.ScaleArea,
            QgsSymbolV2.ScaleDiameter,
        ):
            renderer.setScaleMethod(sm)
            self.assertEqual(str(sm), str(renderer.scaleMethod()),
                             "Get/set renderer scale method")
        # test for classificatio with varying size
        renderer.setGraduatedMethod(QgsGraduatedSymbolRendererV2.GraduatedSize)
        renderer.setSourceColorRamp(None)
        renderer.addClassLowerUpper(0, 2)
        renderer.addClassLowerUpper(2, 4)
        renderer.addClassLowerUpper(4, 6)
        renderer.setSymbolSizes(2, 13)
        self.assertEqual(renderer.maxSymbolSize(), 13)
        self.assertEqual(renderer.minSymbolSize(), 2)
        refSizes = [2, (13 + 2) * .5, 13]
        ctx = QgsRenderContext()
        for idx, symbol in enumerate(renderer.symbols2(ctx)):
            self.assertEqual(symbol.size(), refSizes[idx])
开发者ID:Geoneer,项目名称:QGIS,代码行数:88,代码来源:test_qgsgraduatedsymbolrendererv2.py

示例2: testQgsGraduatedSymbolRendererV2_1

# 需要导入模块: from qgis.core import QgsSymbolLayerV2Utils [as 别名]
# 或者: from qgis.core.QgsSymbolLayerV2Utils import fieldOrExpressionToExpression [as 别名]
    def testQgsGraduatedSymbolRendererV2_1(self):
        """Test QgsGraduatedSymbolRendererV2: Basic get/set functions """

        # Create a renderer
        renderer=QgsGraduatedSymbolRendererV2()

        symbol=createMarkerSymbol()
        renderer.setSourceSymbol(symbol.clone())
        self.assertEqual(symbol.dump(),renderer.sourceSymbol().dump(),"Get/set renderer source symbol")

        attr='"value"*"value"'
        renderer.setClassAttribute(attr)
        self.assertEqual(attr,renderer.classAttribute(),"Get/set renderer class attribute")

        for m in (
            QgsGraduatedSymbolRendererV2.Custom,
            QgsGraduatedSymbolRendererV2.EqualInterval,
            QgsGraduatedSymbolRendererV2.Quantile,
            QgsGraduatedSymbolRendererV2.Jenks,
            QgsGraduatedSymbolRendererV2.Pretty,
            QgsGraduatedSymbolRendererV2.StdDev,
        ):
            renderer.setMode(m)
            self.assertEqual(m,renderer.mode(),"Get/set renderer mode")

        format=createLabelFormat()
        renderer.setLabelFormat(format)
        self.assertEqual(
            dumpLabelFormat(format),
            dumpLabelFormat(renderer.labelFormat()),
            "Get/set renderer label format")

        ramp=createColorRamp()
        renderer.setSourceColorRamp(ramp)
        self.assertEqual(
            dumpColorRamp(ramp),
            dumpColorRamp(renderer.sourceColorRamp()),
            "Get/set renderer color ramp")

        renderer.setInvertedColorRamp(True)
        self.assertTrue(renderer.invertedColorRamp(),
                        "Get/set renderer inverted color ramp")
        renderer.setInvertedColorRamp(False)
        self.assertFalse(renderer.invertedColorRamp(),
                         "Get/set renderer inverted color ramp")

        value='"value"*2'
        exp=QgsSymbolLayerV2Utils.fieldOrExpressionToExpression(value)
        valuestr=QgsSymbolLayerV2Utils.fieldOrExpressionFromExpression(exp)
        renderer.setRotationField(value)
        self.assertEqual(valuestr,renderer.rotationField(),
                         "Get/set renderer rotation field")

        value='"value"*3'
        exp=QgsSymbolLayerV2Utils.fieldOrExpressionToExpression(value)
        valuestr=QgsSymbolLayerV2Utils.fieldOrExpressionFromExpression(exp)
        renderer.setSizeScaleField(value)
        self.assertEqual(valuestr,renderer.sizeScaleField(),
                         "Get/set renderer size scale field")


        renderer.setSourceColorRamp(ramp)
        self.assertEqual(
            dumpColorRamp(ramp),
            dumpColorRamp(renderer.sourceColorRamp()),
            "Get/set renderer color ramp")

        for sm in (
            QgsSymbolV2.ScaleArea,
            QgsSymbolV2.ScaleDiameter,
        ):
            renderer.setScaleMethod(sm)
            self.assertEqual(str(sm),str(renderer.scaleMethod()),
                             "Get/set renderer scale method")
开发者ID:Ariki,项目名称:QGIS,代码行数:76,代码来源:test_qgsgraduatedsymbolrendererv2.py


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