27.1.18. 向量几何
27.1.18.1. 添加几何图形属性
计算矢量层中要素的几何特性,并将其包括在输出层中。
它会生成一个新的矢量层,其内容与输入的矢量层相同,但具有其他属性,包含基于选定CRS的几何测量。
添加到表中的属性取决于输入层的几何图形类型和尺寸:
为 point 层:X (
xcoord
)、Y (ycoord
)、Z (zcoord
)坐标和/或M值 (mvalue
)为 line 层:
length
并且,对于线串和复合曲线几何类型,要素sinuosity
和直线距离 (straightdis
)为 polygon 层:
perimeter
和area
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Calculate using |
|
[enumeration] 默认:0 |
用于几何特性的计算参数。以下选项之一:
|
Added geom info |
|
[same as input] 默认: |
指定输出(带有几何体的输入副本)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Added geom info |
|
[same as input] |
添加了几何字段的输入矢量图层的副本 |
Python代码
Algorithm ID : qgis:exportaddgeometrycolumns
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.2. 仿射变换
将仿射变换应用于层几何图形。仿射变换可以包括平移、缩放和旋转。这些操作按以下顺序执行:缩放、旋转和平移。
Z值和M值(如果存在)可以平移和缩放。

图 27.50 在仿射变换(平移)之前(左)和之后(右)的矢量点层(绿点)。
允许 features in-place modification 点、线和面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Translation (x-axis) |
|
默认:0 |
要在X轴上应用的位移。 |
Translation (y-axis) |
|
默认:0 |
要在Y轴上应用的位移。 |
Translation (z-axis) |
|
默认:0 |
要在Z轴上应用的位移。 |
Translation (m-values) |
|
默认:0 |
要应用于m值的偏移量。 |
Scale factor (x-axis) |
|
默认:1 |
要在X轴上应用的缩放值(扩展或收缩)。 |
Scale factor (y-axis) |
|
默认:1 |
要在Y轴上应用的缩放值(扩展或收缩)。 |
Scale factor (z-axis) |
|
默认:1 |
要在Z轴上应用的缩放值(扩展或收缩)。 |
Scale factor (m-values) |
|
默认:1 |
缩放值(扩展或收缩)以应用于m值。 |
Rotation around z-axis (degrees counter-clockwise) |
|
默认:0 |
旋转角度(以度为单位)。 |
Transformed |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Transformed |
|
[same as input] |
输出(变换后的)矢量层。 |
Python代码
Algorithm ID : native:affinetransform
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.3. 集料
获取矢量或表图层并通过基于 group by
表情。
具有以下功能的功能 group by
将返回相同值的表达式组合在一起。
可以使用中的常量值将所有源要素分组在一起 group by
参数,例如:NULL。
也可以使用数组函数按多个字段对特征进行分组,例如:ARRAY(“Field1”,“Field2”)。
几何图形(如果存在)将合并为每个组的一个多部分几何图形。根据每个给定的聚合定义计算输出属性。
此算法允许使用默认的 aggregates functions QGIS表达式引擎的。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Group by expression |
|
[tablefield: any] 缺省值:‘空’ |
选择分组字段。如果 NULL 所有功能都将被分组。 |
Aggregates |
|
[list] |
输出层字段定义列表。字段定义示例: {'aggregate': 'sum', 'delimiter': ',', 'input': ' $area', 'length': 10, 'name': 'totarea', 'precision': 0, 'type': 6} 默认情况下,该列表包含输入图层的所有字段。在图形用户界面中,您可以编辑这些字段及其定义,还可以: 对于要从中检索信息的每个字段,您需要定义以下内容:
|
Load fields from layer |
仅限图形用户界面 |
[vector: any] |
您可以从其他图层加载字段并将其用于聚合 |
Aggregated |
|
[same as input] 默认: |
将输出(聚合)层指定为以下之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Aggregated |
|
[same as input] |
具有聚合值的多几何矢量图层 |
Python代码
Algorithm ID : native:aggregate
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.4. 边界
返回输入几何体的组合边界(即几何体的拓扑边界)的闭合。
仅适用于多边形层和线层。
为 polygon geometries ,边界由构成多边形环的所有线组成。

图 27.51 源面图层的边界(黑色虚线)
为 lines geometries ,边界就是它们的终点。

图 27.52 线条的边界层(红点)。以黄色表示所选要素。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Boundary |
|
[vector: point, line] 默认: |
指定输出(边界)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Boundary |
|
[vector: point, line] |
来自输入图层的边界(点代表直线,直线代表多边形) |
Python代码
Algorithm ID : native:boundary
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.5. 包围盒
计算输入图层中每个要素的边界框(包络)。支持多边形和线形几何图形。

图 27.53 黑线表示每个面要素的边界框
允许 features in-place modification 面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Bounds |
|
[vector: polygon] 默认: |
指定输出(边框)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Bounds |
|
[vector: polygon] |
输入层的边界框。除输入属性外,输出层还包含以下字段: |
Python代码
Algorithm ID : native:boundingboxes
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.6. 缓冲层
使用固定距离或数据定义的距离为输入图层中的所有要素计算缓冲区。
可以对多边形输入层使用负距离。在这种情况下,缓冲区将产生较小的多边形(对接)。

图 27.54 点、线、具有正缓冲区的面和具有负缓冲区的面的缓冲区(黄色)
允许 features in-place modification 面要素的
Default menu :
参数
基本参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Distance |
|
默认:10.0 |
缓冲区距离(距每个要素的边界)。您可以使用右侧的数据定义按钮来选择要从中计算半径的字段。这样,您可以为每个要素提供不同的半径(请参见 可变距离缓冲器 )。 |
Segments |
|
[number] 默认:5 |
控制创建四舍五入偏移时用于近似四分之一圆的线段数。 |
End cap style |
|
[enumeration] 默认:0 |
控制如何在缓冲区中处理行结束。以下选项之一:
![]() 图 27.55 圆帽、扁帽和方帽样式 |
Join style |
|
[enumeration] 默认:0 |
指定在偏移线中的拐角时应使用圆形连接、斜接连接还是斜接连接。选项包括:
![]() 图 27.56 圆形、斜接和斜接样式 |
Miter limit |
|
[number] 默认:2.0 |
将创建斜接时要使用的与偏移几何图形的最大距离设置为偏移距离的系数(仅适用于斜接样式)。最低:1.0 ![]() 图 27.57 限制为2的10M缓冲区和限制为1的10M缓冲区 |
Dissolve result |
|
[boolean] 默认:FALSE |
溶解最终的缓冲区。如果 ![]() 图 27.58 标准(三个单零件特征-左)、分解(一个多零件特征和两个零件-右) |
Buffered |
|
[vector: polygon] 默认: |
指定输出(缓冲区)层。以下选项之一:
还可以在此处更改文件编码。 |
高级参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Keep disjoint features separate |
|
[boolean] 默认:FALSE |
如果 ![]() 图 27.59 生成2个单一零件特征 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Buffered |
|
[vector: polygon] |
输出(缓冲区)面层 |
Python代码
Algorithm ID : native:buffer
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.7. 质心
创建一个新的点图层,其中的点表示输入图层几何图形的质心。
质心是表示特征(所有部分的)重心的单个点,因此它可以位于特征边界之外。但也可以是特征的每个部分上的一个点。
输出图层中的点的属性与原始要素的属性相同。

图 27.60 红星表示输入层要素的质心。
允许 features in-place modification 点要素的数量
Default menu :
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Create centroid for each part |
|
默认:FALSE |
如果为True(选中),则将为几何的每个部分创建质心 |
Centroids |
|
[vector: point] 默认: |
指定输出(质心)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Centroids |
|
[vector: point] |
输出点向量层(质心) |
Python代码
Algorithm ID : native:centroids
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.8. 检查有效性
对矢量层的几何图形执行有效性检查。
几何图形分为三组(有效、无效和错误),并为每组生成一个具有其特征的矢量层:
这个 Valid output Layer仅包含有效要素(没有拓扑错误)。
这个 Invalid output 图层包含算法发现的所有无效要素。
这个 Error output Layer是指向发现无效要素的位置的点图层。
生成的图层的属性表将包含一些附加信息(用于 error 层,“FID”和“_Errors”用于 invalid 层,并且只有“FID”用于 valid 层):
每个生成的矢量层的属性表将包含一些附加信息(发现的错误数量和错误类型):

