Skip to content

绘制与编辑矢量数据

来源:https://vis-webcontent.s3.amazonaws.com/quickguides/Vector+Data/Draw+Edit+Vectors/index.html

第 1 课,共 1 课

绘制与编辑矢量数据

在本快速指南中,您将:

  • • 显示一幅 Landsat 影像作为绘制和显示矢量数据的底图。
  • • 创建新的矢量图层,沿着道路绘制多边形,并将矢量图层保存为 shapefile 文件。
  • • 添加、编辑和删除矢量数据。
  • • 更改矢量属性。
  • • 将矢量数据转换为要素计数。

矢量是用于标记影像中感兴趣区域的点、多点、折线或多边形。使用矢量 工具栏 按钮来处理矢量。ENVI 支持 shapefile 文件(.shp,不包括 Z 和 M 多边形)、GeoJSON 文件(.json,.geojson 仅支持读取)、ENVI 矢量文件(.evf)以及 OGC GeoPackage 矢量文件(.gpkg)。

示例数据

下载本快速指南的示例数据。然后将 .zip 文件的内容解压到本地目录。

[Landsat_LasVegas.zip

103.7 MB

下载Arrow down with horizontal line beneath it](assets/Landsat_LasVegas.zip)

打开 Landsat 影像

在本练习中,您将使用一幅经过地理配准的 Landsat 影像作为显示矢量数据的底图。

  1. 1 从菜单栏 中选择文件 > 打开。出现打开对话框。
  2. 2 转到您保存示例数据的位置,选择文件 LasVegasMay2020.dat。点击打开。该影像被添加到图层管理器 并显示在影像窗口 中。

创建矢量图层并保存为 Shapefile 文件

  1. 1 通过从菜单栏 中选择文件 > 新建 > 矢量图层来创建一个新图层。
  2. 2 在图层名称中输入 Roads
  3. 3 从下拉菜单中为记录类型选择折线

ENVI 会对在 RPC 影像之上创建的矢量图层执行实时正射校正。矢量图层将包含投影坐标,可以与其他投影影像一起显示,并且投影后的矢量图层可以在不重新投影 RPC 影像的情况下显示在现有 RPC 影像之上。

  1. 4 点击确定。光标变为十字准线符号。
  2. 5 沿着影像中的道路绘制折线。绘制每条折线后,右键单击并选择接受。或者,如果您操作有误,可以右键单击并选择清除
  3. 6 练习在影像的整个道路网上绘制和接受折线。单击会在选定点放置一个顶点,按住鼠标左键则可以手动绘制折线。探索哪种方法最适合您。
  4. 7 完成后,您可以通过在影像窗口 视图中右键单击并点击保存来保存图层更改。通过影像窗口右键单击并选择另存为,将图层更改保存为新文件。首次保存新的矢量图层时也可以使用另存为。将您的矢量图层另存为 Roads.shp*。

保存新图层会创建一个新的属性表,该表由数字属性 RECORD_ID 组成。

  1. 8 若要在视图中隐藏矢量图层,请在图层管理器 中取消选中该图层的复选框。若要显示该图层,请启用复选框。或者,在图层管理器 中右键单击视图图标,然后选择显示所有图层隐藏所有图层来一次性显示/隐藏所有图层。
  2. 9 要重命名图层,请右键单击其名称并选择重命名项。在重命名项 对话框中输入新名称,然后按 Enter 键接受,或按 Esc 键取消。

Linux 和 Mac 用户应点击绿色对勾图标接受新名称,或点击红色 X 图标取消。

  1. 10 要从图层管理器 中移除矢量图层,请右键单击该图层并选择移除。这会从图层管理器 中移除该图层,但文件仍处于打开状态,您可以从数据管理器 访问它以重新显示。
  2. 11 供将来参考,如果您显示多个视图,可以将矢量图层从图层管理器 拖放到显示中的任何一个视图,或拖放到图层管理器 中对应的视图图标上。这会创建该图层的副本以填充视图;例如:

  1. 12 要将矢量图层添加到新视图,请在数据管理器 中右键单击文件名,然后选择在新视图中打开选定数据集
  2. 13 每次打开新的矢量文件时,该图层都会出现在图层管理器 的顶部并成为选中的图层。选中图层的目的在于允许您仅对该图层应用显示增强(透明度等),而不影响其他图层。要选择图层,请在图层管理器 中单击其名称。

添加矢量

如果您使用 shapefile 或 ENVI 矢量文件 (EVF),可以将自己的矢量添加到工作中。

  1. 1 在活动图层中,点击工具栏上的矢量下拉菜单并选择创建矢量,然后在要添加矢量的影像上点击。

  1. 2 通过单击并拖拽来绘制多边形或折线,或者间隔单击以逐个添加顶点。
  2. 3 矢量绘制完毕后,使用右键单击菜单选项接受矢量。
  3. 4 多点矢量只能添加到被指定为多点文件的矢量文件中。
  4. 5 通过选择矢量并使用右键单击菜单选项来组合或取消组合矢量。

编辑具有关联属性表的矢量图层不会更改现有的属性值。根据您进行的编辑类型,这可能意味着该记录中的值不再有效。

编辑或删除矢量

您只能编辑或删除 shapefile 和 EVF 中的矢量。选项包括:删除记录、移动折线或多边形顶点、添加或删除折线或多边形顶点、组合或取消组合记录、连接折线、合并或分割折线或多边形、平滑多边形、矩形化多边形以及移除多边形孔洞。

  1. 1 选择 Roads.shp,点击工具栏上的矢量下拉菜单并选择编辑矢量
  2. 2 如果您想向 shapefile 添加更多折线,现在可以操作。
  3. 3 点击工具栏上的矢量下拉菜单并选择编辑顶点
  4. 4 在图层管理器 中选中 Roads.shp 的情况下,点击您绘制的某条折线的一个顶点。

