mirror of
https://github.com/qgis/QGIS.git
synced 2025-11-02 00:26:05 -04:00
These new algorithms "Remove parts by length" and "Remove parts by area" filter out parts of geometries from a vector layer, by checking their area or length vs a minimum size parameter. If the input geometry is a multipart geometry, then the parts will be filtered by their individual sizes. If no parts match the required minimum size, then the feature will be skipped and omitted from the output layer. If the input geometry is a singlepart geometry, then the feature will be skipped if the geometry's size is below the required size and omitted from the output layer. Attributes are not modified.
424 lines
10 KiB
YAML
424 lines
10 KiB
YAML
tests:
|
|
|
|
- name: Difference (multiple overlays)
|
|
algorithm: native:multidifference
|
|
params:
|
|
INPUT:
|
|
name: custom/multi_overlay_A.shp
|
|
type: vector
|
|
OVERLAYS:
|
|
params:
|
|
- name: custom/multi_overlay_B.shp
|
|
type: vector
|
|
- name: custom/multi_overlay_C.shp
|
|
type: vector
|
|
type: multi
|
|
results:
|
|
OUTPUT:
|
|
name: expected/multi_difference.gml
|
|
type: vector
|
|
compare:
|
|
fields:
|
|
gml_id: skip
|
|
geometry:
|
|
normalize: True
|
|
|
|
- name: Intersection (multiple overlays)
|
|
algorithm: native:multiintersection
|
|
params:
|
|
INPUT:
|
|
name: custom/multi_overlay_A.shp
|
|
type: vector
|
|
OVERLAYS:
|
|
params:
|
|
- name: custom/multi_overlay_B.shp
|
|
type: vector
|
|
- name: custom/multi_overlay_C.shp
|
|
type: vector
|
|
type: multi
|
|
OVERLAY_FIELDS_PREFIX: ''
|
|
results:
|
|
OUTPUT:
|
|
name: expected/multi_intersection.gml
|
|
type: vector
|
|
compare:
|
|
fields:
|
|
gml_id: skip
|
|
geometry:
|
|
normalize: True
|
|
|
|
- name: Union (multiple overlays)
|
|
algorithm: native:multiunion
|
|
params:
|
|
INPUT:
|
|
name: custom/multi_overlay_A.shp
|
|
type: vector
|
|
OVERLAYS:
|
|
params:
|
|
- name: custom/multi_overlay_B.shp
|
|
type: vector
|
|
- name: custom/multi_overlay_C.shp
|
|
type: vector
|
|
type: multi
|
|
OVERLAY_FIELDS_PREFIX: ''
|
|
results:
|
|
OUTPUT:
|
|
name: expected/multi_union.gml
|
|
type: vector
|
|
compare:
|
|
fields:
|
|
gml_id: skip
|
|
geometry:
|
|
normalize: True
|
|
|
|
- algorithm: native:buffer
|
|
name: Buffer, dissolve with separate disjoint
|
|
params:
|
|
DISSOLVE: true
|
|
DISTANCE: 0.6
|
|
END_CAP_STYLE: 0
|
|
INPUT:
|
|
name: multipolys.gml
|
|
type: vector
|
|
JOIN_STYLE: 0
|
|
MITER_LIMIT: 2.0
|
|
SEGMENTS: 5
|
|
SEPARATE_DISJOINT: true
|
|
results:
|
|
OUTPUT:
|
|
name: expected/buffer_dissolve_keep_disjoint.gml
|
|
type: vector
|
|
|
|
- algorithm: native:buffer
|
|
name: Buffer, separate disjoint with disjoint results
|
|
params:
|
|
DISSOLVE: false
|
|
DISTANCE: 0.3
|
|
END_CAP_STYLE: 1
|
|
INPUT:
|
|
name: multilines.gml
|
|
type: vector
|
|
JOIN_STYLE: 1
|
|
MITER_LIMIT: 2.0
|
|
SEGMENTS: 5
|
|
SEPARATE_DISJOINT: true
|
|
results:
|
|
OUTPUT:
|
|
name: expected/buffer_keep_disjoint_features_disjoint.gml
|
|
type: vector
|
|
|
|
- algorithm: native:buffer
|
|
name: Buffer, separate disjoint with non-disjoint results
|
|
params:
|
|
DISSOLVE: false
|
|
DISTANCE: 1.0
|
|
END_CAP_STYLE: 1
|
|
INPUT:
|
|
name: multilines.gml
|
|
type: vector
|
|
JOIN_STYLE: 1
|
|
MITER_LIMIT: 2.0
|
|
SEGMENTS: 5
|
|
SEPARATE_DISJOINT: true
|
|
results:
|
|
OUTPUT:
|
|
name: expected/buffer_keep_disjoint.gml
|
|
type: vector
|
|
|
|
- algorithm: native:dtmslopebasedfilter
|
|
name: DTM slope based filter (1)
|
|
params:
|
|
BAND: 1
|
|
FILTER_MODIFICATION: 0
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
RADIUS: 10
|
|
STANDARD_DEVIATION: 0.1
|
|
TERRAIN_SLOPE: 500.0
|
|
results:
|
|
OUTPUT_GROUND:
|
|
hash: 1d1c403ff54f95a291a3a979220fb60a69ae117df1023671759656a8
|
|
type: rasterhash
|
|
OUTPUT_NONGROUND:
|
|
hash: 450da40150fa94eca7d8b681c21ef62d41e746acbe0886797c6b9b2d
|
|
type: rasterhash
|
|
|
|
- algorithm: native:dtmslopebasedfilter
|
|
name: DTM slope based filter (2)
|
|
params:
|
|
BAND: 1
|
|
FILTER_MODIFICATION: 0
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
RADIUS: 3
|
|
STANDARD_DEVIATION: 0.1
|
|
TERRAIN_SLOPE: 300.0
|
|
results:
|
|
OUTPUT_GROUND:
|
|
hash: 28051cc571bcad29de3c43b7495f7f035a6cf9bae31c9b3dff39a51d
|
|
type: rasterhash
|
|
OUTPUT_NONGROUND:
|
|
hash: cce2498eb5694accc3720089b1660f5db9a9146129120c0219fbbe3a
|
|
type: rasterhash
|
|
|
|
- algorithm: native:dtmslopebasedfilter
|
|
name: DTM slope based filter (relaxed)
|
|
params:
|
|
BAND: 1
|
|
FILTER_MODIFICATION: 1
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
RADIUS: 10
|
|
STANDARD_DEVIATION: 0.1
|
|
TERRAIN_SLOPE: 500.0
|
|
results:
|
|
OUTPUT_GROUND:
|
|
hash: 3a2c92296870ce44d990ba2d19765327b2f48873d2a37d9f858bbb1b
|
|
type: rasterhash
|
|
OUTPUT_NONGROUND:
|
|
hash: f7593955a08c7f321f3cabed37e5acf586061b7deb9022ee32b22aae
|
|
type: rasterhash
|
|
|
|
- algorithm: native:dtmslopebasedfilter
|
|
name: DTM slope based filter (amplified)
|
|
params:
|
|
BAND: 1
|
|
FILTER_MODIFICATION: 2
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
RADIUS: 10
|
|
STANDARD_DEVIATION: 0.1
|
|
TERRAIN_SLOPE: 500.0
|
|
results:
|
|
OUTPUT_GROUND:
|
|
hash: 8844e5fd0c8c26f815612fd1b6768799deee6b16bccb961ef03b05a0
|
|
type: rasterhash
|
|
OUTPUT_NONGROUND:
|
|
hash: cec23a44e0a5da2c9d0be68a13cdb1e851492061e64d81b564e5a269
|
|
type: rasterhash
|
|
|
|
- algorithm: native:coverageunion
|
|
name: Coverage union
|
|
condition:
|
|
geos:
|
|
at_least: 31200
|
|
params:
|
|
INPUT:
|
|
name: polys.gml|layername=polys2
|
|
type: vector
|
|
results:
|
|
OUTPUT:
|
|
name: expected/coverage_dissolve.gml
|
|
type: vector
|
|
|
|
- algorithm: native:coveragesimplify
|
|
name: Simplify coverage
|
|
condition:
|
|
geos:
|
|
at_least: 31200
|
|
params:
|
|
INPUT:
|
|
name: polys.gml|layername=polys2
|
|
type: vector
|
|
PRESERVE_BOUNDARY: false
|
|
TOLERANCE: 3.0
|
|
results:
|
|
OUTPUT:
|
|
name: expected/simplify_coverage.gml
|
|
type: vector
|
|
|
|
- algorithm: native:creategrid
|
|
name: Create rectangle grid with negative overlay
|
|
params:
|
|
CRS: EPSG:3857
|
|
EXTENT: 738054.729300000,738373.195700000,5770010.104900000,5770208.287300000
|
|
[EPSG:3857]
|
|
HOVERLAY: 0.0
|
|
HSPACING: 10.0
|
|
TYPE: 2
|
|
VOVERLAY: -10.0
|
|
VSPACING: 10.0
|
|
results:
|
|
OUTPUT:
|
|
name: expected/create_grid_negative_overlay.gml
|
|
type: vector
|
|
|
|
- algorithm: native:surfacetopolygon
|
|
name: Create polygon from surface of Mesh layer
|
|
params:
|
|
INPUT:
|
|
name: quad_and_triangle.2dm
|
|
type: mesh
|
|
results:
|
|
OUTPUT:
|
|
name: expected/mesh_surface_to_polygon.gml
|
|
type: vector
|
|
|
|
- algorithm: native:surfacetopolygon
|
|
name: Create polygon from surface of Mesh layer - multiple parts with hole
|
|
params:
|
|
INPUT:
|
|
name: mesh_two_part_with_hole.2dm
|
|
type: mesh
|
|
results:
|
|
OUTPUT:
|
|
name: expected/mesh_surface_to_polygon_complex_mesh_hole.gml
|
|
type: vector
|
|
|
|
- algorithm: native:rasterminmax
|
|
name: Raster min max
|
|
params:
|
|
BAND: 1
|
|
EXTRACT: 0
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
results:
|
|
OUTPUT:
|
|
name: expected/raster_min_max.gml
|
|
type: vector
|
|
|
|
- algorithm: native:rasterminmax
|
|
name: Raster min
|
|
params:
|
|
BAND: 1
|
|
EXTRACT: 1
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
results:
|
|
OUTPUT:
|
|
name: expected/raster_min.gml
|
|
type: vector
|
|
|
|
- algorithm: native:rasterminmax
|
|
name: Raster max
|
|
params:
|
|
BAND: 1
|
|
EXTRACT: 2
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
results:
|
|
OUTPUT:
|
|
name: expected/raster_max.gml
|
|
type: vector
|
|
|
|
- algorithm: native:zonalminmaxpoint
|
|
name: Raster zonal min max
|
|
params:
|
|
INPUT:
|
|
name: custom/dem_zones.geojson
|
|
type: vector
|
|
INPUT_RASTER:
|
|
name: custom/dem_crs.tif
|
|
type: raster
|
|
RASTER_BAND: 1
|
|
results:
|
|
OUTPUT:
|
|
name: expected/raster_zonal_extremum.gml
|
|
type: vector
|
|
|
|
- algorithm: native:fillsinkswangliu
|
|
name: Fill sinks W&L
|
|
params:
|
|
BAND: 1
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
MIN_SLOPE: 0.1
|
|
results:
|
|
OUTPUT_FILLED_DEM:
|
|
hash: 2a436a9a5f2b0c4e5369868649ff2bf7d9e69d9fa71e21beb6ebd34c
|
|
type: rasterhash
|
|
OUTPUT_FLOW_DIRECTIONS:
|
|
hash: 47e3bd73b8aa8e64f726515a650fa1dfb4d14581e1b3a949182bd28b
|
|
type: rasterhash
|
|
OUTPUT_WATERSHED_BASINS:
|
|
hash: 38169bd8e8ff1400109936c8de70e429ab319926a053ab5142791010
|
|
type: rasterhash
|
|
|
|
- algorithm: native:fillsinkswangliu
|
|
name: Fill sinks W&L no min slope
|
|
params:
|
|
BAND: 1
|
|
INPUT:
|
|
name: dem.tif
|
|
type: raster
|
|
MIN_SLOPE: 0.0
|
|
results:
|
|
OUTPUT_FILLED_DEM:
|
|
hash: 10aa3f7961764f420a6eaf19718faef69a943364d171e1242f415945
|
|
type: rasterhash
|
|
OUTPUT_FLOW_DIRECTIONS:
|
|
hash: 8a5f49fbcb14f7a84c59ee9952173600c6b2bd675ed59bef5c7260f0
|
|
type: rasterhash
|
|
OUTPUT_WATERSHED_BASINS:
|
|
hash: 38169bd8e8ff1400109936c8de70e429ab319926a053ab5142791010
|
|
type: rasterhash
|
|
|
|
- algorithm: native:concavehullbyfeature
|
|
name: Concave hull by feature
|
|
params:
|
|
ALPHA: 0.3
|
|
HOLES: true
|
|
INPUT:
|
|
name: custom/concave_hull_points.gml|layername=concave_hull_points
|
|
type: vector
|
|
results:
|
|
OUTPUT:
|
|
name: expected/concave_hull_by_feature.gml
|
|
type: vector
|
|
|
|
- algorithm: native:removepartsbylength
|
|
name: Remove line parts by length
|
|
params:
|
|
INPUT:
|
|
name: custom/line_3857.gml|layername=line_3857
|
|
type: vector
|
|
MIN_LENGTH: 550000.0
|
|
results:
|
|
OUTPUT:
|
|
name: expected/remove_line_parts_by_length.gml
|
|
type: vector
|
|
|
|
- algorithm: native:removepartsbylength
|
|
name: Remove multiline parts by length
|
|
params:
|
|
INPUT:
|
|
name: multilines.gml|layername=multilines
|
|
type: vector
|
|
MIN_LENGTH: 3.0
|
|
results:
|
|
OUTPUT:
|
|
name: expected/remove_multiline_parts_by_length.gml
|
|
type: vector
|
|
|
|
- algorithm: native:removepartsbyarea
|
|
name: Remove polygon parts by area
|
|
params:
|
|
INPUT:
|
|
name: custom/polys_epsg31256.shp
|
|
type: vector
|
|
MIN_AREA: 9999000000.0
|
|
results:
|
|
OUTPUT:
|
|
name: expected/remove_polygon_parts_by_area.gml
|
|
type: vector
|
|
|
|
- algorithm: native:removepartsbyarea
|
|
name: Remove multipolygon parts by area
|
|
params:
|
|
INPUT:
|
|
name: multipolys.gml|layername=multipolys
|
|
type: vector
|
|
MIN_AREA: 4.0
|
|
results:
|
|
OUTPUT:
|
|
name: expected/remove_multipolygon_parts_by_area.gml
|
|
type: vector
|