图 27.61 左:输入层。右图:有效层(绿色)、无效层(橙色)
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Method |
|
[enumeration] 默认:2 |
用于检查有效性的方法。选项:
|
Ignore ring self intersection |
|
[boolean] 默认:FALSE |
检查有效性时忽略自相交的环。 |
Valid output |
|
[same as input] 默认: |
指定矢量图层以包含源图层的有效要素的副本。以下选项之一:
还可以在此处更改文件编码。 |
Invalid output |
|
[same as input] 默认: |
包含带有该字段的源图层的无效要素副本的矢量图层
还可以在此处更改文件编码。 |
Error output |
|
[vector: point] 默认: |
检测到的有效性问题的确切位置的点图层
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Count of errors |
|
[number] |
导致错误的几何图形的数量。 |
Error output |
|
[vector: point] |
检测到的有效性问题的确切位置的点图层 |
Count of invalid features |
|
[number] |
无效几何图形的数量。 |
Invalid output |
|
[same as input] |
包含带有该字段的源图层的无效要素副本的矢量图层 |
Count of valid features |
|
[number] |
有效几何图形的数量。 |
Valid output |
|
[same as input] |
包含源层有效要素副本的矢量层。 |
Python代码
Algorithm ID : qgis:checkvalidity
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
错误消息的类型及其含义
错误讯息 |
解释 |
示例 |
---|---|---|
重复点 |
当给定的顶点重复时,会出现此错误。 |
![]() |
环自交 |
当几何体与自身接触并生成环时,会发生此错误。 |
![]() |
自交 |
当几何体与自身接触时,会发生此错误。 |
![]() |
拓扑验证错误 |
||
贝壳外面有个洞 |
||
孔是嵌套的 |
||
内部连接已断开 |
||
嵌套壳 |
当一个多边形几何体位于另一个多边形几何体的顶部时,会发生此错误。 |
![]() |
复制环 |
如果面几何的两个环(外部或内部)相同,则会出现此错误 |
![]() |
几何体组件中的点太少 |
||
坐标无效 |
对于点几何图形,当该几何图形没有正确的坐标对时会发生此错误。坐标对不包含按该顺序排列的纬度值和经度值。 |
|
环未闭合 |
错误讯息 |
解释 |
示例 |
---|---|---|
面%3的环%2的线段%1与面%6的环%5的线段%4在%7相交 |
||
少于四个点的环%1 |
||
振铃%1未关闭 |
||
少于两点的线%1 |
||
行%1在%2处包含%n个重复节点(S |
当直线上的连续点具有相同的坐标时,会发生此错误。 |
![]() |
线%3的线段%1和%2在%4处相交 |
当直线自相交(直线的两个线段彼此相交)时,会发生此错误。 |
![]() |
环自交 |
当多边形几何体的外环或内(岛)环/边界与自身相交时,会出现此错误。 |
![]() |
面%2的环%1不在外环中 |
||
面%1位于面%2内 |
当多重多边形几何体的一部分位于多重多边形几何体的孔内时,会发生此错误。 |
![]() |
27.1.18.9. 收集几何图形
获取一个矢量层并将其几何图形收集到新的多部分几何图形中。
可以指定一个或多个属性来仅收集属于同一类的几何图形(对于指定的属性具有相同的值),或者可以收集所有几何图形。
所有输出几何图形都将转换为多个几何图形,即使只有一个零件也是如此。此算法不融合重叠的几何图形-它们将被收集在一起,而不修改每个几何图形部分的形状。
有关替代选项,请参阅“升级为多部分”或“聚合”算法。
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Unique ID fields |
|
[tablefield: any] [list] |
选择一个或多个属性来采集几何 |
Collected |
|
[same as input] |
包含收集的几何图形的矢量图层 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Collected |
|
[same as input] 默认: |
为收集的几何图形指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
Python代码
Algorithm ID : native:collect
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.10. 凹面Shell(Alpha形状)
计算输入点图层中要素的凹壳。

图 27.62 具有不同阈值(0.3、0.6、0.9)的凹面Shell
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input point layer |
|
[vector: point] |
输入点矢量层 |
Threshold |
|
[number] 默认:0.3 |
从0(最大凹壳)到1(凸壳)之间的数字。 |
Allow holes |
|
[boolean] 默认值:True |
选择是否允许在最终凹面船体中打孔 |
Split multipart geometry into singlepart geometries |
|
[boolean] 默认值:True |
如果要使用单部分几何图形而不是多部分几何图形,请选中此框。 |
Concave hull |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Concave hull |
|
[vector: polygon] |
输出向量层 |
Python代码
Algorithm ID : qgis:concavehull
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.11. 凹面Shell(k-最近邻)
从一组点生成凹面Shell线多边形。如果输入层是线或多边形层,它将使用顶点。
要考虑的邻居数决定了输出多边形的凹陷程度。较低的数字将产生紧跟在点后面的凹面Shell,而较高的数字将具有更平滑的形状。要考虑的邻接点的最小数量为3。等于或大于点数的值将产生凸包。
如果选择了某个字段,算法将使用该字段中的唯一值对输入图层中的要素进行分组,并在输出图层中为每个组生成单独的面。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Number of neighboring points to consider (a lower number is more concave, a higher number is smoother) |
|
[number] 默认:3 |
确定输出多边形的凹陷程度。较小的数字将产生紧跟在点后面的凹壳,而较高的数字将使多边形看起来更像凸壳(如果该数字等于或大于特征数,结果将是凸壳)。最小值:3。 |
Field 任选 |
|
[tablefield: any] 默认:无 |
如果指定,将为该字段的每个唯一值(通过使用该值选择要素)生成一个凹面Shell线多边形。 |
Concave hull |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Concave hull |
|
[vector: polygon] |
输出向量层 |
Python代码
Algorithm ID : qgis:knearestconcavehull
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.12. 转换几何图形类型
基于具有不同类型的几何体的现有层生成新层。
输出层的属性表与输入层的属性表相同。
并非所有的转换都是可能的。例如,线图层可以转换为点图层,但点图层不能转换为线图层。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
New geometry type |
|
[enumeration] 默认:0 |
要应用于输出要素的几何图形类型。以下选项之一:
|
Converted |
|
[vector: any] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Converted |
|
[vector: any] |
输出矢量图层-类型取决于参数 |
Python代码
Algorithm ID : qgis:convertgeometrytype
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.13. 转换为曲线几何图形
将几何体转换为其曲线几何体等效项。
已弯曲的几何图形将保持不变。
允许 features in-place modification 线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line or polygon] |
输入向量层 |
Maximum distance tolerance |
|
[number] 默认:0.000001 |
折点的原始位置与它们落在转换后的曲线几何上的位置之间允许的最大距离 |
Maximum angle tolerance |
|
[number] 默认:0.000001 |
如果点在候选圆弧上的间距都是规则的,则认为线段适合用圆弧替换。此参数指定测试规则点间距时允许的最大角度偏差(以度为单位)。在0到45°之间。 |
Curves |
|
[vector: compoundcurve or curvepolygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Curves |
|
[vector: compoundcurve or curvepolygon] |
具有曲线几何的输出矢量图层 |
Python代码
Algorithm ID : native:converttocurves
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.14. 凸壳
计算输入图层中每个要素的凸包。
有关覆盖整个层或要素的分组子集的凸包计算,请参阅“最小边界几何”算法。

图 27.63 黑线标识每个图层要素的凸包
允许 features in-place modification 面要素的
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Convex hull |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Convex hull |
|
[vector: polygon] |
输出(凸壳)向量层 |
Python代码
Algorithm ID : native:convexhull
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.15. 从范围创建层
创建包含具有与输入图层范围匹配的几何图形的单个要素的新矢量图层。
它可在模型中用于转换文字范围 (xmin
, xmax
, ymin
, ymax
格式)转换为可用于需要基于层的输入的其他算法的层。
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Extent (xmin, xmax, ymin, ymax) |
|
[extent] |
输入范围 可用的方法包括:
|
Extent |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Extent |
|
[vector: polygon] |
输出(范围)向量层 |
Python代码
Algorithm ID : native:extenttolayer
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.16. 从点创建层
创建包含具有与点参数匹配的几何图形的单个要素的新矢量图层。对于需要基于层的输入的算法,可以在模型中使用它将点转换为点层。
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Point |
|
[coordinates] |
输入点,包括CRS信息(例如: 如果没有提供CRS,则使用项目CRS。 可以通过在地图画布上单击来指定该点。 |
Point |
|
[vector: point] 默认: |
指定输出层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Point |
|
[vector: point] |
包含输入点的输出点向量层。 |
Python代码
Algorithm ID : native:pointtolayer
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.17. 创建楔形缓冲区
从输入点创建楔形缓冲区。

图 27.64 楔形缓冲器
该算法的原生输出是CurvePolygon几何体,但根据输出格式,这些几何体可能会自动分割为多边形。
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: point] |
输入点矢量层 |
Azimuth (degrees from North) |
|
默认值:0.0 |
作为楔形的中间值的角度(以度为单位 |
Wedge width (in degrees) |
|
默认:45.0 |
缓冲区的宽度(以度为单位)。楔体将延伸到方位角方向两侧角宽度的一半。 ![]() 图 27.65 楔形缓冲区的方位角和宽度值 |
Outer radius |
|
默认:1.0 |
外墙 size 楔形的(长度):大小是指从源点到楔形的边缘。 |
Inner radius 任选 |
|
默认值:0.0 |
内半径值。如果为0,则楔体将从源点开始。 |
Buffers |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Buffers |
|
[vector: polygon] |
输出(楔形缓冲区)向量层 |
Python代码
Algorithm ID : native:wedgebuffers
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.18. Delaunay三角剖分
使用与输入点图层对应的Delaunay三角剖分创建多边形图层。

图 27.66 点上的Delaunay三角剖分
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: point] |
输入点矢量层 |
Delaunay triangulation |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Delaunay triangulation |
|
[vector: polygon] |
输出(Delaunay三角剖分)向量层 |
Python代码
Algorithm ID : qgis:delaunaytriangulation
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.19. 删除孔
获取多边形层并删除多边形中的孔。它将创建一个新的矢量层,其中带有孔的多边形已被仅具有其外环的多边形替换。属性不会修改。
可选的最小面积参数允许仅删除小于指定面积阈值的孔。将此参数保留为 0.0
导致所有孔都被移除。

图 27.67 大扫除前后
允许 features in-place modification 面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入多边形矢量层 |
Remove holes with area less than 任选 |
|
默认值:0.0 |
只有面积小于此阈值的孔才会被删除。值为 |
Cleaned |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Cleaned |
|
[same as input] |
输出(已清理)的矢量层 |
Python代码
Algorithm ID : native:deleteholes
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.20. 按计数增密
获取一个多边形层或线层,并生成一个新的层,其中的几何体的顶点数比原始的多。
如果几何体具有Z或M值,则将在添加的顶点处对这些值进行线性内插。
要添加到每个线段的新顶点数被指定为输入参数。

图 27.68 红点显示加密前后的折点
允许 features in-place modification 线和面要素的
Default menu :
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Vertices to add |
|
[number] 默认:1 |
要添加到每条线段的顶点数 |
Densified |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Densified |
|
[same as input] |
输出(增密)的矢量层 |
Python代码
Algorithm ID : native:densifygeometries
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.21. 按间隔加密
获取一个多边形层或线层,并生成一个新的层,其中的几何体的顶点数比原始的多。
通过在每个线段内添加规则放置的额外顶点,以使任意两个顶点之间的最大距离不超过指定距离,可使几何图形更加密集。
如果几何体具有Z或M值,则将在添加的顶点处对这些值进行线性内插。
Example
将距离指定为3会导致线段 [0 0] -> [10 0]
要转换为 [0 0] -> [2.5 0] -> [5 0] -> [7.5 0] -> [10 0]
,因为线段上需要额外的3个顶点,并且以2.5为增量的间距允许它们在线段上均匀分布。

图 27.69 以给定的间隔加密几何体
允许 features in-place modification 线和面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Interval between vertices to add |
|
默认:1.0 |
两个连续顶点之间的最大距离 |
Densified |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Densified |
|
[same as input] |
输出(增密)的矢量层 |
Python代码
Algorithm ID : native:densifygeometriesgivenaninterval
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.22. 溶解
获取一个矢量层,并将其要素合并为新要素。可以指定一个或多个属性来融合属于同一类的要素(指定的属性具有相同的值),或者可以将所有要素融合为单个要素。
所有输出几何图形都将转换为多个几何图形。如果输入是多边形层,则被融合的相邻多边形的公共边界将被擦除。如果启用,可选的“保持分离的特征分离”设置将导致没有重叠或接触的特征和零件作为单独的特征(而不是单个多部分特征的部分)输出。
生成的属性表将具有与输入图层相同的字段。输出图层字段中的值是恰好处理的第一个输入要素的值。

图 27.70 将图层融合为单个多部分要素
Default menu :
参数
基本参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Dissolve field(s) 任选 |
|
[tablefield: any] [list] 默认:[] |
所选字段(S)具有相同值的要素将被替换为单个要素,并且它们的几何图形将被合并。 如果未提供任何字段,则所有要素都将被融合,从而生成单个(多部分)要素。 ![]() 图 27.71 融合公共属性(2个多部分要素)上的多边形层 |
Dissolved |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
高级参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Keep disjoint features separate |
|
[boolean] 默认:FALSE |
部分融合特征被导出为单独的特征(而不是多部分特征的部分)。 ![]() 图 27.72 源(左)、全部融合(3个不同的要素-右) ![]() 图 27.73 震源(左),在场上融合(5个不同的要素-右) |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Dissolved |
|
[same as input] |
包含已分解几何的输出矢量图层 |
Python代码
Algorithm ID : native:dissolve
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.23. 覆盖(从栅格设置Z值)
使用从栅格图层内的标注栏中采样的值来设置要素几何图形中每个重叠顶点的Z值。栅格值可以选择性地按预置量进行缩放。
如果层中已存在Z值,则它们将被新值覆盖。如果不存在Z值,几何图形将升级为包含Z尺寸。
允许 features in-place modification 启用Z的点、线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Raster layer |
|
[raster] |
具有Z值的栅格图层 |
Band number |
|
[raster band] 默认:1 |
要从中获取Z值的栅格波段 |
Value for nodata or non-intersecting vertices |
|
默认:0 |
折点与栅格(的有效像素)不相交时使用的值 |
Scale factor |
|
默认:1.0 |
缩放值:标注栏值乘以此值。 |
Offset |
|
默认值:0.0 |
偏移值:在应用“比例因子”之后,它被代数地加到带值上。 |
Updated |
|
[same as input] 默认: |
指定输出向量层(使用来自栅格层的Z值)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Updated |
|
[same as input] |
栅格图层中具有Z值的输出矢量图层 |
Python代码
Algorithm ID : native:setzfromraster
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.24. 丢弃M/Z值
从输入几何图形中删除M(测量)或Z(高度)值。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
具有M或Z值的输入矢量图层 |
Drop M Values |
|
[boolean] 默认:FALSE |
从几何中删除M值 |
Drop Z Values |
|
[boolean] 默认:FALSE |
从几何中移除Z值 |
Z/M Dropped |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Z/M Dropped |
|
[same as input] |
输出向量层(与输入层相同,不同之处在于已从几何体中移除M和/或Z维)。 |
Python代码
Algorithm ID : native:dropmzvalues
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.25. 消除选定的多边形
通过删除选定的输入层多边形的公共边界,将其与某些相邻的多边形组合在一起。相邻的多边形可以是面积最大或最小的多边形,也可以是与要消除的多边形共享最大公共边界的多边形。
消除通常用于去除狭长多边形,即输入边界相似但不相同的多边形相交过程产生的微小多边形。
Default menu :
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入多边形矢量层 |
Merge selection with the neighboring polygon with the |
|
[enumeration] 默认:无 |
选择要使用的参数以删除选定的多边形:
|
Eliminated |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Eliminated |
|
[vector: polygon] |
输出多边形矢量层。 |
Python代码
Algorithm ID : qgis:eliminateselectedpolygons
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.26. 分解线
获取LINES层并创建一个新层,其中每个LINE层由一组表示原始线中线段的线条替换。
生成的层中的每条线只包含一个起点和一个终点,它们之间没有中间顶点。

图 27.74 原始线层和分解层
允许 features in-place modification 线要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Exploded |
|
[vector: line] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Exploded |
|
[vector: line] |
输出线向量层,其特征表示输入层的每一段。 |
Python代码
Algorithm ID : native:explodelines
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.27. 延长线
在直线的起点和终点将直线几何图形延伸指定的量。
使用直线中第一段和最后一段的方向角来延长线。

图 27.75 红色虚线表示原始图层的初始和最终扩展
允许 features in-place modification 线要素的数量
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Start distance |
|
延伸直线第一段的距离(起点) |
|
End distance |
|
延伸直线最后一段的距离(终点) |
|
Extended |
|
[vector: line] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Extended |
|
[vector: line] |
输出(扩展)线矢量层。 |
Python代码
Algorithm ID : native:extendlines
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.28. 提取M值
将几何图形中的M值提取到要素属性中。
默认情况下,只提取每个要素第一个顶点的M值,但是该算法可以选择性地计算几何图形的所有M值的统计信息,包括总和、平均值、最小值和最大值。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Summaries to calculate |
|
[enumeration] 默认: [0] |
有关几何图形的M值的统计信息。以下一项或多项:
|
Output column prefix |
|
[string] 默认:‘M_’ |
输出(M)列的前缀 |
Extracted |
|
[same as input] 默认: |
指定输出层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Extracted |
|
[same as input] |
输出向量层(具有M值) |
Python代码
Algorithm ID : native:extractmvalues
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.29. 提取特定顶点
获取一个矢量层并生成一个点层,其中的点表示输入几何图形中的特定顶点。
例如,此算法可用于提取几何体中的第一个或最后一个顶点。与每个点相关联的属性与与顶点所属的要素相关联的属性相同。
Vertex index参数接受逗号分隔的字符串,该字符串指定要提取的顶点的索引。第一顶点对应于索引0,第二顶点具有索引1,等等。负索引可用于在几何体的末端寻找顶点,例如,索引-1对应于最后一个顶点,-2对应于倒数第二个顶点,等等。
附加的字段被添加到顶点,指示特定的顶点位置(例如,0、-1等)、原始顶点索引、顶点的部分及其在该部分内的索引(以及其对于多边形的环)、沿原始几何体的距离以及原始几何体的顶点的平分线角度。
允许 features in-place modification 点要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Vertex indices |
|
[string] 默认值:‘0’ |
要提取的顶点索引的逗号分隔字符串。 |
Vertices |
|
[vector: point] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Vertices |
|
[vector: point] |
包含输入层几何图形中指定顶点的输出(点)矢量层。 |
Python代码
Algorithm ID : native:extractspecificvertices
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.30. 提取折点
获取一个矢量层并生成一个点层,其中的点表示输入几何图形中的顶点。
与每个点相关联的属性与与顶点所属的要素相关联的属性相同。
其他字段将添加到顶点,以指示顶点索引(从0开始)、要素的零件及其在零件内的索引(以及其在多边形中的环)、沿原始几何图形的距离以及原始几何图形的顶点的平分线角度。

图 27.76 为线和面层提取的折点
允许 features in-place modification 点要素的数量
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Vertices |
|
[vector: point] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Vertices |
|
[vector: point] |
包含输入层几何图形中的顶点的输出(点)矢量层。 |
Python代码
Algorithm ID : native:extractvertices
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.31. 提取Z值
将几何图形中的Z值提取到要素属性中。
默认情况下,只提取每个要素第一个顶点的Z值,但是该算法可以选择性地计算几何图形的所有Z值的统计信息,包括总和、平均值、最小值和最大值。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Summaries to calculate |
|
[enumeration] 默认: [0] |
有关几何体的Z值的统计信息。以下一项或多项:
|
Output column prefix |
|
[string] 默认:‘Z_’ |
输出(Z)列的前缀 |
Extracted |
|
[same as input] 默认: |
指定输出层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Extracted |
|
[same as input] |
输出向量层(具有Z值) |
Python代码
Algorithm ID : native:extractzvalues
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.32. 按M值过滤顶点
根据顶点的M值过滤掉顶点,返回仅具有M值大于或等于指定最小值和/或小于或等于最大值的顶点的几何体。
如果未指定最小值,则仅测试最大值,类似地,如果未指定最大值,则仅测试最小值。

图 27.77 红线表示仅包含M值<=10的顶点的黑线。
允许 features in-place modification 启用了M的线和面要素的数量
备注
根据输入几何图形属性和使用的过滤器,此算法创建的结果几何图形可能不再有效。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
要从中移除折点的输入线或面向量层 |
Minimum 任选 |
|
默认: Not set |
允许的最小M值 |
Maximum 任选 |
|
默认: Not set |
允许的最大M值 |
Filtered |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Filtered |
|
[same as input] |
仅包含过滤顶点的要素的输出向量层。 |
Python代码
Algorithm ID : native:filterverticesbym
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.33. 按Z值过滤折点
根据顶点的Z值过滤掉顶点,返回仅具有Z值大于或等于指定最小值和/或小于或等于最大值的顶点的几何体。
如果未指定最小值,则仅测试最大值,类似地,如果未指定最大值,则仅测试最小值。

图 27.78 红线表示仅包含Z值<=10的顶点的黑线。
允许 features in-place modification 启用Z的线和面要素的数量
备注
根据输入几何图形属性和使用的过滤器,此算法创建的结果几何图形可能不再有效。您可能需要运行 固定几何图形 算法来确保它们的有效性。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
要从中移除折点的输入线或面向量层 |
Minimum 任选 |
|
默认: Not set |
允许的最小Z值 |
Maximum 任选 |
|
默认: Not set |
允许的最大Z值 |
Filtered |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Filtered |
|
[same as input] |
仅包含过滤顶点的要素的输出向量层。 |
Python代码
Algorithm ID : native:filterverticesbyz
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.34. 固定几何图形
尝试在不丢失任何输入顶点的情况下创建给定无效几何体的有效表示。无需进一步干预即可返回已经有效的几何图形。始终输出多几何体层。
允许 features in-place modification 未启用M的点、线和面要素的
备注
将从输出中删除M值。
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Repair method |
|
[enumeration] 默认:1 |
用于修复几何图形的方法。以下选项之一:
|
Fixed geometries |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Fixed geometries |
|
[same as input] |
具有固定几何图形的输出向量层。 |
Python代码
Algorithm ID : native:fixgeometries
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.35. 强制右手定尺
强制多边形几何体遵守右手规则,在右手规则中,由多边形界定的区域位于边界的右侧。具体地说,外环以顺时针方向定向,而任何内环以逆时针方向定向。
允许 features in-place modification 面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入向量层 |
Reoriented |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Reoriented |
|
[vector: polygon] |
具有重定向几何体的输出向量层。 |
Python代码
Algorithm ID : native:forcerhr
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.36. 测地线在反大地线处分割
只要一条直线穿过测地线(±180度经度),就会将该直线分割为多条测地线段。
在反分支线上的分裂有助于在某些投影中直观地显示线条。返回的几何图形将始终是多部分几何图形。
每当输入几何图形中的线段穿过反基准线时,它们将被分割为两个线段,断点的纬度使用连接该线段两侧的点的测地线来确定。计算此断点时将使用当前项目椭球体设置。
如果输入几何体包含M或Z值,则将为在反标线上创建的新顶点线性插补这些值。
允许 features in-place modification 线要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Split |
|
[vector: line] 默认: |
指定输出线向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Split |
|
[vector: line] |
输出线向量层在反偏线处分裂。 |
Python代码
Algorithm ID : native:antimeridiansplit
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.37. 按表达式计算的几何图形
使用QGIS表达式更新输入要素的现有几何图形(或创建新几何图形)。
这允许复杂的几何图形修改,可以利用QGIS表达式引擎的所有灵活性来操作和创建输出要素的几何图形。
有关QGIS表达式函数的帮助,请参阅中提供的内置帮助 expression builder 。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Output geometry type |
|
[enumeration] 默认:0 |
输出几何体强烈依赖于表达式:例如,如果创建缓冲区,则几何体类型必须为多边形。以下选项之一:
|
Output geometry has z values |
|
[boolean] 默认:FALSE |
选择输出几何是否应包括Z维度 |
Output geometry has m values |
|
[boolean] 默认:FALSE |
选择输出几何是否应包括M维 |
Geometry expression |
|
[expression] 默认:‘$GEOMETRY’ |
添加要使用的几何图形表达式。您可以使用该按钮打开表达式对话框。该对话框列出了所有相关的表达式以及它们的帮助和指南。 |
Modified geometry |
|
[vector: any] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Modified geometry |
|
[vector: any] |
输出向量层 |
Python代码
Algorithm ID : native:geometrybyexpression
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.38. 在直线上插值点
创建沿直线或曲线几何图形以设定距离内插的点几何图形。
Z值和M值从现有值线性内插。
如果遇到多部分几何图形,则在计算子字符串时仅考虑第一部分。
如果指定的距离大于输入要素的长度,则生成的要素将具有空几何图形。

图 27.79 直线起点500米处的插值点
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Distance |
|
默认值:0.0 |
距直线起点的距离 |
Interpolated points |
|
[vector: point] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Interpolated points |
|
[vector: point] |
具有沿线或面边界的设定距离的要素的输出点矢量图层 |
Python代码
Algorithm ID : native:interpolatepoint
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.39. 保留N个最大的部分
获取具有面或多面的层,并返回一个新层,其中 n 保留每个多边形要素的最大多边形。如果某个功能具有 n 或更少的零件,则仅复制该特征。

图 27.80 从左上角顺时针方向:原始多部分功能,保留一、两和三个最大的部分
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Polygons |
|
[vector: polygon] |
输入多边形矢量层 |
Parts to keep |
|
[number] 默认:1 |
要保留的零件数。如果为1,则仅保留功能的最大部分。 |
Parts |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Parts |
|
[vector: polygon] |
包含每个要素的N个最大部分的输出面矢量图层 |
Python代码
Algorithm ID : qgis:keepnbiggestparts
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.40. 行子串
返回位于指定起点距离和终点距离(从直线起点测量)之间的直线(或曲线)部分。
Z值和M值从现有值线性内插。
如果遇到多部分几何图形,则在计算子字符串时仅考虑第一部分。

图 27.81 起始距离设置为0米、结束距离设置为250米的子字符串线。
允许 features in-place modification 线要素的数量
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Start distance |
|
沿输入线到输出要素起点的距离 |
|
End distance |
|
沿输入线到输出要素终点的距离 |
|
Substring |
|
[vector: line] 默认: |
指定输出线向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Substring |
|
[vector: line] |
输出线矢量层。 |
Python代码
Algorithm ID : native:linesubstring
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.41. 线到面
使用输入线图层中的线作为多边形环生成多边形图层。
输出层的属性表与输入层的属性表相同。
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Polygons |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Polygons |
|
[vector: polygon] |
输出多边形矢量层。 |
Python代码
Algorithm ID : qgis:linestopolygons
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.42. 合并行
将多重线串几何图形的所有连接部分合并为单条线串几何图形。
如果输入多重线串几何图形的任何部分未连接,则生成的几何图形将是包含任何可以合并的线和任何未连接的线部分的多重线串。
允许 features in-place modification 线要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Merged |
|
[vector: line] 默认: |
指定输出线向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Merged |
|
[vector: line] |
输出(合并)线矢量层。 |
Python代码
Algorithm ID : native:mergelines
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.43. 最小边界几何图形
创建封闭输入图层中的要素的几何图形。这些要素可以按一个字段分组。然后,输出图层将为每个组值包含一个要素,该要素具有一个几何图形(MBB),该几何图形覆盖了具有匹配值的要素的几何图形。
支持以下封闭几何图形类型:
边界框(信封)
定向矩形
圆
凸壳

图 27.82 从左上角开始顺时针方向:封套、定向矩形、圆形、凸壳
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Field 任选 |
|
[tablefield: any] |
要素可以按字段分组。如果设置该选项,则会导致输出图层为每个分组值包含一个要素,其中最小几何图形仅覆盖具有匹配值的要素。 |
Geometry type |
|
[enumeration] 默认:0 |
封闭几何图形类型。以下选项之一:
|
Bounding geometry |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Bounding geometry |
|
[vector: polygon] |
输出(边界)多边形矢量层。 |
Python代码
Algorithm ID : qgis:minimumboundinggeometry
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.44. 最小封闭圆
计算输入图层中要素的最小封闭圆。

图 27.83 将每个要素的圆括起来
允许 features in-place modification 面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Number of segments in circles |
|
[number] 默认:72 |
用来近似圆的线段数。最少8个,最多100000个。 |
Minimum enclosing circles |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Minimum enclosing circles |
|
[vector: polygon] |
输出多边形矢量层。 |
Python代码
Algorithm ID : native:minimumenclosingcircle
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.45. 多环缓冲器(恒定距离)
计算多环( donut )使用固定的或动态的距离和环形数来缓冲输入层的特征。

图 27.84 线、点和面图层的多环缓冲区
允许 features in-place modification 面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Number of rings |
|
默认:1 |
戒指的数量。它可以是唯一的值(所有要素的环数相同),也可以从要素数据中获取(环数取决于特征值)。 |
Distance between rings |
|
默认:1.0 |
环之间的距离。它可以是唯一的值(所有要素的距离相同),也可以从要素数据中获取(距离取决于要素值)。 |
Multi-ring buffer (constant distance) |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Multi-ring buffer (constant distance) |
|
[vector: polygon] |
输出多边形矢量层。 |
Python代码
Algorithm ID : native:multiringconstantbuffer
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.46. 多部件到单部件
将输入图层中的多部分要素拆分为单部分要素。
输出层的属性与原始属性相同,但分为单个要素。

图 27.85 左侧为多部分源图层,右侧为单部分输出结果
允许 features in-place modification 点、线和面要素的
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Single parts |
|
[same as input] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Single parts |
|
[same as input] |
输出向量层。 |
Python代码
Algorithm ID : native:multiparttosingleparts
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.47. 偏移线
按指定距离偏移直线。正距离将线向左偏移,负距离将线向右偏移。

图 27.86 蓝色为源层,红色为偏移层
允许 features in-place modification 线要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Distance |
|
默认:10.0 |
偏移距离。您可以使用右侧的数据定义按钮来选择要从中计算半径的字段。这样,您可以为每个要素提供不同的半径(请参见 可变距离缓冲器 )。 |
Segments |
|
[number] 默认:8 |
控制创建四舍五入偏移时用于近似四分之一圆的线段数。 |
Join style |
|
[enumeration] 默认:0 |
指定在偏移线中的拐角时应使用圆形连接、斜接连接还是斜接连接。选项包括:
![]() 图 27.87 圆形、斜接和斜接样式 |
Miter limit |
|
[number] 默认:2.0 |
将创建斜接时要使用的与偏移几何图形的最大距离设置为偏移距离的系数(仅适用于斜接样式)。最低:1.0 ![]() 图 27.88 限制为2的10M缓冲区和限制为1的10M缓冲区 |
Offset |
|
[vector: line] 默认: |
指定输出(偏移)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Offset |
|
[vector: line] |
输出(偏移)线图层 |
Python代码
Algorithm ID : native:offsetline
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.48. 定向最小边界框
计算输入图层中每个要素的最小旋转矩形面积。

图 27.89 定向最小边界框
允许 features in-place modification 面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Bounding boxes |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Bounding boxes |
|
[vector: polygon] |
输出多边形矢量层。 |
Python代码
Algorithm ID : native:orientedminimumboundingbox
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.49. 正交化
尝试正交化输入线或多边形层的几何图形。此过程会移动几何体中的顶点,以尝试使几何体中的每个角度成为直角或直线。

图 27.90 蓝色为源图层,红色为正交化结果
允许 features in-place modification 线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Maximum angle tolerance (degrees) |
|
[number] 默认:15 |
指定顶点可以与直角或直线的最大偏差,以便对其进行调整。较小的容差意味着仅调整已接近直角的顶点,而较大的容差意味着也将调整偏离直角的顶点。 |
Maximum algorithm iterations |
|
[number] 默认:1000 |
为最大迭代次数设置较大的数字将产生更正交的几何体,但会以额外处理时间为代价。 |
Orthogonalized |
|
[same as input] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Orthogonalized |
|
[same as input] |
调整了角度的输出多边形矢量层。 |
Python代码
Algorithm ID : native:orthogonalize
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.50. 面上的点
对于输入图层的每个要素,返回一个保证位于要素几何图形曲面上的点。
允许 features in-place modification 点要素的数量
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Create point on surface for each part |
|
如果选中,将为几何图形的每个部分创建点。 |
|
Point |
|
[vector: point] 默认: |
指定输出点矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Point |
|
[vector: point] |
输出点矢量层。 |
Python代码
Algorithm ID : native:pointonsurface
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.51. 沿几何图形的点
沿线或多边形几何图形以规则间隔创建点。创建的点将添加沿几何图形的距离和该点处直线的角度的新属性。
可以指定可选的起点和终点偏移,以控制应创建点距离几何图形的起点和终点多远。

图 27.91 沿源线图层创建的点
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Distance |
|
默认:1.0 |
直线上两个连续点之间的距离 |
Start offset |
|
默认值:0.0 |
距输入线起点的距离,表示第一个点的位置。 |
End offset |
|
默认值:0.0 |
距输入线末端的距离,表示不应创建任何点要素的位置。 |
Interpolated points |
|
[vector: point] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Interpolated points |
|
[vector: point] |
具有沿输入图层的线或多边形边界放置的要素的点向量层。 |
Python代码
Algorithm ID : native:pointsalonglines
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.52. 点位移
给定接近距离,标识附近的点要素并将其径向分布在圆周上,该圆的圆心表示其重心。一种用于分散覆盖要素的便捷工具。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: point] |
输入点矢量层 |
Minimum distance to other points |
|
[number] 默认:1.0 |
低于该距离的点要素被认为是接近的。接近的要素完全分布在一起。 |
Displacement distance |
|
[number] 默认:1.0 |
放置闭合要素的圆的半径 |
Horizontal distribution for two point case |
|
[boolean] 默认:FALSE |
当只有两个点被标识为闭合时,将它们在圆上水平对齐,而不是垂直对齐。 |
Displaced |
|
[vector: point] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Displaced |
|
[vector: point] |
输出点矢量层 |
Python代码
Algorithm ID : qgis:pointsdisplacement
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.53. 不可及之极
计算多边形层的不可访问极点,它是距曲面边界最远的内点。
该算法使用‘PolyLabel’算法(Vladimir Agafonkin,2016),这是一种迭代方法,保证在指定的容差内找到真正的不可访问性极点。公差越精确(值越小)需要的迭代次数越多,计算的时间也就越长。
从计算的极点到多边形边界的距离将作为新属性存储在输出层中。

