Skip to content

14_数字化地图数据 QGIS3

原文链接: https://www.qgistutorials.com/en/docs/3/digitizing_basics.html

数字化地图数据 (QGIS3)

数字化是 GIS 专业人员最常见的任务之一。通常需要花费大量的GIS 时间来数字化栅格数据,以创建用于分析的矢量图层。QGIS 具有强大的屏幕数字化和编辑功能,我们将在本教程中探讨这些功能。

任务概述

我们将使用一张栅格地形图,并创建几个代表公园周围要素的矢量图层。

您将学到的其他技能

  • 为大型栅格数据集构建金字塔,以加快缩放和平移操作的速度。
  • 创建和编辑 GeoPackage。

获取数据

新西兰土地信息局 (LINZ) 为新西兰大陆和查塔姆群岛提供了 1:50,000 比例尺的栅格地形图。

Christchurch Topo50 地图下载页面 下载 GeoTIFF 图像文件

为了方便起见,您也可以直接从下面的链接下载数据集的副本:

BX24_GeoTifv1-02-clip.tif

数据来源 [LINZ]

操作步骤

  1. 在 QGIS 中,加载图像文件。转到 图层 ‣ 添加图层 ‣ 添加栅格图层。

../../_images/014.png

  1. 在"数据源管理器"对话框中,选择"栅格"。在"源"下点击 ...,找到下载的 BX24_GeoTifv1-02.tif,然后点击"打开"。接着点击"添加",最后点击"关闭"。

../../_images/024.png

  1. 这是一个大的栅格文件,您可能会注意到,在缩放或平移地图时,地图需要一点时间来渲染图像。QGIS 提供了一个简单的解决方案,通过使用图像金字塔来使栅格加载得更快。QGIS 在不同分辨率下创建预渲染的瓦片,并呈现这些瓦片给您,而不是完整的栅格。这使得地图导航变得快速而响应灵敏。右键点击 BX24_GeoTifv1-02 图层并选择"属性"。

../../_images/034.png

  1. 在"图层属性"对话框中,选择"金字塔"选项卡。按住 Ctrl 键,选择"分辨率"面板中提供的所有分辨率。其他选项保持默认,点击"构建金字塔"。

../../_images/044.png

  1. 处理完成后,对话框将显示没有叉号的金字塔。这表示图像金字塔构建完成。点击"确定"。

../../_images/054.png

  1. 开始之前,我们需要设置默认的数字化选项。转到 设置 ‣ 选项…。

../../_images/064.png

  1. 在"选项"对话框中选择"数字化"选项卡。在"捕捉"部分勾选"默认启用捕捉"。在"默认捕捉模式"中选择"顶点"。这将允许您捕捉到最近的顶点。我更喜欢将"默认捕捉容差"和"顶点编辑的搜索半径"设置为像素而不是地图单位。这样可以确保无论缩放级别如何,捕捉距离保持不变。根据您的电脑屏幕分辨率,可以选择一个合适的值。点击"确定"。

../../_images/074.png

  1. 现在我们可以开始数字化了。首先,我们将创建一个道路图层并数字化公园区域周围的道路。点击 图层 ‣ 创建图层 ‣ 新建 GeoPackage 图层… 图标。GeoPackage 是一种用于地理信息系统的开放、非专有、平台无关、基于标准的数据格式,它被实现为一个 SQLite 数据库容器。与一大堆 shapefile 相比,这使得移动数据变得更加容易。在本教程中,我们创建了几个面图层和一个线图层,因此 GeoPackage 会更适合。您随时可以加载 GeoPackage 并将其中的图层导出为 shapefile 或您想要的任何其他格式。

../../_images/084.png

  1. 在"新建 GeoPackage 图层"对话框中,点击 … 按钮,保存一个新的名为 digitizing.gpkg 的 GeoPackage 数据库。选择"表名称"为 Roads,"几何类型"为 LineString。基础地形图的 CRS 是 EPSG:2193 - NZGD 2000

