创建 3D 城市绿色空间场景

要创建逼真的城市场景,您需要首先熟悉工程内容并使用 3D 导航工具浏览该区域。

下载并浏览场景

首先,您将下载数据以浏览和编辑 3D 城市场景。

  1. 下载 Learn3DEditing.zip 压缩文件夹。
  2. Microsoft File Explorer,浏览到 C: 驱动器并创建名为 LearnArcGIS 的文件夹。
  3. 在计算机上找到下载的文件,并将其解压缩到已创建的 LearnArcGIS 文件夹。

    提取的 .zip 文件是一个名为 Learn3DEditing 的文件夹。

  4. 打开 Learn_3D_Editing 文件夹,然后双击 Learn_3D_Editing 工程包文件。

    该工程包随即在 ArcGIS Pro 中打开至 Brookside Park Scene

    工程随即打开至布鲁克赛德公园场景。

    接下来,您将熟悉场景内容以及场景内容图层中组织的 2D 和 3D 图层。

  5. 查看内容窗格中的图层。

    “内容”窗格和图层

    场景包同时包含 3D 和 2D 图层。 3D 图层组中的图层表示可以拉伸的 z 感知型数据,并且默认情况下其作为矢量内容放置在此部分下。 在当前场景中,尚未拉伸某些 3D 图层,因此它们显示为 2D 建筑物覆盖区。 2D 图层组中的图层表示非 z 感知型数据。 在此场景中,包括 Landscaped AreasPaved AreaStreet PavementWalkwayPark 图层,这些图层将保留在 2D 中且无需进行拉伸。

  6. 在场景底部的 Navigator 工具上,单击显示完全控制按钮。

    Navigator 工具上的“显示完全控制”按钮

    Navigator 工具将显示 3D 导航功能。

  7. 使用展开的 Navigator 工具在场景中进行导航。
    提示:

    您还可以通过使用鼠标滚轮进行缩放来导航 3D 场景。 按 C 并拖动场景进行平移。 按 V 并拖动场景进行倾斜。

    另一种导航场景的方法是使用书签。

  8. 单击功能区上的地图选项卡。 在导航组中,单击书签,然后选择 Brookside Apartments 书签。

    Brookside Apartments 书签

    该地图随即缩放至一个视点,您可以在该视点处看到公园旁边公寓楼的建筑物覆盖区。

在下一部分中,您将探索多种拉伸公寓楼覆盖区的方法。

拉伸建筑物覆盖区

可以通过多种方法来拉伸建筑物以表示高度。 您可以根据字段或属性指定高度,也可以手动输入高度。

  1. 内容窗格中,单击 Building Footprint Brookside 图层以将其选中。

    在“内容”窗格中选择 Building Footprint Brookside

  2. 在功能区上,单击要素图层选项卡,再单击拉伸组中的类型,然后单击基本高度

    在“拉伸类型”菜单中选择“基本高度”

  3. 拉伸组中,对于字段,选择 Building Height。 对于单位,确保其设置为英尺

    “字段”设置为 Building Height

    该场景随即进行更新,并且 Building Footprint Brookside 图层将显示拉伸到建筑物高度字段中的值的建筑物。

    拉伸到“建筑物高度”字段值的公寓覆盖区

    目前,所有建筑物的默认高度均为 10 英尺。

  4. 内容窗格中,右键单击 Building Footprint Brookside 图层并单击属性表

    属性表

    属性表随即出现。

  5. 找到 Building Height 字段并观察针对每个建筑物列出的值。

    属性表中的 Building Height 字段

    所有建筑物的高度均设置为 10 英尺。

  6. 关闭表。

    接下来,您将通过另一种方法,使用表达式构建器来指定建筑物的高度。

  7. 在功能区的拉伸组中,单击拉伸表达式按钮。

    “拉伸”组中的“拉伸表达式”按钮

    随即显示表达式构建器窗口。

  8. 表达式构建器窗口的表达式文本框中,删除现有文本并键入 5。 单击确定

    “表达式”框中的文本替换为 5

    Building Footprint Brookside 图层随即进行更新以显示所有高度为 5 英尺的建筑物。

    接下来,您将使用程序符号来拉伸和符号化 Building Footprint Brookside 图层,但首先,您将移除现有拉伸设置。

  9. 在功能区的拉伸组中,单击类型,然后单击

    “拉伸类型”设置为“无”