图 27.92 不可及之极
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入向量层 |
Tolerance |
|
[number] 默认:1.0 |
设置计算的容差 |
Point |
|
[vector: point] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Point |
|
[vector: point] |
输出点矢量图层 |
Python代码
Algorithm ID : native:poleofinaccessibility
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.54. 多角化
创建面图层,其要素边界是从 closed 功能。

图 27.93 由闭合直线生成的黄色多边形
备注
线条层必须具有闭合形状才能转换为多边形。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Keep fields from the input layer 任选 |
|
[boolean] 默认:FALSE |
选中以保留输入图层的字段(仅保留表结构,不保留值 |
Polygons from lines |
|
[vector: polygon] 默认: |
指定输出多边形矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Polygons from lines |
|
[vector: polygon] |
线的输出面向量图层 |
Python代码
Algorithm ID : native:polygonize
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.55. 多边形转直线
获取一个多边形层并创建一个LINE层,其中的线条表示输入层中的多边形的边界。
输出层的属性表与输入层的属性表相同。

图 27.94 作为算法结果的黑线
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入多边形矢量层 |
Lines |
|
[vector: line] 默认: |
指定输出线向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Lines |
|
[vector: line] |
面的输出线向量图层 |
Python代码
Algorithm ID : native:polygonstolines
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.56. 项目点(笛卡尔)
按指定的距离和方向角(方位角)投影点几何图形。
允许 features in-place modification 点要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: point] |
输入点矢量层 |
Bearing (degrees from North) |
|
默认值:0.0 |
从北开始的顺时针角度,以度(°)为单位 |
Distance |
|
默认:1.0 |
偏移几何图形的距离,以图层单位表示 |
Projected |
|
[vector: point] 默认: |
指定输出点矢量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Projected |
|
[vector: point] |
输出(投影)点向量图层 |
Python代码
Algorithm ID : native:projectpointcartesian
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.57. 升级为多部分
获取具有单个部分几何图形的矢量层,并生成其中所有几何图形都是多部分的新的矢量层。
已经是多部分要素的输入要素将保持不变。
此算法可用于将几何图形强制为多部分类型,以便与需要多部分要素的数据提供程序兼容。
允许 features in-place modification 点、线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Multiparts |
|
[same as input] 默认: |
指定输出多部分向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Multiparts |
|
[same as input] |
输出的多部分矢量图层 |
Python代码
Algorithm ID : native:promotetomulti
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.58. 长方形、椭圆形、方块
为输入点图层的每个要素创建一个具有矩形、椭圆形或菱形形状的缓冲区。
形状参数可以是所有要素的固定参数,也可以是使用字段或表达式的动态参数。

