Пример #1
0
 def initParameters(self, config=None):
     m_param = QgsProcessingParameterNumber(self.M_VALUE,
                                            self.tr('M Value'), QgsProcessingParameterNumber.Double, defaultValue=0.0)
     m_param.setIsDynamic(True)
     m_param.setDynamicLayerParameterName('INPUT')
     m_param.setDynamicPropertyDefinition(QgsPropertyDefinition(self.M_VALUE, self.tr("M Value"), QgsPropertyDefinition.Double))
     self.addParameter(m_param)
Пример #2
0
 def initParameters(self, config=None):
     z_param = QgsProcessingParameterNumber(
         self.Z_VALUE,
         self.tr('Z Value'),
         QgsProcessingParameterNumber.Double,
         defaultValue=0.0)
     z_param.setIsDynamic(True)
     z_param.setDynamicLayerParameterName('INPUT')
     z_param.setDynamicPropertyDefinition(
         QgsPropertyDefinition(self.Z_VALUE, self.tr("Z Value"),
                               QgsPropertyDefinition.Double))
     self.addParameter(z_param)
    def initParameters(self, configuration): #pylint: disable=unused-argument,missing-docstring

        param_length = QgsProcessingParameterNumber(
            self.LENGTH,
            self.tr('Transect Length'),
            defaultValue=200.0)
        param_length.setIsDynamic(True)
        param_length.setDynamicLayerParameterName('INPUT')
        param_length.setDynamicPropertyDefinition(
            QgsPropertyDefinition(
                self.LENGTH,
                self.tr('Transect Length'),
                QgsPropertyDefinition.DoublePositive))
        self.addParameter(param_length)
    def initAlgorithm(self, config=None):
        self.strategies = [self.tr('Points count'), self.tr('Points density')]

        self.addParameter(
            QgsProcessingParameterFeatureSource(
                self.INPUT, self.tr('Input layer'),
                [QgsProcessing.TypeVectorPolygon]))
        self.addParameter(
            QgsProcessingParameterEnum(self.STRATEGY,
                                       self.tr('Sampling strategy'),
                                       self.strategies, False, 0))
        value_param = QgsProcessingParameterNumber(
            self.VALUE,
            self.tr('Point count or density'),
            QgsProcessingParameterNumber.Double,
            1,
            minValue=0)
        value_param.setIsDynamic(True)
        value_param.setDynamicLayerParameterName(self.INPUT)
        value_param.setDynamicPropertyDefinition(
            QgsPropertyDefinition("Value", self.tr("Point count or density"),
                                  QgsPropertyDefinition.Double))
        self.addParameter(value_param)

        # deprecated expression parameter - overrides value parameter if set
        exp_param = QgsProcessingParameterExpression(
            self.EXPRESSION,
            self.tr('Expression'),
            optional=True,
            parentLayerParameterName=self.INPUT)
        exp_param.setFlags(exp_param.flags()
                           | QgsProcessingParameterDefinition.FlagHidden)
        self.addParameter(exp_param)

        self.addParameter(
            QgsProcessingParameterDistance(
                self.MIN_DISTANCE, self.tr('Minimum distance between points'),
                None, self.INPUT, True, 0, 1000000000))
        self.addParameter(
            QgsProcessingParameterFeatureSink(
                self.OUTPUT,
                self.tr('Random points'),
                type=QgsProcessing.TypeVectorPoint))
