コード例 #1
0
    def defineCharacteristics(self):
        self.name = "Distance to Nearest Hub"
        self.group = "Create"

        self.addParameter(
            ParameterVector(self.SOURCENAME, "Source Points Layer",
                            ParameterVector.VECTOR_TYPE_ANY))
        self.addParameter(
            ParameterVector(self.DESTNAME, "Destination Hubs Layer",
                            ParameterVector.VECTOR_TYPE_ANY))
        self.addParameter(
            ParameterTableField(self.NAMEATTRIBUTE, "Hub Layer Name Attribute",
                                self.DESTNAME))

        self.shapetypes = ["Point", "Line to Hub"]
        self.addParameter(
            ParameterSelection(self.SHAPETYPE,
                               "Output Shape Type",
                               self.shapetypes,
                               default=0))
        self.unitlist = [
            "Meters", "Feet", "Miles", "Kilometers", "Layer Units"
        ]
        self.addParameter(
            ParameterSelection(self.UNITS,
                               "Measurement Unit",
                               self.unitlist,
                               default=0))

        self.addOutput(OutputVector(self.SAVENAME, "Output Shapefile"))
コード例 #2
0
	def defineCharacteristics(self):
		self.name = "Merge vector layers"
		self.group = "Vector general tools"

		self.addParameter(ParameterVector(self.LAYER1, "Input layer 1", ParameterVector.VECTOR_TYPE_ANY))
		self.addParameter(ParameterVector(self.LAYER2, "Source layer 2", ParameterVector.VECTOR_TYPE_ANY))
		self.addOutput(OutputVector(self.SAVENAME, "Output"))
コード例 #3
0
    def defineCharacteristics(self):
        self.name = "Distance matrix"
        self.group = "Analysis tools"

        self.addParameter(
            ParameterVector(PointDistance.INPUT_LAYER, "Input point layer",
                            ParameterVector.VECTOR_TYPE_POINT))
        self.addParameter(
            ParameterTableField(PointDistance.INPUT_FIELD,
                                "Input unique ID field",
                                PointDistance.INPUT_LAYER,
                                ParameterTableField.DATA_TYPE_ANY))
        self.addParameter(
            ParameterVector(PointDistance.TARGET_LAYER, "Target point layer",
                            ParameterVector.VECTOR_TYPE_POINT))
        self.addParameter(
            ParameterTableField(PointDistance.TARGET_FIELD,
                                "Target unique ID field",
                                PointDistance.TARGET_LAYER,
                                ParameterTableField.DATA_TYPE_ANY))
        self.addParameter(
            ParameterSelection(PointDistance.MATRIX_TYPE, "Output matrix type",
                               PointDistance.MAT_TYPES, 0))
        self.addParameter(
            ParameterNumber(PointDistance.NEAREST_POINTS,
                            "Use only the nearest (k) target points", 0, 9999,
                            0))

        self.addOutput(
            OutputFile(PointDistance.DISTANCE_MATRIX, "Distance matrix"))