图 27.95 具有动态参数的不同缓冲区形状
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: point] |
输入点矢量层 |
Buffer shape |
|
[enumeration] |
要使用的形状。以下选项之一:
|
Width |
|
默认:1.0 |
缓冲区形状的宽度 |
Height |
|
默认:1.0 |
缓冲区形状的高度 |
Rotation 任选 |
|
默认:无 |
缓冲区形状的旋转 |
Number of segments |
|
[number] 默认:36 |
完整圆的线段数( Ovals 形状) |
Output |
|
[vector: polygon] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Output |
|
[vector: polygon] |
输出向量层(带有缓冲区形状) |
Python代码
Algorithm ID : native:rectanglesovalsdiamonds
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.59. 删除重复的折点
从要素中删除重复的顶点,只要删除顶点不会导致几何图形退化。
公差参数指定在确定顶点是否相同时坐标的公差。
默认情况下,检测重复顶点时不考虑Z值。例如,X和Y坐标相同但Z值不同的两个顶点仍将被视为重复,其中一个将被移除。如果 Use Z Value 参数为真,则还会测试Z值,并且将保留X和Y相同但Z不同的顶点。
允许 features in-place modification 点、线和面要素的
备注
不会在多部分几何体的不同部分之间测试重复的顶点,例如,此方法不会更改具有重叠点的多点几何体。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Tolerance |
|
默认:0.000001 |
距离指定距离更近的折点被视为重复折点 |
Use Z value |
|
默认:FALSE |
如果 Use Z Value 参数为真,则还会测试Z值,并且将保留X和Y相同但Z不同的顶点。 |
Cleaned |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Cleaned |
|
[same as input] |
输出向量层(没有重复顶点) |
Python代码
Algorithm ID : native:removeduplicatevertices
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.60. 删除空几何图形
从矢量层中删除没有几何图形的所有要素。所有其他功能将原封不动地复制。
具有空几何图形的要素可以保存到单独的图层。
如果 Also remove empty geometries 选中后,该算法将移除其几何图形没有坐标的要素,即空几何图形。在这种情况下,空输出也将反映此选项,其中既包含空几何图形,也包含空几何图形。
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层(具有非空几何图形) |
Also remove empty geometries |
|
[boolean] |
|
Non null geometries |
任选 |
[same as input] 默认: |
为非空(和非空)几何图形指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
Null geometries 任选 |
|
[same as input] 默认: |
指定空(和空)几何图形的输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Null geometries |
|
[same as input] |
输出向量层(适用于空几何图形,如果选中,则为空几何图形) |
Non null geometries |
|
[same as input] |
输出向量层(没有空几何图形,如果选中,则为空几何图形) |
Python代码
Algorithm ID : native:removenullgeometries
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.61. 反转线方向
反转线条图层的方向。

