本文整理汇总了Python中qgis.core.QgsProcessingModelChildParameterSource.fromExpressionText方法的典型用法代码示例。如果您正苦于以下问题:Python QgsProcessingModelChildParameterSource.fromExpressionText方法的具体用法?Python QgsProcessingModelChildParameterSource.fromExpressionText怎么用?Python QgsProcessingModelChildParameterSource.fromExpressionText使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.core.QgsProcessingModelChildParameterSource
的用法示例。
在下文中一共展示了QgsProcessingModelChildParameterSource.fromExpressionText方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _expressionValues
# 需要导入模块: from qgis.core import QgsProcessingModelChildParameterSource [as 别名]
# 或者: from qgis.core.QgsProcessingModelChildParameterSource import fromExpressionText [as 别名]
def _expressionValues(self, text):
strings = self.dialog.getAvailableValuesOfType(
[QgsProcessingParameterString, QgsProcessingParameterNumber], [])
model_params = [(self.dialog.resolveValueDescription(s), s) for s in strings]
variables = QgsExpression.referencedVariables(text)
# replace description by parameter's name (diverging after model save)
descriptions = QgsExpression.referencedVariables(text)
for k, v in model_params:
if k in descriptions:
text = text.replace('[% @{} %]'.format(k), '[% @{} %]'.format(v.parameterName()))
src = QgsProcessingModelChildParameterSource.fromExpressionText(text)
# add parameters currently used by the expression
expression_values = []
expression_values.append(src)
for k, v in model_params:
if k in variables:
expression_values.append(v)
return expression_values
示例2: _expressionValues
# 需要导入模块: from qgis.core import QgsProcessingModelChildParameterSource [as 别名]
# 或者: from qgis.core.QgsProcessingModelChildParameterSource import fromExpressionText [as 别名]
def _expressionValues(self, text):
strings = self.dialog.getAvailableValuesOfType(
[QgsProcessingParameterString, QgsProcessingParameterNumber], [])
model_params = [(self.dialog.resolveValueDescription(s), s) for s in strings]
variables = QgsExpression.referencedVariables(text)
expression_values = []
expression_values.append(QgsProcessingModelChildParameterSource.fromExpressionText(text))
for k, v in model_params:
if k in variables:
expression_values.append(v)
return expression_values