Пример #5
0
    def initAlgorithm(self, configuration): #pylint: disable=unused-argument,missing-docstring

        self.addParameter(QgsProcessingParameterFeatureSource(
            self.INPUT,
            self.tr('Stream network (polylines)'),
            [QgsProcessing.TypeVectorLine]))

        self.addParameter(QgsProcessingParameterField(
            self.FROM_NODE_FIELD,
            self.tr('From Node Field'),
            parentLayerParameterName=self.INPUT,
            type=QgsProcessingParameterField.Numeric,
            defaultValue='NODEA'))

        self.addParameter(QgsProcessingParameterField(
            self.TO_NODE_FIELD,
            self.tr('To Node Field'),
            parentLayerParameterName=self.INPUT,
            type=QgsProcessingParameterField.Numeric,
            defaultValue='NODEB'))

        param_cost = QgsProcessingParameterNumber(
            self.COST,
            self.tr('Traversal Cost'),
            defaultValue=0.0)
        param_cost.setIsDynamic(True)
        param_cost.setDynamicLayerParameterName(self.COST)
        param_cost.setDynamicPropertyDefinition(
            QgsPropertyDefinition(
                self.COST,
                self.tr('Traversal Cost'),
                QgsPropertyDefinition.Double))
        self.addParameter(param_cost)

        self.addParameter(QgsProcessingParameterFeatureSink(
            self.OUTPUT,
            self.tr('Principal Stem'),
            QgsProcessing.TypeVectorLine))
Пример #6
0
    def initAlgorithm(self, config=None):

        # layer
        self.addParameter(
            QgsProcessingParameterFeatureSource(self.INPUT,
                                                self.tr('Input layer')))

        # x fields (or expression)
        self.addParameter(
            QgsProcessingParameterExpression(
                self.XEXPRESSION,
                self.tr('X Field'),
                parentLayerParameterName=self.INPUT))

        # y field (or expression)
        self.addParameter(
            QgsProcessingParameterExpression(
                self.YEXPRESSION,
                self.tr('Y Field'),
                parentLayerParameterName=self.INPUT))

        # size
        size_param = QgsProcessingParameterNumber(self.SIZE,
                                                  self.tr('Marker size'),
                                                  defaultValue=10)
        size_param.setIsDynamic(True)
        size_param.setDynamicLayerParameterName(self.INPUT)
        size_param.setDynamicPropertyDefinition(
            QgsPropertyDefinition(
                "SIZE",
                self.tr("Size"),
                QgsPropertyDefinition.Double,
            ))
        self.addParameter(size_param)

        # color
        color_param = QgsProcessingParameterColor(self.COLOR,
                                                  self.tr('Color'),
                                                  optional=True,
                                                  defaultValue='#8ebad9')
        color_param.setIsDynamic(True)
        color_param.setDynamicLayerParameterName(self.INPUT)
        color_param.setDynamicPropertyDefinition(
            QgsPropertyDefinition(
                "COLOR",
                self.tr("Color"),
                QgsPropertyDefinition.Double,
            ))
        self.addParameter(color_param)

        facet_row = QgsProcessingParameterExpression(
            self.FACET_ROW,
            self.tr('Facet row'),
            parentLayerParameterName=self.INPUT)
        facet_row.setFlags(QgsProcessingParameterDefinition.FlagAdvanced
                           | QgsProcessingParameterDefinition.FlagOptional)
        self.addParameter(facet_row)

        facet_col = QgsProcessingParameterExpression(
            self.FACET_COL,
            self.tr('Facet col'),
            optional=True,
            parentLayerParameterName=self.INPUT)
        facet_col.setFlags(QgsProcessingParameterDefinition.FlagAdvanced
                           | QgsProcessingParameterDefinition.FlagOptional)
        self.addParameter(facet_col)

        # offline parameter
        offline_param = QgsProcessingParameterBoolean(
            self.OFFLINE,
            self.tr('Complete offline usage'),
            defaultValue=False)
        offline_param.setFlags(QgsProcessingParameterDefinition.FlagAdvanced)
        self.addParameter(offline_param)

        # html file output
        self.addParameter(
            QgsProcessingParameterFileDestination(
                self.OUTPUT_HTML_FILE, self.tr('Scatter Plot'),
                self.tr('HTML files (*.html)')))

        # json file output
        self.addParameter(
            QgsProcessingParameterFileDestination(
                self.OUTPUT_JSON_FILE,
                self.tr('JSON file'),
                self.tr('JSON Files (*.json)'),
                createByDefault=False,
                optional=True))