图 27.96 方向反转前后
允许 features in-place modification 线要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Reversed |
|
[vector: line] 默认: |
指定输出线向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Reversed |
|
[vector: line] |
输出线向量层(具有反转的线) |
Python代码
Algorithm ID : native:reverselinedirection
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.62. 旋转
按指定角度顺时针旋转特征几何图形。旋转围绕每个要素的质心进行,也可以选择围绕唯一的预设点进行。
允许 features in-place modification 点、线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Rotation (degrees clockwise) |
|
默认值:0.0 |
以度为单位的旋转角度 |
Rotation anchor point (x, y) 任选 |
|
[point] 默认:无 |
要绕其旋转要素的点的X、Y坐标。如果未设置,则围绕每个要素的质心进行旋转。 |
Rotated |
|
[same as input] 默认: |
指定输出向量层(带有旋转的几何图形)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Rotated |
|
[same as input] |
具有旋转几何的输出矢量图层 |
Python代码
Algorithm ID : native:rotatefeatures
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.63. 圆度
计算每个要素的圆度并将其存储为新字段。输入向量层必须包含多边形。
多边形的圆度定义为4π×多边形面积/周长?圆度值在0到1之间变化。完美圆的圆度为1,而完全平坦的多边形的圆度为0。
备注
对于多部件多边形要素,该算法返回NULL。
允许 features in-place modification 面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入向量层 |
Roundness |
|
[vector: polygon] 默认: |
指定输出向量层(具有圆度字段)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Rotated |
|
[same as input] |
字段中具有圆度值的输出矢量图层 |
Python代码
Algorithm ID : native:roundness
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.64. 按最大角度分割
通过将曲线截面转换为线性截面来分割几何图形。
通过指定拉直的几何体上的顶点之间的最大允许半径角度(例如,从原始圆弧中心到线性化几何体上的连续输出顶点创建的圆弧的角度)来执行分段。非曲线几何图形将保持不变。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Maximum angle between vertices (degrees) |
|
默认:5.0 |
拉直几何图形上的顶点之间的最大允许半径角度 |
Segmentized |
|
[same as input] 默认: |
指定输出向量层(具有分段的几何图形)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Segmentized |
|
[same as input] |
具有分段几何的输出矢量图层 |
Python代码
Algorithm ID : native:segmentizebymaxangle
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.65. 按最大距离分段
通过将曲线截面转换为线性截面来分割几何图形。
通过指定原始曲线和分段表示之间允许的最大偏移距离来执行分段。非曲线几何图形将保持不变。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Maximum offset distance |
|
默认:1.0 |
原始曲线和分段表示之间允许的最大偏移距离,以层为单位。 |
Segmentized |
|
[same as input] 默认: |
指定输出向量层(具有分段的几何图形)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Segmentized |
|
[same as input] |
具有分段几何的输出矢量图层 |
Python代码
Algorithm ID : native:segmentizebymaxdistance
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.66. 设置M值
设置层中几何图形的M值。
如果该层中已存在M值,则它们将被新值覆盖。如果不存在M值,则几何图形将升级为包括M值和用作所有几何图形的初始M值的指定值。
允许 features in-place modification 启用M的点、线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
M Value |
|
默认值:0.0 |
要指定给要素几何的m值 |
M Added |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
M Added |
|
[same as input] |
输出向量层(将M值指定给几何体) |
Python代码
Algorithm ID : native:setmvalue
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.67. 从栅格设置M值
使用从栅格图层内的标注栏中采样的值来设置要素几何图形中每个重叠顶点的M值。栅格值可以选择性地按预置量进行缩放。
如果该层中已存在M值,则它们将被新值覆盖。如果不存在M值,几何图形将升级为包含M值。
允许 features in-place modification 启用M的点、线和面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Raster layer |
|
[raster] |
具有M值的栅格图层 |
Band number |
|
[raster band] 默认:1 |
从中获取M值的栅格波段 |
Value for nodata or non-intersecting vertices |
|
折点与栅格(的有效像素)不相交时使用的值 |
|
Scale factor |
|
默认:1.0 |
缩放值:标注栏值乘以此值。 |
Offset |
|
默认值:0.0 |
偏移值:在应用“比例因子”之后,它被代数地加到带值上。 |
Updated |
|
[same as input] 默认: |
指定输出向量层(具有更新的M值)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Updated |
|
[same as input] |
输出向量层(具有更新的M值) |
Python代码
Algorithm ID : native:setmfromraster
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.68. 设置Z值
设置层中几何图形的Z值。
如果层中已存在Z值,则它们将被新值覆盖。如果不存在Z值,几何图形将升级为包括Z值和用作所有几何图形的初始Z值的指定值。
允许 features in-place modification 启用Z的点、线和面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Z Value |
|
默认值:0.0 |
要指定给要素几何的Z值 |
Z Added |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Z Added |
|
[same as input] |
输出向量层(指定了Z值) |
Python代码
Algorithm ID : native:setzvalue
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.69. 简化
简化线或多边形层中的几何图形。它会创建一个新层,其要素与输入层中的要素相同,但其几何体包含的顶点数量较少。
该算法提供了多种简化方法,包括基于距离的(Douglas-Peucker算法)、基于面积的(Visvalingam算法)和将几何图形捕捉到网格。