使用程序符号系统

在本部分中,您将使用程序符号来拉伸和符号化公寓楼。

  1. 内容窗格中,单击 Building Footprint Brookside 图层的符号。

    Building Footprint Brookside 图层的符号

    随即显示符号系统窗格。

  2. 符号系统窗格中,单击属性选项卡,然后单击图层选项卡。

    “属性”和“图层”选项卡

  3. 单击实心填充,然后选择程序填充

    “程序符号系统”设置为“程序填充”

  4. 单击规则

    规则按钮

    随即显示选择规则包窗口。

  5. 浏览至已提取的文件夹 Learn_3D_Editing,然后单击 Int_City_2014.rpk

    已提取文件夹中的 Int_City_2014 Rule 包

    符号系统窗格随即进行更新,其中包含 Int_City_2014 的附加参数。

  6. 对于 Type,选择 Apartment Building。 对于 BuildingShape,选择 L-Shaped

    Type 设置为 Apartment Building 并且 BuildingShape 设置为 L-Shaped

  7. 对于 TotalHeight,单击设置属性映射按钮。

    TotalHeight 的“设置属性映射”按钮

    随即显示设置属性映射窗口。

  8. 设置属性映射窗口中,选择 Building Height,然后单击确定

    “设置属性映射”窗口设置为 BLDGHEIGHT

    注:

    符号系统窗格中,设置属性映射按钮将变为蓝色以指示正在使用字段。

  9. 符号系统窗格中,单击自动应用

    “自动应用”按钮

    注:

    启用自动应用后,更改将自动显示在地图上。 如果已禁用自动应用(默认),则每次要查看更改时都必须点击“应用”。

    Building Footprint Brookside 图层随即更新为从规则包派生的程序符号。

    基于程序符号系统规则包符号化的公寓

  10. 探索已更新的场景,并观察规则包如何将不同的屋顶类型和附加参数应用于建筑物覆盖区。
    注:

    或者,在符号系统窗格中更新并修改参数,例如外立面纹理,并观察该参数如何更改场景中的建筑物符号系统。

  11. 快速访问工具栏上,单击保存以保存工程。 当被问及 ArcGIS Pro 版本时,单击

    快速访问工具栏上的保存按钮

在本部分中,您探索了不同的拉伸和符号化 3D 建筑物的方法。 接下来,您将通过向公园添加逼真的 3D 树木来进一步填充您的城市场景。

添加具有预设配置的树木

接下来,您将向使用真实的树样式表示的城市绿色空间场景添加树。

  1. 单击功能区上的地图选项卡。 在导航组中,单击书签,然后选择 Brookside Apartments Overview

    Brookside Apartments Overview 书签

    该场景将返回到整个公园的视图。

  2. 目录窗格中,浏览到 Learn_3D_Editing 文件夹连接。 右键单击 TreesA.lyrx 并选择添加至当前地图

    树木会出现在场景中,并在内容窗格中显示其逼真的符号。

    显示的真实的树

    该图层文件是使用 3D Vegetation - Realistic 系统样式创建的,供教程使用。 请注意,树木显示的高度不同。 该图层的设置以树冠高度属性为基础。

    注:

    要在工程中添加系统样式,请从插入菜单的样式部分单击添加下拉菜单,然后选择希望在工程中使用的样式。

  3. 内容窗格中,右键单击 TreesA 并选择属性表。 找到树冠高度字段。

    树冠高度字段

    该字段用于表示 TreesA 图层。

  4. 关闭表。
  5. 内容窗格中,右键单击 TreesA,然后选择符号系统
  6. 单击按属性变更符号系统按钮。

    “按属性变更符号系统”按钮

  7. 展开尺寸,找到字段属性。

    树冠高度字段

    树冠高度字段中的值用于改变现实树符号的大小。

  8. 保存工程。

您已经创建了一个 3D 城市绿色空间场景,并使用程序符号系统以及以正确高度显示的 3D 真实树木完成了 3D 建筑物的拉伸和符号化。 接下来,您将向公园中心的社区中心建筑物添加 3D 建筑物。


添加 3D 建筑物