../../_images/094.png

  1. 在创建 GIS 图层时,必须确定每个要素的属性。由于这是一个道路图层,我们额外将有两个主要属性——名称和等级。在"新字段"中输入名称 Name,类型选择"文本数据","最大长度"设为 50,然后点击"添加到属性列表"。现在创建一个新属性 Class,类型为"文本数据",最大长度设为 50。点击"确定"。

../../_images/1018.png

  1. Roads 图层加载后,点击"切换编辑"按钮使图层进入编辑模式。

../../_images/1121.png

  1. 点击"添加线要素"按钮。在地图画布上点击以添加新顶点。沿着道路要素添加新的顶点。数字化完一个道路段落后,右键点击以结束该要素。

../../_images/1219.png

注意

您可以在数字化时使用鼠标滚轮放大或缩小。您也可以按住滚轮按钮并移动鼠标来平移地图。

  1. 右键点击结束要素后,会弹出一个名为"道路 - 要素属性"的对话框。在这里,您可以输入新创建要素的属性。跳过为 fid 输入任何值,因为它是一个将自动生成的顺序 ID。根据地形图上的显示输入道路名称。您也可以选择性地分配一个"道路等级"值。点击"确定"。

../../_images/1317.png

  1. 新建线图层的默认样式是细线。让我们更改它,以便更好地查看画布上数字化的要素。选择 Roads 图层,点击"图层样式面板"。

../../_images/1415.png

  1. 在"图层样式面板"中,搜索不同的道路图层样式。选择 topo road。点击"确定"。

../../_images/1514.png

  1. 现在道路图层将清晰可见。如果对工作满意,请点击"保存图层编辑"按钮以保存更改。

../../_images/1613.png

  1. 在数字化剩余道路之前,更新其他一些重要的捕捉设置以创建无错误的图层至关重要。右键点击工具栏区域的任何空白处,激活"捕捉"工具栏。

../../_images/1714.png

  1. 现在面板上会出现一个"启用捕捉"(磁铁图标)。点击它以启用它,选择"所有图层",然后选择 打开捕捉选项..

../../_images/1812.png

  1. 在"捕捉选项"对话框中,点击"在交点处捕捉",这允许您捕捉到背景图层的交点。

../../_images/1911.png

  1. 现在您可以点击"添加要素"按钮并数字化公园周围的其他道路。确保在添加新要素后点击"保存编辑"以保存您的工作。一个帮助数字化的有用工具是顶点工具。点击"顶点工具"按钮,选择 顶点工具 (当前图层)