图 27.97 从左上角顺时针方向:源层和不断增加的简化容差
允许 features in-place modification 线和面要素的
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Simplification method |
|
[enumeration] 默认:0 |
简化法。以下选项之一:
|
Tolerance |
|
默认:1.0 |
阈值公差(以层为单位):如果两个节点之间的距离小于公差值,线段将被简化,顶点将被移除。 |
Simplified |
|
[same as input] 默认: |
指定输出(简化)向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Simplified |
|
[same as input] |
输出(简化)向量层 |
Python代码
Algorithm ID : native:simplifygeometries
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.70. 单面缓冲器
仅在直线的一侧按指定距离计算直线上的缓冲区。
缓冲区始终会生成多边形层。

图 27.98 同一矢量线图层上的左侧缓冲区与右侧缓冲区
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Distance |
|
[number] 默认:10.0 |
缓冲距离。 |
Side |
|
[enumeration] 默认:0 |
在哪一侧创建缓冲区。以下选项之一:
|
Segments |
|
[number] 默认:8 |
控制创建四舍五入偏移时用于近似四分之一圆的线段数。 |
Join style |
|
[enumeration] 默认:0 |
指定在偏移线中的拐角时应使用圆形连接、斜接连接还是斜接连接。选项包括:
![]() 图 27.99 圆形、斜接和斜接样式 |
Miter limit |
|
[number] 默认:2.0 |
将创建斜接时要使用的与偏移几何图形的最大距离设置为偏移距离的系数(仅适用于斜接样式)。最低:1.0 ![]() 图 27.100 限制为2的10M缓冲区和限制为1的10M缓冲区 |
Buffer |
|
[vector: polygon] 默认: |
指定输出(缓冲区)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Buffer |
|
[vector: polygon] |
输出(缓冲区)面层 |
Python代码
Algorithm ID : native:singlesidedbuffer
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.71. 平滑
通过添加更多选项来平滑线或面层中的几何图形 vertices and corners 到特征几何图形。
Iterations参数指定将对每个几何体应用多少平滑迭代。迭代次数越多,几何体越平滑,但代价是几何体中的节点数越多。