设置 3D 城市绿色空间场景后,即可向公园中间的 3D 建筑物添加更多细节。 在创建新的 3D 要素之前,您将需要在 ArcGIS Pro 中配置 3D 编辑环境。

设置常量高程

常量高程平面是一个水平面,可以用作确定诸如建筑物和树木等地理要素高程的参考。 换句话说,它是一个基线,您可以根据它直观地确定要素是高于还是低于常量平面的高程。 它在 3D 编辑中也非常有用,因为它将用作定义要素 z 值的常量。

  1. 在场景底部,指向约束按钮,如有必要,请单击切换按钮以启用此功能。

    确保“启用动态约束”已激活。

  2. 地图选项卡的导航组中,单击书签并选择 Community Center South View

    该场景随即缩放至社区中心大楼的南侧视图。

    社区中心大楼的南侧视图

  3. 可以使用导航器工具浏览社区中心大楼及周边区域。
  4. 在功能区上,单击书签,然后单击 Building Slab 书签。

    该场景随即更新为社区中心大楼的俯视视图。

    社区中心大楼的 Building Slab 书签视图

    您将需要确定建筑物楼板的高程,以在与楼板相同高度处生成常量高程平面。

  5. 在功能区上,单击编辑选项卡,然后在高程组中,单击模式

    “模式”按钮

    模式按钮将以蓝色突出显示,指示常量 Z 模式已激活。

  6. 高程组中,单击从视图获取 Z按钮。 在场景中,单击 Building Slab 要素。

    激活“从视图获取 Z”后,单击 Building Slab 要素。

  7. 高程组中,将显示已单击位置的 z 值。

    “高程”组中的“高程”值

    根据楼板面派生的高程约为 1,300 英尺。 高程值将会有所不同,具体取决于您在楼板上单击的位置。

  8. 高程组中,将单位设置为 m(米)并单击该楼板。

    “单位”设置为米

    以米为单位的高程将更新为大约 400 米。 在本教程中,您将使用 395 米处的常量平面。

  9. 高程组中,将值更新为 395,然后按 Enter 键。

    指定精确的 z 值

    该场景随即进行更新,将在 395 米高程处显示常量高程平面。 常量高程平面将在场景中显示为透明的中灰色叠加。

  10. 可以使用导航工具缩小并倾斜场景,以更好地了解常量高程平面所覆盖区域的范围。

    场景的缩小视图显示了常量高程平面的范围

    这本质上是一个水平面,可以用作确定其他地理要素(例如建筑物和树木)高程的参考。

    常量平面将延伸至建筑物楼板以北,这意味着这些区域位于 395 米处或者低于 395 米,并且楼板以南的区域高于 395 米,因为它们未被该平面覆盖。

您已设置常量高程值。 接下来,您将配置 3D 格网,并在创建新的 3D 建筑物时启用捕捉作为参考线。

配置 3D 格网

在编辑和创建新的 3D 要素之前,生成一个 3D 格网将非常有用,该格网将用作新要素或已更新要素的参考。 接下来,您将设置一个 3D 格网。

  1. 单击书签以返回到 Building Slab 书签。
  2. 在场景底部,单击格网按钮。

    场景底部的“格网”按钮

    3D 格网随即出现在场景中。

    格网随即出现在场景中

  3. 指向格网按钮以查看属性窗格,然后单击设置原点按钮。

    “格网”属性窗格中的“设置原点”按钮

    设置原点已激活。

  4. 激活设置原点后,在场景中,指向并单击 Building Slab 面要素的左下角。

    在要素的左下角设置原点

    由此将设置格网的原点。

  5. 指向格网按钮,然后在格网属性窗格中,设置以下参数:
    • 高程设置为 5 ft。
    • 对于旋转,键入 90
    • 间距设置为 395 m

    “格网”属性窗格参数

    编辑格网现在与 Building Slab 面要素对齐。

    格网与 Building Slab 要素对齐

  6. 保存工程。

向建筑物添加 3D 台阶