请注意,在上面的示例中,顶点没有完全与下方的道路对齐。激活编辑顶点后,您可以点击折线内的一个顶点并手动调整它,以更准确地显示目标地物。

  1. 5 对编辑结果满意后,右键单击并选择接受更改

使用右键菜单为选定的图层选择编辑或删除选项。

更改矢量属性

更改属性适用于所有支持的矢量类型。矢量图层的属性显示在工具箱 下方。

您可以直接在此面板中编辑基本属性。

要编辑给定属性的显示属性,请在图层管理器 中右键单击矢量图层并选择属性。在矢量属性 对话框中,从属性下拉列表中选择一个属性名称。矢量属性 对话框左侧的属性值部分列出了该属性的唯一值。

  • 使用顶部表格编辑选定属性的显示属性。
  • 当您首次显示矢量文件时,矢量属性 对话框会为所有属性分配默认的红色填充颜色。
  • 要更改所选属性所有值的填充颜色,请从颜色表下拉列表中选择纯色选项。或者,根据需要选择不同的颜色选项。例如,您可以给不同类型的道路(如土路、多车道等)分配不同的颜色。当前选定颜色表的预览显示在下拉列表下方。
  • 要更改所选属性所有值的符号,请选择点样式下拉列表,然后选择所需的符号。
  • 对于多边形 shapefile,如果填充内部属性设置为,并且您从颜色表下拉列表中选择了一个选项(除了纯色),顶部表格中的线颜色属性会自动设置为黑色。您可以根据需要更改它。如果填充内部属性设置为,并且您选择了颜色表,则多边形的轮廓将根据所选颜色表着色。
  • 如果多边形 shapefile 的填充内部属性设置为,当您使用平移飞行旋转 工具在显示中移动时,填充会暂时禁用。
  • 如果属性有超过 256 个唯一值,所选颜色表会在属性数量之间平均分配,形成颜色渐变。如果您希望颜色表每迭代 256 个唯一值就重复一次,请选择循环选项。
  • 点击应用将更改提交到影像窗口。

矢量转要素计数

使用矢量转要素计数工具将矢量记录转换为要素计数图层。每个矢量记录的质心将确定要素计数的位置。

  1. 1 在工具箱 中,展开矢量文件夹并双击矢量转要素计数工具。

出现将矢量记录转换为要素计数对话框。

  1. 2 点击输入栅格字段旁边的浏览按钮,选择 LasVegasMay2020.dat。此栅格将决定输出要素计数图层的基础投影。
  2. 3 点击输入矢量字段旁边的浏览按钮。
  3. 4 转到 ENVI 安装路径中的 "natural_earth_vectors" 目录,选择 airports.shp 文件。

Windows: C:\Program Files\NV5\ENVIxx\data\natural_earth_vectors (xx 是版本号)
Linux: /user/local/NV5/envixx/data/natural_earth_vectors
Mac:  /Applications/NV5/envixx/data/natural_earth_vectors

  1. 5 点击打开

ENVI 支持 (.evf, .shp, .json, .geojson 和 .gpkg) 作为输入矢量。

可选操作

  • 要素列属性名称字段中,指定包含要素类别的列的属性名称。
  • 描述列属性名称字段中,指定包含描述的列的属性名称。
  • 采集时间列属性名称字段中,指定包含采集时间的列的属性名称。

要素列属性名称

在要素列属性名称字段中,指定包含要素类别的列的属性名称。这有助于识别矢量数据中的特定要素。确保属性名称是唯一且具有描述性的。

使用清晰一致的属性名称将使管理和编辑矢量数据变得更加容易。这种做法在处理大型数据集时尤其有用。

描述列属性名称

在描述列属性名称字段中,指定包含描述的列的属性名称。此字段是可选的,但可以为矢量数据提供额外的上下文信息。使用能清晰传达列用途的描述性名称。

包含描述可以帮助他人更容易地理解数据。它也有助于数据管理和文档记录。

采集时间列属性名称

在采集时间列属性名称字段中,指定包含采集时间的列的属性名称。此信息对于追踪数据收集时间至关重要。确保属性名称清晰并遵循一致的命名约定。

准确的采集时间数据对于时间敏感的项目至关重要。它有助于分析随时间变化的趋势。

  1. 4 在输出要素计数字段中,输入输出文件名 airport_featurecount.efc
  2. 5 要在未来的 ENVI 会话中重用这些任务设置,请将其保存到文件。点击向下箭头并选择保存参数值,然后指定保存位置和文件名。要应用已保存的任务设置,请点击向下箭头并选择恢复参数值,然后选择您之前存储设置的文件。

某些参数类型(如栅格、矢量和 ROI)不会随文件一起保存。

  1. 6 点击确定
  2. 7 处理完成后,从 ENVI 主菜单栏中选择文件 > 打开,导航到保存要素计数文件的位置,并选择 airport_featurecount.efc
  3. 8 当数据选择对话框提示您为要素计数文件选择关联的栅格时,选择 LasVegasMay2020.dat

ENVI 创建一个要素计数图层并将其显示在输入栅格之上。它会打开要素计数工具,以便您可以查看要素计数图层的属性。

本快速指南到此结束。更多信息,请参阅文档中心中的 矢量(在新标签页中打开)主题。

您的意见对我们很重要,请花几分钟时间填写我们的快速指南反馈(在新标签页中打开)表。

© 2025 NV5 Geospatial Solutions, Inc. 此信息不受《国际武器贸易条例》(ITAR) 或《出口管理条例》(EAR) 的控制。