图 27.101 增加迭代次数会产生更平滑的几何图形
Offset参数控制平滑后的几何体与原始几何体的紧密程度。值越小,适配越紧,值越大,适配越松。

图 27.102 蓝色:输入层。偏移0.25表示红线,而偏移0.50表示绿线。
最大角度参数可用于防止对具有大角度的节点进行平滑。线段与任意一侧的夹角大于此角度的任何节点都不会被平滑。例如,将最大角度设置为90度或更低将保留几何体中的直角。
允许 features in-place modification 线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line, polygon] |
输入线或面向量层 |
Iterations |
|
默认:1 |
增加迭代次数将产生更平滑的几何体(和更多顶点)。 |
Offset |
|
默认:0.25 |
增加价值将 move 平滑的线/边界进一步远离输入线/边界。 |
Maximum node angle to smooth |
|
默认:180.0 |
该值以下的每个节点都将被平滑 |
Smoothed |
|
[same as input] 默认: |
指定输出(平滑)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Smoothed |
|
[same as input] |
输出(平滑)矢量层 |
Python代码
Algorithm ID : native:smoothgeometry
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.72. 将几何图形捕捉到层
将一个层中的几何体捕捉到另一个层中的几何体,或捕捉到同一层中的几何体。
匹配是基于公差距离完成的,将根据需要插入或删除顶点,以使几何图形与参考几何图形匹配。
允许 features in-place modification 点、线和面要素的
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Reference layer |
|
[vector: any] |
要捕捉到的矢量层 |
Tolerance |
|
[number] 默认:10.0 |
控制在捕捉输入顶点之前,它们需要与参考层几何体的距离有多近。 |
Behavior |
|
[enumeration] 默认:0 |
可以对现有节点或线段(其距离要移动的顶点最近的点)执行捕捉。可用的捕捉选项:
|
Snapped geometry |
|
[same as input] 默认: |
指定输出(捕捉)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Snapped geometry |
|
[same as input] |
输出(捕捉)向量层 |
Python代码
Algorithm ID : native:snapgeometries
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.73. 将点捕捉到栅格
修改矢量层中几何图形的坐标,以便将所有点或顶点捕捉到栅格中最近的点。
如果捕捉的几何图形无法计算(或完全折叠),则将清除要素的几何图形。
可以在X、Y、Z或M轴上执行捕捉。任何轴的栅格间距为0都将禁用对该轴的捕捉。
允许 features in-place modification 点、线和面要素的
备注
在某些拐角情况下,捕捉到栅格可能会生成无效的几何图形。
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
X Grid Spacing |
|
默认:1.0 |
X轴上的栅格间距 |
Y Grid Spacing |
|
默认:1.0 |
Y轴上的栅格间距 |
Z Grid Spacing |
|
默认值:0.0 |
Z轴上的栅格间距 |
M Grid Spacing |
|
默认值:0.0 |
M轴上的栅格间距 |
Snapped |
|
[same as input] 默认: |
指定输出(捕捉)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Snapped |
|
[same as input] |
输出(捕捉)向量层 |
Python代码
Algorithm ID : native:snappointstogrid
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.74. 按最大长度拆分线
获取直线(或曲线)图层并将每个要素拆分为多个部分,其中每个部分具有指定的最大长度。新行子字符串起始处和结尾处的Z值和M值从现有值线性内插。
允许 features in-place modification 线要素的数量
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量层 |
Maximum line length |
|
默认:10.0 |
输出中一行的最大长度。 |
Split |
|
[vector: line] 默认: |
指定输出线向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Split |
|
[vector: line] |
新线向量图层-要素几何图形的长度小于或等于长度参数中指定的长度。 |
Python代码
Algorithm ID : native:splitlinesbylength
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.75. 细分
细分几何图形。返回的几何图形将是包含来自原始几何图形的细分零件的集合,其中没有零件的节点数超过指定的最大数量。
这对于将复杂的几何体分割成不太复杂的部分、更容易在空间上建立索引以及更快地执行空间操作非常有用。曲面几何图形将在细分之前进行分段。