在以下步骤中,您将在楼板北侧创建并设计一个矩形混凝土台阶,以提供向下延伸至较低草地区域的附加台阶。 请记住,您已将常量高程值设置为 395 米。 因此,将在此高程处建造新楼板。

  1. 如有必要,请在功能区的地图选项卡上,单击书签,然后单击 Building Slab 书签。
  2. 单击编辑选项卡,然后在要素组中单击创建

    “要素”组中的“创建”工具

    创建要素窗格随即显示。

  3. 创建要素窗格的 Building Slab 下,单击Building Slab

    “创建要素”窗格中的 Building Slab

  4. 确保工具已激活。

    已选择“面”工具

  5. 在场景底部,单击捕捉按钮以打开捕捉。

    已选择“捕捉已开启”

  6. 指向捕捉按钮,然后确保点将捕捉到最近的点或 LAS 点要素已激活。

    “捕捉”属性窗格中的“点将捕捉到最近的点或 LAS 点要素”按钮

    接下来,您将开始要素构建。

  7. 在场景中,单击楼板左下方的一个点。

    放置在楼板左下方的第一个点

  8. 沿格网向北移动指针,平行于现有楼板,然后单击以放置西北角。

    放置在楼板西北角的第二个点

  9. 沿格网向东移动指针,平行于现有楼板,然后单击以放置第三个角。

    放置在楼板东北角的第三个点

  10. 对于最后一个角,请将指针移向东南角,单击鼠标右键,然后选择添加直角并完成以完成面。

    已选择“添加直角并完成”

    您现在应该拥有一个新的矩形面要素,该要素显示在社区中心上方。

    蓝色矩形包围建筑物

    接下来,您将使用 3D 编辑工具调整该要素,使其不覆盖社区中心。

  11. 编辑选项卡的工具组中,单击移动

    移动工具

    要素上随即出现控点,可用于调整 3D 要素的位置。

    控点随即出现在要素上,用于调整位置。

  12. 单击绿色的 z 控点并向下拖动该要素,避免其与社区中心大楼重叠,然后在原始 Building Slab 要素下方对齐。

    将要素拖动到原始 Building Slab 要素下方

  13. 编辑选项卡的管理编辑内容组中,单击保存

    “编辑”选项卡上的“保存”

  14. 在随即出现的窗口中,单击以将您的编辑内容提交到地理数据库。
  15. 编辑选项卡的选择组中,单击清除以取消选择要素。

    清除

  16. 编辑选项卡的高程组中,单击模式按钮以禁用常量高程模式。
  17. 在场景的底部,单击格网按钮以关闭该格网。

    您的场景现在包含朝向草地区域的附加台阶。

    已向场景添加台阶

  18. 保存工程。
    注:

    您还可以在要素创建中重复上述整个部分,使用动态约束以输入面线段的方向、偏移和距离等。 您可以按 Tab 键以从每个输入框移动到下一个输入框。 对于精度以及对细节的关注非常重要的高精度工作流,建议使用此工作流。


使用多面体纹理编辑

在本部分中,您将探索另一个城市场景,创建新的多面体要素,并添加详细的纹理以创建逼真的 3D 建筑物。

设置一个包装厂场景

要完成此部分,您将激活工程包中的第二个场景 Packing House Scene

  1. 单击 Packing House Scene 选项卡。

    Packing House Scene 选项卡

    该场景随即打开,其中包含影像底图和多个 3D 图层,并缩放至名为 Packing House District 的新零售开发项目。

    场景缩放至 Packing House District。

  2. 单击功能区上的地图选项卡。 在导航组中,单击书签,然后选择 Four

    书签 Four

    该地图将缩放至开发项目中的单个建筑物。

    书签 Four 范围

  3. 在场景底部,单击格网按钮以将其激活。

    “格网”按钮

  4. 指向格网按钮以显示格网属性窗格。
  5. 格网属性窗格中,单击以交互方式设置格网的原点按钮。

    “以交互方式设置格网的原点”按钮

  6. 在影像底图中,指向并单击建筑物的左下角。

    放置建筑物的左下角。

  7. 指向格网按钮,然后在格网属性窗格中,设置以下参数:
    • 间距设置为 8 ft
    • 对于旋转,键入 360
    • 高程设置为 1,337 ft

    “格网属性”窗格设置

    编辑格网现在与建筑物对齐,如影像底图中所示。

  8. 如有必要,请确保启用约束捕捉按钮。

    “约束”和“捕捉”按钮

场景现已配置完毕并准备好创建多面体要素。