コード例 #4
0
ファイル: Intersection.py プロジェクト: sdikiy/Quantum-GIS
 def defineCharacteristics(self):
     self.name = "Intersection"
     self.group = "Geoprocessing tools"
     self.addParameter(ParameterVector(Intersection.INPUT, "Input layer", ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(ParameterVector(Intersection.INPUT2, "Intersect layer", ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(ParameterBoolean(Intersection.USE_SELECTED, "Use selected features (input)", False))
     self.addParameter(ParameterBoolean(Intersection.USE_SELECTED2, "Use selected features (intersect)", False))
     self.addOutput(OutputVector(Intersection.OUTPUT, "Intersection"))
コード例 #5
0
 def defineCharacteristics(self):
     self.name = "Join attributes table"
     self.group = "Vector general tools"
     self.addParameter(ParameterVector(self.INPUT_LAYER, "Input layer", [ParameterVector.VECTOR_TYPE_ANY], False))
     self.addParameter(ParameterVector(self.INPUT_LAYER_2, "Input layer 2", [ParameterVector.VECTOR_TYPE_ANY], False))
     self.addParameter(ParameterTableField(self.TABLE_FIELD, "Table field", self.INPUT_LAYER))
     self.addParameter(ParameterTableField(self.TABLE_FIELD_2, "Table field 2", self.INPUT_LAYER_2))
     self.addOutput(OutputVector(self.OUTPUT_LAYER, "Output layer"))
コード例 #6
0
	def defineCharacteristics(self):
		self.name = "Hub lines"
		self.group = "Vector analysis tools"

		self.addParameter(ParameterVector(self.HUBNAME, "Hub Point Layer", ParameterVector.VECTOR_TYPE_ANY))
		self.addParameter(ParameterTableField(self.HUBATTRIBUTE, "Hub ID Attribute", self.HUBNAME))
		self.addParameter(ParameterVector(self.SPOKENAME, "Spoke Point Layer", ParameterVector.VECTOR_TYPE_ANY))
		self.addParameter(ParameterTableField(self.SPOKEATTRIBUTE, "Spoke Hub ID Attribute", self.SPOKENAME))
		self.addOutput(OutputVector(self.SAVENAME, "Output"))
コード例 #7
0
    def defineCharacteristics(self):
        self.name = "Line intersections"
        self.group = "Vector overlay tools"

        self.addParameter(ParameterVector(self.INPUT_A, "Input layer", [ParameterVector.VECTOR_TYPE_LINE]))
        self.addParameter(ParameterVector(self.INPUT_B, "Intersect layer", [ParameterVector.VECTOR_TYPE_LINE]))
        self.addParameter(ParameterTableField(self.FIELD_A, "Input unique ID field", self.INPUT_A))
        self.addParameter(ParameterTableField(self.FIELD_B, "Intersect unique ID field", self.INPUT_B))

        self.addOutput(OutputVector(self.OUTPUT, "Output layer"))
コード例 #8
0
    def defineCharacteristics(self):
        self.name = "Count points in polygon(weighted)"
        self.group = "Vector analysis tools"

        self.addParameter(ParameterVector(self.POLYGONS, "Polygons", [ParameterVector.VECTOR_TYPE_POLYGON]))
        self.addParameter(ParameterVector(self.POINTS, "Points", [ParameterVector.VECTOR_TYPE_POINT]))
        self.addParameter(ParameterTableField(self.WEIGHT, "Weight field", self.POINTS))
        self.addParameter(ParameterString(self.FIELD, "Count field name", "NUMPOINTS"))

        self.addOutput(OutputVector(self.OUTPUT, "Result"))
コード例 #9
0
 def defineCharacteristics(self):
     self.name = "Clip"
     self.group = "Vector overlay tools"
     self.addParameter(
         ParameterVector(Clip.INPUT, "Input layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterVector(Clip.INPUT2, "Clip layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addOutput(OutputVector(Clip.OUTPUT, "Clipped"))
コード例 #10
0
 def defineCharacteristics(self):
     self.name = "Difference"
     self.group = "Vector overlay tools"
     self.addParameter(
         ParameterVector(Difference.INPUT, "Input layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterVector(Difference.INPUT2, "Difference layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addOutput(OutputVector(Difference.OUTPUT, "Difference"))
コード例 #11
0
 def defineCharacteristics(self):
     self.name = "Union"
     self.group = "Vector overlay tools"
     self.addParameter(
         ParameterVector(Union.INPUT, "Input layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterVector(Union.INPUT2, "Input layer 2",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addOutput(OutputVector(Union.OUTPUT, "Union"))
コード例 #12
0
    def defineCharacteristics(self):
        self.name = "Merge Layers"
        self.group = "Transfer"

        self.addParameter(
            ParameterVector(self.LAYER1, "Source Layer 1",
                            ParameterVector.VECTOR_TYPE_ANY))
        self.addParameter(
            ParameterVector(self.LAYER2, "Source Layer 2",
                            ParameterVector.VECTOR_TYPE_ANY))
        self.addOutput(OutputVector(self.SAVENAME, "Output Shapefile"))
コード例 #13
0
 def defineCharacteristics(self):
     self.name = "Sum line lengths"
     self.group = "Analysis tools"
     self.addParameter(
         ParameterVector(SumLines.LINES, "Lines",
                         ParameterVector.VECTOR_TYPE_LINE))
     self.addParameter(
         ParameterVector(SumLines.POLYGONS, "Polygons",
                         ParameterVector.VECTOR_TYPE_POLYGON))
     self.addParameter(
         ParameterString(SumLines.FIELD, "Output field name", "LENGTH"))
     self.addOutput(OutputVector(SumLines.OUTPUT, "Result"))
コード例 #14
0
    def defineCharacteristics(self):
        self.name = "Count points in polygon"
        self.group = "Vector analysis tools"
        self.addParameter(
            ParameterVector(self.POLYGONS, "Polygons",
                            ParameterVector.VECTOR_TYPE_POLYGON))
        self.addParameter(
            ParameterVector(self.POINTS, "Points",
                            ParameterVector.VECTOR_TYPE_POINT))
        self.addParameter(
            ParameterString(self.FIELD, "Count field name", "NUMPOINTS"))

        self.addOutput(OutputVector(self.OUTPUT, "Result"))
コード例 #15
0
 def defineCharacteristics(self):
     self.name = "Select by location"
     self.group = "Vector selection tools"
     self.addParameter(
         ParameterVector(self.INPUT, "Layer to select from",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterVector(self.INTERSECT,
                         "Additional layer (intersection layer)",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterSelection(self.METHOD, "Modify current selection by",
                            self.METHODS, 0))
     self.addOutput(OutputVector(self.OUTPUT, "Selection", True))
コード例 #16
0
	def defineCharacteristics(self):
		self.name = "Text to float"
		self.group = "Vector table tools"

		self.addParameter(ParameterVector(self.LAYERNAME, "Input Layer", ParameterVector.VECTOR_TYPE_ANY))
		self.addParameter(ParameterTableField(self.ATTRIBUTE, "Text attribute to convert to float", self.LAYERNAME))
		self.addOutput(OutputVector(self.SAVENAME, "Output"))
コード例 #17
0
    def defineCharacteristics(self):
        self.name = "Voronoi polygons"
        self.group = "Vector geometry tools"

        self.addParameter(ParameterVector(self.INPUT, "Input layer", ParameterVector.VECTOR_TYPE_POINT))

        self.addOutput(OutputVector(self.OUTPUT, "Voronoi polygons"))
コード例 #18
0
	def defineCharacteristics(self):
		self.name = "Delete column"
		self.group = "Vector table tools"

		self.addParameter(ParameterVector(self.LAYERNAME, "Input layer", ParameterVector.VECTOR_TYPE_ANY))
		self.addParameter(ParameterTableField(self.COLUMN, "Field to delete", self.LAYERNAME))
		self.addOutput(OutputVector(self.SAVENAME, "Output"))
コード例 #19
0
 def defineCharacteristics(self):
     self.name = "Import into PostGIS"
     self.group = "PostGIS management tools"
     self.addParameter(ParameterVector(self.INPUT, "Layer to import"))
     self.addParameter(ParameterString(self.DATABASE, "Database"))
     self.addParameter(ParameterString(self.TABLENAME,
                                       "Name for new table"))
コード例 #20
0
ファイル: Difference.py プロジェクト: kimaidou/Quantum-GIS
 def defineCharacteristics(self):
     self.name = "Difference"
     self.group = "Geoprocessing tools"
     self.addParameter(
         ParameterVector(Difference.INPUT, "Input layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterVector(Difference.INPUT2, "Difference layer",
                         ParameterVector.VECTOR_TYPE_ANY))
     self.addParameter(
         ParameterBoolean(Difference.USE_SELECTED,
                          "Use selected features (input)", False))
     self.addParameter(
         ParameterBoolean(Difference.USE_SELECTED2,
                          "Use selected features (difference)", False))
     self.addOutput(OutputVector(Difference.OUTPUT, "Difference"))
コード例 #21
0
    def defineCharacteristics(self):
        self.name = "Basic statistics for numeric fields"
        self.group = "Vector table tools"

        self.addParameter(
            ParameterVector(self.INPUT_LAYER, "Input vector layer",
                            ParameterVector.VECTOR_TYPE_ANY, False))
        self.addParameter(
            ParameterTableField(self.FIELD_NAME,
                                "Field to calculate statistics on",
                                self.INPUT_LAYER,
                                ParameterTableField.DATA_TYPE_NUMBER))

        self.addOutput(
            OutputHTML(self.OUTPUT_HTML_FILE, "Statistics for numeric field"))

        self.addOutput(OutputNumber(self.CV, "Coefficient of Variation"))
        self.addOutput(OutputNumber(self.MIN, "Minimum value"))
        self.addOutput(OutputNumber(self.MAX, "Maximum value"))
        self.addOutput(OutputNumber(self.SUM, "Sum"))
        self.addOutput(OutputNumber(self.MEAN, "Mean value"))
        self.addOutput(OutputNumber(self.COUNT, "Count"))
        self.addOutput(OutputNumber(self.RANGE, "Range"))
        self.addOutput(OutputNumber(self.MEDIAN, "Median"))
        self.addOutput(OutputNumber(self.UNIQUE, "Number of unique values"))
        self.addOutput(OutputNumber(self.STD_DEV, "Standard deviation"))
コード例 #22
0
    def defineCharacteristics(self):
        self.name = "D-Infinity Transport Limited Accumulation - 2"
        self.cmdName = "dinftranslimaccum"
        self.group = "Specialized Grid Analysis tools"

        self.addParameter(
            ParameterRaster(self.DINF_FLOW_DIR_GRID,
                            "D-Infinity Flow Direction Grid", False))
        self.addParameter(
            ParameterRaster(self.SUPPLY_GRID, "Supply Grid", False))
        self.addParameter(
            ParameterRaster(self.CAPACITY_GRID, "Transport Capacity Grid",
                            False))
        self.addParameter(
            ParameterRaster(self.IN_CONCENTR_GRID, "Input Concentration Grid",
                            False))
        self.addParameter(
            ParameterVector(self.OUTLETS_SHAPE, "Outlets Shapefile",
                            ParameterVector.VECTOR_TYPE_POINT, True))
        self.addParameter(
            ParameterBoolean(self.EDGE_CONTAM, "Check for edge contamination",
                             True))

        self.addOutput(
            OutputRaster(self.TRANSP_LIM_ACCUM_GRID,
                         "Transport Limited Accumulation Grid"))
        self.addOutput(OutputRaster(self.DEPOSITION_GRID, "Deposition Grid"))
        self.addOutput(
            OutputRaster(self.OUT_CONCENTR_GRID, "Output Concentration Grid"))
コード例 #23
0
    def buildParametersDialog(self):
        for input in self.process.inputs:
            inputType = type(input)
            if inputType == VectorInput:
                self.addParameter(ParameterVector(str(input.identifier), str(input.title), ParameterVector.VECTOR_TYPE_ANY, input.minOccurs == 0))
            elif inputType == MultipleVectorInput:
                self.addParameter(ParameterMultipleInput(str(input.identifier), str(input.title), ParameterVector.VECTOR_TYPE_ANY, input.minOccurs == 0))
            elif inputType == StringInput:
                self.addParameter(ParameterString(str(input.identifier), str(input.title)))
            elif inputType == TextInput:
                self.addParameter(ParameterString(str(input.identifier), str(input.title)))
            elif inputType == RasterInput:
                self.addParameter(ParameterRaster(str(input.identifier), str(input.title), input.minOccurs == 0))
            elif inputType == MultipleRasterInput:
                self.addParameter(ParameterMultipleInput(str(input.identifier), str(input.title), ParameterMultipleInput.TYPE_RASTER, input.minOccurs == 0))
            elif inputType == FileInput:
                #self.addParameter(ParameterFile(str(input.identifier), str(input.title), False, input.minOccurs == 0))
                self.addParameter(ParameterFile(str(input.identifier), str(input.title)))
            elif inputType == MultipleFileInput:
                pass #Not supported
            elif inputType == SelectionInput:
                self.addParameter(ParameterSelection(str(input.identifier), str(input.title), input.valList))
            elif inputType == ExtentInput:
                self.addParameter(ParameterExtent(str(input.identifier), str(input.title)))
            elif inputType == CrsInput:
                self.addParameter(ParameterCrs(str(input.identifier), "Projection", None))

        for output in self.process.outputs:
            outputType = type(output)
            if outputType == VectorOutput:
                self.addOutput(OutputVector(str(output.identifier), str(output.title)))
            elif outputType == RasterOutput:
                self.addOutput(OutputRaster(str(output.identifier), str(output.title)))
            elif outputType == StringOutput:
                self.addOutput(OutputString(str(output.identifier), str(output.title)))
コード例 #24
0
    def defineCharacteristics(self):
        self.name = "Basic statistics for text fields"
        self.group = "Analysis tools"

        self.addParameter(
            ParameterVector(self.INPUT_LAYER, "Input vector layer",
                            ParameterVector.VECTOR_TYPE_ANY, False))
        self.addParameter(
            ParameterTableField(self.FIELD_NAME,
                                "Field to calculate statistics on",
                                self.INPUT_LAYER,
                                ParameterTableField.DATA_TYPE_STRING))
        self.addParameter(
            ParameterBoolean(self.USE_SELECTION, "Use selection", False))

        self.addOutput(
            OutputHTML(self.OUTPUT_HTML_FILE, "Statistics for text field"))

        self.addOutput(OutputNumber(self.MIN_LEN, "Minimum length"))
        self.addOutput(OutputNumber(self.MAX_LEN, "Maximum length"))
        self.addOutput(OutputNumber(self.MEAN_LEN, "Mean length"))
        self.addOutput(OutputNumber(self.COUNT, "Count"))
        self.addOutput(OutputNumber(self.EMPTY, "Number of empty values"))
        self.addOutput(OutputNumber(self.FILLED, "Number of non-empty values"))
        self.addOutput(OutputNumber(self.UNIQUE, "Number of unique values"))
コード例 #25
0
    def defineCharacteristics(self):
        self.name = "Geometry Export"
        self.group = "Transfer"

        self.addParameter(
            ParameterVector(self.LAYERNAME, "Source Layer",
                            ParameterVector.VECTOR_TYPE_ANY))

        self.addOutput(
            OutputTable(self.NODEFILENAME, "Node CSV Output File Name"))
        self.addOutput(
            OutputTable(self.ATTRIBUTEFILENAME,
                        "Attribute CSV Output File Name (non-points only)"))

        self.delimiters = ["Comma", "Bar", "Space"]
        self.addParameter(
            ParameterSelection(self.FIELDDELIMITER,
                               "Delimiter",
                               self.delimiters,
                               default=0))

        self.terminators = ["CRLF", "LF"]
        self.addParameter(
            ParameterSelection(self.LINETERMINATOR,
                               "Delimiter",
                               self.terminators,
                               default=0))
コード例 #26
0
    def defineCharacteristics(self):
        self.name = "Extract nodes"
        self.group = "Geometry tools"

        self.addParameter(ParameterVector(self.INPUT, "Input layer", ParameterVector.VECTOR_TYPE_ANY))

        self.addOutput(OutputVector(self.OUTPUT, "Output layer"))
コード例 #27
0
ファイル: Delaunay.py プロジェクト: sdikiy/Quantum-GIS
 def defineCharacteristics(self):
     self.name = "Delaunay triangulation"
     self.group = "Geometry tools"
     self.addParameter(
         ParameterVector(Delaunay.INPUT, "Input layer",
                         ParameterVector.VECTOR_TYPE_POINT))
     self.addOutput(OutputVector(Delaunay.OUTPUT, "Delaunay triangulation"))
コード例 #28
0
    def defineCharacteristics(self):
        self.name = "Stream Drop Analysis"
        self.cmdName = "dropanalysis"
        self.group = "Stream Network Analysis tools"

        self.addParameter(
            ParameterRaster(self.D8_CONTRIB_AREA_GRID,
                            "D8 Contributing Area Grid", False))
        self.addParameter(
            ParameterRaster(self.D8_FLOW_DIR_GRID, "D8 Flow Direction Grid",
                            False))
        self.addParameter(
            ParameterRaster(self.PIT_FILLED_GRID, "Pit Filled Elevation Grid",
                            False))
        self.addParameter(
            ParameterRaster(self.ACCUM_STREAM_SOURCE_GRID,
                            "Contributing Area Grid", False))
        self.addParameter(
            ParameterVector(self.OUTLETS_SHAPE, "Outlets Shapefile",
                            ParameterVector.VECTOR_TYPE_POINT, False))
        self.addParameter(
            ParameterNumber(self.MIN_TRESHOLD, "Minimum Threshold", 0, None,
                            5))
        self.addParameter(
            ParameterNumber(self.MAX_THRESHOLD, "Maximum Threshold", 0, None,
                            500))
        self.addParameter(
            ParameterNumber(self.TRESHOLD_NUM, "Number of Threshold Values", 0,
                            None, 10))
        self.addParameter(
            ParameterSelection(self.STEP_TYPE, "Spacing for Threshold Values",
                               self.STEPS, 0))
        self.addOutput(
            OutputFile(self.DROP_ANALYSIS_FILE,
                       "D-Infinity Drop to Stream Grid"))
コード例 #29
0
 def defineCharacteristics(self):
     self.name = "Add autoincremental field"
     self.group = "Vector table tools"
     self.addParameter(
         ParameterVector(self.INPUT, "Input layer",
                         [ParameterVector.VECTOR_TYPE_ANY]))
     self.addOutput(OutputVector(self.OUTPUT, "Output layer"))
コード例 #30
0
 def defineCharacteristics(self):
     self.name = "Advanced Python field calculator"
     self.group = "Vector table tools"
     self.addParameter(
         ParameterVector(self.INPUT_LAYER, "Input layer",
                         [ParameterVector.VECTOR_TYPE_ANY], False))
     self.addParameter(
         ParameterString(self.FIELD_NAME, "Result field name", "NewField"))
     self.addParameter(
         ParameterSelection(self.FIELD_TYPE, "Field type", self.TYPE_NAMES))
     self.addParameter(
         ParameterNumber(self.FIELD_LENGTH, "Field length", 1, 255, 10))
     self.addParameter(
         ParameterNumber(self.FIELD_PRECISION, "Field precision", 0, 10, 0))
     self.addParameter(
         ParameterString(self.GLOBAL,
                         "Global expression",
                         multiline=True,
                         optional=True))
     self.addParameter(
         ParameterString(self.FORMULA,
                         "Formula",
                         "value = ",
                         multiline=True))
     self.addOutput(OutputVector(self.OUTPUT_LAYER, "Output layer"))