图 27.103 左侧为输入图层,中间最大结点值为100,右侧最大值为200
允许 features in-place modification 点、线和面要素的
备注
细分几何图形可能会生成可能无效且可能包含自交点的几何图形零件。
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Maximum nodes in parts |
|
默认:256 |
每个新几何图形零件允许具有的最大顶点数。更少 sub-parts 以获得更高的价值。 |
Subdivided |
|
[same as input] 默认: |
指定输出(细分)向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Subdivided |
|
[same as input] |
输出向量层 |
Python代码
Algorithm ID : native:subdivide
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.76. 交换X和Y坐标
切换输入几何图形中的X和Y坐标值。
它可用于修复不小心颠倒了纬度和经度值的几何图形。
允许 features in-place modification 点、线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Swapped |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Swapped |
|
[same as input] |
输出(交换)向量层 |
Python代码
Algorithm ID : native:swapxy
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.77. 锥形缓冲器
使用指定的起点和终点缓冲区直径沿线几何图形创建锥形缓冲区。

图 27.104 锥形缓冲区示例
参见
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Start width |
|
默认值:0.0 |
表示线要素起点处应用的缓冲区半径 |
End width |
|
默认值:0.0 |
表示应用于线要素端点处的缓冲区的半径。 |
Segments |
|
默认:16 |
控制创建四舍五入偏移时用于近似四分之一圆的线段数。 |
Buffered |
|
[vector: polygon] 默认: |
指定输出(缓冲区)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Buffered |
|
[vector: polygon] |
输出(缓冲区)面层 |
Python代码
Algorithm ID : native:taperedbuffer
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.78. 镶嵌细分
细分多边形几何体层,将几何体划分为三角形组件。
输出层由每个输入要素的多个多边形几何图形组成,每个多多边形由多个三角形分量多边形组成。

图 27.105 细分多边形(右)
允许 features in-place modification 面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: polygon] |
输入多边形矢量层 |
Tesselated |
|
[vector: polygon] 默认: |
指定输出层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Tesselated |
|
[vector: polygon] |
输出多边形Z层 |
Python代码
Algorithm ID : 3d:tessellate
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.79. 横断面
在顶点上为(多个)线串创建横断面。
横断面是与输入多段线(在顶点处)成一定角度(默认情况下是垂直的)的直线。
在横断面中返回要素(S)中的字段(S),其中包含以下新字段:
TR_FID:原始要素的ID
TR_ID:横断面的ID。每条横断面都有唯一的ID
Tr_Segment:线串线段的ID
TR_ANGLE:与顶点处的原始线的角度(以度为单位
TR_LENGTH:返回的横断面的总长度
TR_ORIENT:横断面的一侧(仅位于线的左侧或右侧,或位于两侧)

图 27.106 红色虚线表示输入线图层的横断面
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Length of the transect |
|
默认:5.0 |
以地图单位表示的横断面长度 |
Angle in degrees from the original line at the vertices |
|
默认:90.0 |
更改横断面的角度 |
Side to create the transect |
|
[enumeration] |
选择横断面的一侧。可用选项包括:
|
Transect |
|
[vector: line] 默认: |
指定输出线图层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Transect |
|
[vector: line] |
输出线层 |
Python代码
Algorithm ID : native:transect
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.80. 翻译
通过使用预定义的X和Y位移进行偏移来移动层中的几何图形。
几何图形中的Z值和M值也可以转换。

图 27.107 虚线表示输入图层的转换几何
允许 features in-place modification 点、线和面要素的
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: any] |
输入向量层 |
Offset distance (x-axis) |
|
默认值:0.0 |
要在X轴上应用的置换 |
Offset distance (y-axis) |
|
默认值:0.0 |
要在Y轴上应用的位移 |
Offset distance (z-axis) |
|
默认值:0.0 |
要在Z轴上应用的置换 |
Offset distance (m values) |
|
默认值:0.0 |
要在M轴上应用的置换 |
Translated |
|
[same as input] 默认: |
指定输出向量层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Translated |
|
[same as input] |
输出向量层 |
Python代码
Algorithm ID : native:translategeometry
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.81. 可变宽度缓冲区(按M值)
沿线创建宽度可变的缓冲区,使用线几何图形的M值作为每个顶点处缓冲区的直径。

图 27.108 可变缓冲区示例
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: line] |
输入线向量图层 |
Segments |
|
默认:16 |
每四分之一圈的缓冲区分段数。它可以是唯一的值(所有要素的值都相同),也可以从要素数据中获取(该值可以取决于要素属性)。 |
Buffered |
|
[vector: polygon] 默认: |
指定输出(缓冲区)层。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Buffered |
|
[vector: polygon] |
可变缓冲面图层 |
Python代码
Algorithm ID : native:bufferbym
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。
27.1.18.82. Voronoi多边形
获取点图层并生成包含与这些输入点对应的Voronoi多边形(也称为Thiessen多边形)的多边形图层。
Voronoi多边形内的任何位置都比任何其他点更接近关联点。

图 27.109 Voronoi多边形
Default menu :
参数
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Input layer |
|
[vector: point] |
输入点矢量层 |
Buffer region (% of extent) |
|
[number] 默认值:0.0 |
输出图层的范围将比输入图层的范围大得多 |
Voronoi polygons |
|
[vector: polygon] 默认: |
指定输出层(使用Voronoi多边形)。以下选项之一:
还可以在此处更改文件编码。 |
产出
标签 |
名字 |
类型 |
描述 |
---|---|---|---|
Voronoi polygons |
|
[vector: polygon] |
输入点矢量图层的Voronoi面 |
Python代码
Algorithm ID : qgis:voronoipolygons
import processing
processing.run("algorithm_id", {parameter_dictionary})
这个 algorithm id 当您将鼠标悬停在处理工具箱中的算法上时,将显示。这个 parameter dictionary 提供参数名称和值。看见 从控制台使用处理算法 有关如何从Python控制台运行处理算法的详细信息。