创建 3D 多面体要素

接下来,您将使用创建工具在包装厂场景中创建 3D 多面体要素。

  1. 单击功能区上的编辑选项卡。 在要素组中,单击创建
  2. 创建要素窗格中,单击 New_Building

    “创建要素”窗格中的 New Building

  3. 如有必要,请单击创建 3D 几何工具。

    “创建 3D 几何”工具

  4. 指向左下角并单击第一个折点。

    放置在建筑物左下角的第一个折点

  5. 使用捕捉参考线,指向建筑物的右下角并单击以放置第二个折点。

    放置在建筑物右下角的第二个折点

  6. 使用捕捉参考线,指向建筑物的右上角并单击以放置第三个折点。

    放置在右上角的第三个折点

  7. 单击以在左上角放置最后一个折点。

    放置在左上角的最后一个折点

  8. 右键单击路径,然后单击完成

    已选择“完成”

    将构造一个新的 3D 建筑物要素。

    新创建的要素

  9. 在功能区中,单击地图选项卡,然后在导航组中,单击书签,然后单击 Third

    场景范围随即更新,以相对于 Packing House District 中的其他建筑物显示新建筑物要素。

    新建建筑物的 3D 视图

  10. 返回到书签 Four 视图。
  11. 在功能区上,单击编辑。 在工具组中,单击编辑折点

    “编辑折点”工具

    新建筑物的中间将显示一个绿色控点。

    新要素中间的绿色控点

  12. 指向绿色控点并向上拖动,直到高度约为 20 英尺为止。

    修改建筑物高度

    注:

    您还可以在开始拖动折点时在文本框中键入一个值。

  13. 保存编辑内容。
  14. 在场景底部,关闭格网捕捉工具。
  15. 编辑选项卡的管理编辑内容组中,单击保存
  16. 在随即出现的保存编辑内容窗口中,单击以将您的编辑内容提交到地理数据库。

    3D 白色矩形

  17. 保存工程。

编辑多面体结构的纹理

  1. 编辑选项卡的选择组中,单击选择。 单击新创建的 3D 结构。

    选择新要素以进行纹理编辑。

  2. 要素组中,单击修改
  3. 修改要素窗格的修整组下,单击多面体纹理

    “修改要素”窗格中的“多面体纹理”

  4. 单击加载纹理按钮。

    “加载纹理”按钮

    随即出现加载纹理窗口。

  5. 加载纹理窗口中,浏览至 Learn_3D_Editing 文件夹,打开 Textures 文件夹,然后双击 Roof

    Textures 文件夹中的 Roof.jpg

    该图像随即显示在修改要素窗格中。

    纹理将显示在“修改要素”窗格中。

  6. 在场景中,指向建筑物的屋顶,然后单击该屋顶以放置纹理。

    在 3D 要素的屋顶上放置的屋顶纹理

  7. 修改要素窗格中,单击旋转,然后在查看场景时拖动预览以将纹理旋转至所需位置。
    提示:

    三个 HVAC 系统应位于建筑物的北侧。

    旋转纹理,使三个 HVAC 系统的图像指向北。

    提示:

    您还可以使用三种交互式鼠标功能。 使用鼠标左键拖动将进行平移,拖动鼠标滚轮按钮将进行旋转,拖动鼠标右键将进行缩放。

  8. 使用您所学的知识将剩余的两个纹理自行放置到建筑物中。

    已添加至建筑物的纹理

  9. 修改要素窗格中,单击应用
    注:

    您也可以按 F2 以保存更改。

  10. 编辑选项卡的管理编辑内容组中,单击保存。 在随即出现的保存编辑内容窗口中,单击
  11. 选择组中,单击清除
  12. 内容窗格中,选中 Other_Buildings 图层。

    Packing House District 中的其他建筑物随即出现。 构造这些建筑物的过程与您刚刚学习的过程相同。

    两个 3D 建筑物

  13. 保存工程。

在本教程中,您使用多面体编辑工具和纹理创建了一个逼真的建筑物。 在现实世界中,您可能会遇到简单到复杂的建筑物几何和屋顶结构。 以上工作流可用于不同的建筑物类型和形状,仅需要建筑物覆盖区、高度信息和纹理图像。

您可以在教程库中找到更多教程。