../../_images/2011.png

  1. 激活节点工具后,点击任何要素以显示顶点。点击任何顶点以选择它。顶点被选中后会改变颜色。现在您可以点击并拖动鼠标来移动顶点。这在创建要素后想要进行调整时非常有用。您也可以按 Delete 键删除选定的顶点。(在 Mac 上是 Option+Delete

../../_images/21.gif

  1. 完成所有道路的数字化后,点击"切换编辑"按钮。点击"保存"。

../../_images/2213.png

  1. 现在我们将创建另一个图层来数字化公园多边形。点击 图层 ‣ 创建图层 ‣ 新建 GeoPackage 图层… 图标。在"新建 GeoPackage 图层"对话框中,点击 … 按钮,选择名为 digitizing.gpkg 的 GeoPackage 数据库。将新图层命名为 Parks。选择类型为 MultiPolygon。基础地形图的 CRS 是 EPSG:2193 - NZGD 2000。点击"确定"。在"新字段"中输入 Name,类型为"文本数据",最大长度为 50,然后点击:guilabel:添加到字段列表。。点击"确定"。

../../_images/2311.png

注意

多边形 vs 多多边形

多边形 - 由 1 个外部边界和 0 个或多个内部边界定义的平面曲面。每个内部边界在多边形中定义一个孔洞。

多多边形 - 用于表示内部有孔洞或由多个不相连区域组成的区域。例如,可以绘制 3 个不连续的多边形并将其分组为单个要素。

  1. 将弹出一个对话框。选择"添加新图层"按钮。

../../_images/2411.png

  1. 现在选择 Parks 图层,然后点击"切换编辑",再点击"添加要素"按钮,在地图画布上点击以添加多边形顶点。数字化代表公园的多边形。确保捕捉到道路的顶点,这样公园多边形和道路线之间就不会有缝隙。右键点击以完成多边形。

../../_images/2510.png

  1. 在"Parks - 要素属性"弹出窗口中输入公园名称。

../../_images/269.png

  1. 现在数字化公园的上部区域。输入公园名称并保存更改。

../../_images/2710.png

  1. 现在,在数字化内部多边形之前,让我们设置一些可以使这项工作变得更容易的设置。多多边形图层提供了另一个有用的设置,称为避免新多边形相交。选择"启用捕捉"(磁铁图标),点击它以启用它,然后点击"所有图层"并选择 高级配置

../../_images/2810.png

  1. 在捕捉工具栏中点击 在活动图层上避免重叠 按钮。

../../_images/299.png

  1. 现在在"编辑高级配置"中,选择单位为 像素

../../_images/308.png

  1. Parks 图层所在行的"避免重叠"列中勾选复选框。

../../_images/3112.png

  1. 点击"添加要素"来添加一个多边形。借助避免重叠功能,您将能够快速数字化一个新的多边形,而无需担心精确捕捉到相邻多边形。

../../_images/3210.png

  1. 右键点击完成多边形并输入属性。神奇的是,新多边形会收缩并精确捕捉到相邻多边形的边界!这在数字化复杂边界时非常有用,您无需非常精确,仍然可以获得拓扑正确的多边形。点击"切换编辑"以完成对 Parks 图层的编辑。

../../_images/334.png

  1. 现在该数字化建筑物图层了。通过点击 图层 ‣ 创建图层 ‣ 新建 GeoPackage 图层… 图标,创建一个名为 Buildings 的新多边形图层。设置图层为 Buildings 和 MuiltiPolygon。选择 CRS 为 EPSG:2193 - NZGD 2000。点击"确定"。

../../_images/344.png

  1. Buildings 图层添加后,关闭 ParksRoads 图层以使基础地形图可见。选择 Buildings 图层,点击"切换编辑"。

../../_images/354.png

  1. 数字化建筑物可能是一项繁琐的任务,而且手动添加顶点使得边缘垂直并形成矩形也很具有挑战性。我们将使用一个名为形状数字化的 QGIS 工具栏来帮助完成这项任务。右键点击工具栏区域的任何空白处,激活 形状数字化工具栏

../../_images/363.png

  1. 通过点击铅笔图标"切换编辑"启用编辑。

../../_images/373.png

  1. 现在在"添加矩形"下拉菜单中,选择"通过范围添加矩形"按钮。

../../_images/382.png

  1. 放大到有建筑物的区域。点击并拖动鼠标以绘制一个完美的矩形。类似地,添加剩余的建筑物。

../../_images/393.png

  1. 您会注意到有些建筑物不是垂直的,我们需要绘制一个成角度的矩形来匹配建筑物的轮廓。在"添加矩形"下拉菜单中,选择"通过中心和点添加矩形"按钮。

../../_images/401.png

  1. 放大到有菱形建筑物的区域。点击中心放置一个点,然后拖动鼠标绘制矩形。

../../_images/414.png

  1. 我们需要旋转这个矩形以匹配地形图上的图像。旋转工具在高级数字化工具栏中可用。右键点击工具栏部分的空白区域,启用"高级数字化"工具栏。

../../_images/422.png

  1. 点击"旋转要素"按钮。

../../_images/432.png

  1. 使用"选择单个要素"工具选择要旋转的多边形。一旦激活"旋转要素"工具,您会看到多边形中心有一个十字准线。精确点击该十字准线,按住鼠标左键拖动。将出现旋转要素的预览。当多边形与建筑物轮廓对齐时,松开鼠标按钮。

../../_images/442.png

  1. 完成所有建筑物的数字化后,保存图层编辑并点击"切换编辑"。您可以拖动图层以更改它们的显示顺序。数字化任务现已完成。您可以在图层属性中尝试样式和标注选项,用您创建的数据制作一张美观的地图。

../../_images/451.png


如果您想提供反馈或分享您对本教程的体验,请在下面评论。(需要 GitHub 账户)