这是命令 v.distancegrass 可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
v.距离 - 为矢量地图中的元素查找矢量地图 'to' 中最近的元素
'从'。
关键词
向量、距离、数据库、属性表
概要
v.距离
v.距离 - 帮帮我
v.距离 [-pa] ,=姓名 [来自层=绳子[来自_类型=绳子[,绳子,...]] 至=姓名
[到层=绳子[输入=绳子[,绳子,...]] [产量=姓名[DMAX=浮动]
[最小=浮动] 上传=绳子[,绳子……] [栏=姓名[,姓名,...]] [到列=姓名]
[表=姓名[分离器=字符] [--覆盖] [--帮助] [--详细] [--安静]
[--ui]
标志:
-p
将输出打印到标准输出,不更新属性表
第一列始终是名为 from_cat 的“来自”功能的类别
-a
计算到阈值内所有要素的距离
输出写入标准输出,但可以上传到由该模块创建的新表;
可以使用多个“上传”选项。
--覆盖
允许输出文件覆盖现有文件
- 帮帮我
打印使用摘要
--详细
详细模块输出
- 安静的
静音模块输出
--用户界面
强制启动 GUI 对话框
参数:
,=姓名 [必需的]
现有矢量图的名称(来自)
或用于直接 OGR 访问的数据源
来自层=绳子
层号或名称(来自)
矢量特征可以在不同的层中具有类别值。 这个数字决定
使用哪个层。 当与直接 OGR 访问一起使用时,这是层名称。
默认: 1
来自_类型=字符串[,字符串……]
特征类型(来自)
输入要素类型
选项: 点, 线, 边界, 质心, 区
默认: 点、线、面
至=姓名 [必需的]
现有矢量图的名称(到)
或用于直接 OGR 访问的数据源
到层=绳子
层号或名称(至)
矢量特征可以在不同的层中具有类别值。 这个数字决定
使用哪个层。 当与直接 OGR 访问一起使用时,这是层名称。
默认: 1
输入=字符串[,字符串……]
特征类型(至)
输入要素类型
选项: 点, 线, 边界, 质心, 区
默认: 点、线、面
产量=姓名
包含连接最近元素的线的输出矢量图的名称
DMAX=浮动
最大距离或 -1 无限制
默认: -1
最小=浮动
最小距离或 -1 表示无限制
默认: -1
上传=字符串[,字符串……] [必需的]
描述两个最近特征之间关系的值
选项: 猫, 距离, 到_x, 玩具, 沿着, 角度, to_attr
猫: 最近特征的类别
DIST: 到最近特征的最小距离
至_x: 'to' 特征上最近点的 x 坐标
玩具: 'to' 特征上最近点的 y 坐标
沿着:沿该线性特征到“to”特征上最近点的距离
角度:沿“到”地图中最近的线性特征的角度,从逆时针方向测量
+x 轴,以弧度表示,介于 -Pi 和 Pi 之间
to_attr: 由 to_column 选项给出的最近特征的属性
栏=姓名[,姓名……]
'upload' 选项指定的值将被上传的列名
到列=姓名
最近特征的列名(与upload=to_attr一起使用)
表=姓名
使用“到所有人的距离”标志时创建的表的名称
分离器=字符
用于将输出打印到标准输出的字段分隔符
特殊字符:管道、逗号、空格、制表符、换行符
默认: 管
商品描述
v.距离 在向量图中找到最近的元素 (至) 对于矢量地图中的元素 (,).
关于向量关系(距离、类别等)的各种信息可能是
上传到附加到第一个矢量地图的属性表,或打印到“标准输出”。
可以创建一个新的矢量图,其中连接要素上最近点的线是
书面。 最小 和 DMAX 可用于限制搜索半径。
对于行到行,说行 A 到行 B, v.距离 计算最短距离
A 中的每个顶点与 B 中的每个线段(不是顶点)。然后模块计算
B中每个顶点到A中每个线段的最短距离。 整体最短距离
使用A点到B段和B点到A段。 此外, v.距离
检查交叉点。 在交叉点的情况下,使用找到的第一个交叉点
并且距离设置为零。
对于线到区域,如果线(部分)在区域内,则距离设置为零。
区域内的线的第一个点用作公共点。 距离
如果线与外环或任何内环相交,则也设置为零
(isles),在这种情况下,第一个交叉点用作公共点。
对于区域到区域,模块首先检查重叠或一个区域是否(部分)
在另一个区域内。 这在计算上是相当密集的。 如果外圈
两个区域不重叠,线到线的距离计算如上,处理
外圈为两条线。 同样,落入一个区域的第一个点是
用作公共点,或第一个交点。
对于点到线以外的任何东西,可以有几个常见的位置为零
距离,然后公共位置将是由以下部分组成的叠加的结果
几个点、线或区域。 v.距离 在这些情况下选择一个点,并且
不会创建像 v.覆盖. 在这个实现中,任何共享点都是
和其他任何一样好。 计算一个交点比检查一个顶点是否是昂贵的
多边形内。 例如,如果“to”区域边界的顶点在
'from' 区域,这是一个常见的位置。 出于速度原因,距离然后设置为零
并且没有进行进一步的测试。
附注
如果最近的要素没有类别,则属性列将更新为 NULL。
上传 栏(s) 必须已经存在。 创建一个 v.db.add列.
在经纬度位置 v.距离 给出距离(DIST, 从_沿和 沿着) 不在
度,但以米为单位计算为球体上的测地线距离。
如果输入矢量地图中的一个或两个都是 3D 的,则相应地通知用户。
示例
找到最适合您的地方 最近的 生产线
找到最适合您的地方 最近的 生产线 在矢量地图“ln”中来自给定矢量地图“pnt”的点
阈值并将相关线类别写入属性表中的“linecat”列
附在矢量地图“pnt”上:
v.距离=pnt 到=ln 上传=cat 列=linecat
找到最适合您的地方 最近的 区
对于矢量地图“pnt”中的每个点,找到 最近的 区 来自给定范围内的地图“ar”
阈值并将相关区域类别写入属性表中的“areacat”列
附加到矢量图“pnt”(如果一个点落入一个区域,距离为
零):
v.距离=pnt 到=ar 上传=cat 列=areacat
创建 a 新 向量 地图
创建一个新的矢量地图,其中包含 生产线 连 最近的 功能 地图“pnt”和
地图“ln”。 生成的矢量图可用于例如将点连接到网络
根据网络分析的需要:
v.distance -p from=pnt to=ln out=connections 上传=dist column=dist
询问 信息
从选定点查询信息。 v.距离 从矢量图中获取点作为
输入而不是标准输入。 必须先创建带有查询点的新矢量地图
可以分析地图。
创建查询映射(如果不存在):
回声“123456|654321|1”| v.in.ascii 输出=pnt
查找最近的特征:
v.distance from=pnt to=map_to_query 上传=cat col=somecol -p
多边形中的点
选项 最大d=0 在这里很重要,因为否则对于不属于任何点的点
area,记录最近区域的类别。
对于矢量地图“pnt”中的每个点,找到 区 来自矢量地图“ar”,其中
单个点落下,将相关的区域类别写入“areacat”列中
附加到矢量地图“pnt”的属性表:
v.distance from=pnt to=ar dmax=0 上传=cat 列=areacat
单变量 统计 on 结果
创建包含连接线的矢量图并调查到目标的平均距离。
另一种解决方案是使用 v.distance upload=dist 选项上传距离
到 虫子 直接向量,然后在其上运行 v.univar。 另请注意,您可以上传两个
一次列,egvdistance upload=cat,dist column=nearest_id,dist_to_nr。
# 创建工作副本
g.copy vect=错误站点,错误
# 添加新的属性列以保存最近的 Archsite 类别编号
v.db.addcolumn map=bugs column="nrst_arch INTEGER"
v.distance from=bugs to=archsites to_type=point upload=to_attr \
to_column=cat 列=nrst_arch out=vdistance_vectors_raw
# 我们需要给行分类编号,创建一个表,然后创建
# 该表中的一列用于保存距离数据。
v.category vdistance_vectors_raw out=vdistance_vectors 类型=line op=add
g.remove -f type=向量名称=vdistance_vectors_raw
v.db.addtable map=vdistance_vectors column="length DOUBLE"
v.to.db 映射=vdistance_vectors 选项=长度列=长度
# 计算统计。 使用 v.univar.sh 进行扩展统计。
v.univar vdistance_vectors 列=长度
打印 距离 之间 点
经纬度位置示例 (EPSG 4326):
# 沿赤道的点
回声 "0|-61|1" | v.in.ascii 输出=pnt1 输入=-
回声 "0|-58|1" | v.in.ascii 输出=pnt2 输入=-
# 这里,距离以度为单位
v.distance from=pnt1 to=pnt2 上传=dist col=distance -p --q
from_cat|距离
1 | 3
打印 距离 矩阵
注意:矩阵式输出仅对标志启用 -a 和一个给定的上传选项。
Spearfish 样本数据位置:
v.distance -pa from=archsites to=archsites 上传=dist col=dist
北卡罗来纳州样本数据位置:
v.distance -pa 从=医院到=医院上传=dist \
col=dist 分隔符=逗号
from_cat to_cat 距离
1 2 3 4 5 ...
1 0 7489.10 339112.17 70900.39 70406.23 ...
2 7489.10 0 345749.12 76025.46 75538.87 ...
3 339112.17 345749.12 0 274153.19 274558.98 ...
4 70900.39 76025.46 274153.19 0 501.11 ...
5 70406.23 75538.87 274558.98 501.11 0 ...
...
使用 onworks.net 服务在线使用 v.distancegrass
