(长期更新)《零基础入门 ArcGIS(ArcScene) 》实验七----城市三维建模与分析(超超超详细!!!)

news2025/1/9 11:41:50

        城市三维建模与分析

        三维城市模型已经成为一种非常普遍的地理空间数据资源,成为城市的必需品,对城市能化管理至关重要。语义信息丰富的三维城市模型可以有效实现不同领域数据与IS相信息的高层次集成及互操作,从而在城市规划、环境模拟、应急响应和辅助决策等众多领域公挥作用、利用城市的三维景观模型进行城市基础设施、规划等方面的应用分析,可以直接指导和服务于城市的各方面规划和建设,最终为城市基础设施布局更加合理、人居环境更加美好经济社会更好更快发展而服务。

目录

7.1 实验内容及目的

7.1.1 实验内容

7.1.2 实验目的

7.2解决方案

7.3 操作流程

7.3.1 环境设置

7.3.2 三维显示

(1)计算字段:

(2)拉伸显示:

(3)设置点符号:

7.3.3 计算 DEM

(1)创建 TIN:

(2)TIN转栅格:

(3)设置栅格值:

7.3.4 根据条件进行区域计算

(1)进行视域分析:

(2)进行栅格转面:

(3)筛选可视区域:

(3)筛选可视区域:

(4)得到可视区域:

(5)生成天际线:

(6)天际线转面:

(7)计算理想可视非建筑物区域:

(8)进行区域融合:

(9)计算可视道路长度:

7.3.5 绘制天际线

(1)二维视点转为三维点数据:

(2)计算天际线数据:

(3)绘制天际线图:

7.3.6 计算建筑面积

(1)计算天际线有效边界:

(2)找出最高最低建筑:

(3)计算最高最低建筑面积之和:

7.4实验心得


7.1 实验内容及目的


7.1.1 实验内容


        本实验通过城区三维建模,初步认识城市三维建模、三维空间形态分析方法。利用某城区二维平面图,通过设置建筑物高度属性值构建城市三维模型,在此基础上利用ArcScene中的视域工具进行三维空间形态分析与统计计算,包括不考虑视野极限的可视区域、视野范围内非建筑物区域、视野范围内可见道路的长度、天际线(图)、可视建筑物统计。


(1)假设楼层均高为3m,请按照城市建筑物的楼层数字段(Floor),计算建筑物总体高度字段(Height),并以 Height 字段对 building数据进行三维拉伸显示。同时,按照观景点高度字段(Height),对观景点进行三维显示。
(2)根据地平面海拔和建筑物高度属性,构建该城市的DEM数据。
(3)根据游客的视野范围(视力极限距离为500m),分别计算不考虑视野极限的可视区域、视野范围内非建筑面积和视野范围内可见道路的长度。
(4)基于视点提取天际线和天际线图。
(5)天际线的有效边界由建筑物顶部与天空交接的边界线,计算其总长度,计算边界对应的建筑中最高和最低建筑的总面积之和。


7.1.2 实验目的


(1)掌握利用计算器进行赋值,对平面图形进行三维显示的方法
(2)熟悉构建TIN,TIN转换成 DEM 的操作过程。
(3)掌握ArcScene中的视域工具和栅格与面数据转换的方法;掌握分析工具相交、擦除交集制表等的使用。
(4)掌握二维点数据转为三维点数据的常用方法;掌握天际线的内涵并绘制天际线和转为天际线图的方法。
(5)掌握基于属性数据中的字段进行汇总统计。

7.2解决方案

        对building数据属性中增加字段,进行三维拉伸显示。根据字段Height,将二维视点转为三维点数据,计算该视点位置处的天际线数据,以视点为中心,用极坐标系绘制出天际线图。计算该城市的DEM数据,并绘制专题图。根据游客视线距离初步计算不考虑视野极限的可视区、视野范围内非建筑面积和视野范围内可见道路的长度。计算天际线的有效边界的总长度,找出符合要求的建筑物,计算最高最低建筑的总建筑面积。

城市空间三维研究的逻辑过程主要包括以下内容:
(1)数据准备。确定需要哪些数据作为输入,即building和point 数据。
区域计算
(2)属性处理。修改字段和三维拉伸显示。
(3)计算该城市的DEM数据。构建TIN,利用TIN转栅格I具得到 DEM 数据。
(4)根据条件进行区域计算。计算出不考虑视野极限的可视区域、视野范围内非建筑面积和视野范围内可见道路的长度。

(5)绘制天际线。计算天际线数据,绘制天际线图。
(6)建筑物处理。找出天际线有效边界、最高和最低建筑,计算楼层面积之和。

7.3 操作流程


7.3.1 环境设置

        在ArcScene 主菜单中点击【地理处理】--【环境设置】。设置工作空间、处理范围等,像元大小设为1,环境设置如下图所示:

7.3.2 三维显示


        对building属性数据增加字段“Height”,计算建筑物总体高度字段“Height”,并以“Height”字段对 building数据进行三维拉伸显示。双击point点图层符号,在弹出的对话框中点击【符号编辑】进行设置,完成点的拉伸。


(1)计算字段:

        右键点击“building"图层,点击【打开属性表】-【选表项】→【添加字段】,弹出“添加字段”对话框,在“名称”文本框中填入“Height”,点击【确定】。

        右键点击“Height”字段,点击【字段计算器】,利用字段计算器对“Height”字段进行赋值,点击【确定】。


(2)拉伸显示:

右键点击“building”图层,打开“图层属性”,选择“拉伸”选项卡,填写高度函数,进行拉伸显示。

拉伸结果如下图所示。

(3)设置点符号:

        双击 point点符号,弹出“符号选择器”对话框,点击【符号编辑】,弹出“符号属性编辑
器”,“类型”设置为“3D简单标记符号”,选择“3D放置”选项卡,把Z坐标的偏移设为“195”如下图所示

点击【确定】。图形变化如下图所示。

7.3.3 计算 DEM


        由于DEM图像为栅格图像,而原始数据为矢量图像,首先基于building数据构建TIN.基于合理采样转成栅格数据,然后利用栅格计算器获取满足一定条件的DEM。

(1)创建 TIN:

        点击 ArcToolbox中的【3D Analyst】--【数据管理】--【TIN】-【创建 TIN】“输出TIN”选择一个合适的路径,“输人要素类”选择“building”。

输出结果如下图所示:

(2)TIN转栅格:

        点击ArcToolbox中的【3DAnalyst】-【转换】-【由TIN转出】-【TIN转栅格】。“采样距离(可选)”设置为“CELLSIZE1”。

(3)设置栅格值:

        点击ArcToolbox中的【空间分析】--【地图代数】-【栅格计算器】,栅格
计算器设置如下图所示:

点击【确定】。

颜色很刺眼的话可以改成温和点的颜色

7.3.4 根据条件进行区域计算


        首先将完成的DEM数据利用视域工具求出不限视野范围的可视区域并转为矢量面要素,再筛选出可见区域,之后擦除建筑物,即可得到非建筑物区域。然后利用 building、poin原始数据绘制天际线,并进行矢量化操作。最后将两部分区域叠加,即可得到在视野范围内能看到的、非建筑物区域的面积,采用交集制表将天际线转成的面与道路取交集得到一个表。

(1)进行视域分析:

        点击ArcToolbox中的【3DAnalyst】-【可见性】--【视域】,视域设置如下图所示:

点击【确定】。

(2)进行栅格转面:

        点击ArcToolbox中的【转换工具】--【出栅格转出】一【栅格转面】格转面设置如下图所示:

点击【确定】。输出结果如下图所示。

(3)筛选可视区域:

        点击ArcToolbox中的【分析工具】【提取分析】--【筛选】,点击“表达式(可选)”文本框右边的圆按钮,弹出“査询构建器”对话框,选择“GRIDCODE”,点击【获取唯一值】,选择“1”.

点击【确定】,关闭对话框,如下图所示。

(3)筛选可视区域:

        点击AreToolbox中的【分析工具】【提取分析】-【筛选】,点击“表达式(可选)”文本框右边的圆按钮,弹出“查询构建器”对话框,选择“GRIDCODE”,点击【获取唯一值】,选择“1”,点击【确定】

(4)得到可视区域:

        点击 AreToolbox中的【分析工具】->【叠加分析】-【相交】,“输入要素”选择可视区域和建筑物数据,如下图所示:

结果如图:

        点击 ArcToolbox中的【分析工具】【叠加分析】-【擦除】,“输人要素”为可视区域,“擦除要素”为可视建筑物,点击【确定】。

(5)生成天际线:

点击ArcToolbox中的【3DAnalyst】--【可见性】-【天际线】,在弹出的对话框中进行如下图所示的设置。

产生如下图所示结果


(6)天际线转面:

        点击ArcToolbox中的【数据管理工具】--【要素】-【要素转面】,在弹出的对话框中进行如下图所示设置


(7)计算理想可视非建筑物区域:

        点击ArcToolbox中的【分析工具】-【叠加分析】->【相交】输入非建筑物和天际线数据,即可得到在视野范围内能够看到的非建筑物区域,如下图所示。

(8)进行区域融合:

        点击ArcScene的【地理处理】-【融合】,弹出“融合”对话框,融合设置如下图所示:

点击【确定】。

        右键点击生成的图层,打开属性表,新建面积字段,点击计算几何,计算该可视区域的面积,配置如下:

面积计算结果:

(9)计算可视道路长度:

        点击ArcToolbox中的【分析工具】-【统计分析】-【交集制表】“区域字段”设置成“Shape_Area”,如下图所示。

在Polygon_Skyline中添加Shape_Area字段

并计算:

右键点击生成的图层,打开属性表,查看数值,如下图所示:

7.3.5 绘制天际线


        当行人在城市街道上行走时,其视线会受到周边建筑的遮挡,在建筑顶部形成与天空相接的轮廓边界,即天际线,。天际线代表了视线所能看到地物的最高边界。
根据Height字段,将二维视点转为三维点数据,计算该视点位置处的天际线数据,并以该视点为中心,用极坐标系绘制出天际线图。

(1)二维视点转为三维点数据:

        点击【3DAnalyst】-【3D要素】->【依据属性实现要素转D],实现三维要素的转换,设置如下图所示。

(2)计算天际线数据:

        点击ArcToolbox中的【3DAnalyst】-【可见性】-【天际线】,“输人图7.32 数据处理流程观察点要素”设置为“3Dpoint”,“输人要素(可选)”选择“building”数据,方位角增量设为2’。

点击【确定】,结果如下图所示。

(3)绘制天际线图:

        点击ArcToolbox中的【3D Analyst】--【可见性】【天际线图】。“输人观察点要素”选择“point”数据,“输入线要素”选择天际线数据“3Dpoint_Skyline”。

输出结果如下图所示:

7.3.6 计算建筑面积


        利用天际线有效边界的总长度,找出符合要求的建筑物,计算最高和最低建筑的总建筑面积。


(1)计算天际线有效边界:

        点击ArcToolbox中的【分析工具】-【叠加分析】-【相交】。“输入要素”选择建筑物数据和天际线数据:

输出结果如下图所示:

        右键点击实际天际线图层,打开属性表,选中“Shape_Leng"字段,右键点击该字段,选择【统计】,统计数据结果如下图所示。

(2)找出最高最低建筑:

        在ArcScene主菜单中点击【选择】--【按位置选择】。“目标图层”选择“building”数据,“源图层”选择实际天际线数据“valid_Skyline”

输出结果如下图所示。

右键点击“building”图层,选择【数据】-【导出数据】,设置好保存路径,如下图所示

右键点击导出数据图层,打开属性表,选中Height字段,右键点击该字、选择【统计】统计数据结果下图所示,可以看到最大值为75,最小值为0.

(3)计算最高最低建筑面积之和:

        点击ArcToolbox中【分析工具】-【统计分析】-【汇总统计数据】,对面积字段进行求和统计,以Floor字段进行案例分组(图7.46).结果如下表所示。最高建筑物共65层,每层面积约为2730.69m’,总面积约为177494.85m。最低建筑物仅有1层,每层面积平均约为2308.48m,共有12栋,总面积约为27701.76m2

7.4实验心得

        首先,做这个实验用的是ArcScene,而不是ArcMap,不然后面的操作做不了,我也是用ArcMap用了之和才发现的。然后,这个实验我做着的话感觉是少了点数据,一些字段缺失了,我就认为这些字段是面积,所以就自己加了字段并且计算了。所以我这做法仅供参考,大家看看就行。

        实验七结束了,小专栏《零基础入门 ArcGIS(ArcScene) 》也结束了,详细做完以上七个实验,您对arcgis的操作已经非常流畅了,后面我也许还会更新其他关于arcgis的内容,大家敬请期待。

感谢您的三连!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2273766.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBootWeb 登录认证(day12)

登录功能 基本信息 请求参数 参数格式:application/json 请求数据样例: 响应数据 参数格式:application/json 响应数据样例: Slf4j RestController public class LoginController {Autowiredpriva…

夯实前端基础之HTML篇

知识点概览 HTML部分 1. DOM和BOM有什么区别? DOM(Document Object Model) 当网页被加载时,浏览器会创建页面的对象文档模型,HTML DOM 模型被结构化为对象树 用途: 主要用于网页内容的动态修改和交互&…

UI自动化测试保姆级教程--pytest详解(精简易懂)

欢迎来到啊妮莫的学习小屋 别让过去的悲伤,毁掉当下的快乐一《借东西的小人阿莉埃蒂》 简介 pytest是一个用于Python的测试框架, 支持简单的单元测试和复杂的功能测试. 和Python自带的UnitTest框架类似, 但是相比于UnitTest更加简洁, 效率更高. 特点 非常容易上手…

有序数据中插入不确定数据保证数据插入的位置顺序正确排序

解决有序数据中插入不确定数据保证数据插入的位置顺序正确排序 前言 java 数据库中存储自增id 有序的数据, 前端页面基于 id 5和 6 之间新增一条数据,在 id 6 和 7之间新增 2条,或者更复杂的场景,后台接口如何保存数据使得页面数…

基于 Apache Commons Pool 实现的 gRPC 连接池管理类 GrpcChannelPool 性能分析与优化

基于 Apache Commons Pool 实现的 gRPC 连接池管理类 GrpcChannelPool 性能分析与优化 1. 输出关键信息的代码示例 日志记录方法 使用以下代码记录连接池的关键信息,帮助分析连接池的状态和性能瓶颈: import org.apache.commons.pool2.impl.GenericO…

不同方式获取音频时长 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集,持续增加中。 需要更多数据资源和技术解决方案,知识星球: “DataBall - X 数据球(free)” -------------------------------------------------------------…

在 C# 中显示动画 GIF 并在运行时更改它们

您可以通过将按钮、图片框、标签或其他控件的Image属性设置为 GIF 文件 来显示动画 GIF 。(如果您在窗体的BackgroundImage属性中显示一个,则不会获得动画。) 有几种方法可以在运行时更改 GIF。 首先,您可以将 GIF 添加为资源。…

Element-plus、Element-ui之Tree 树形控件回显Bug问题。

需求&#xff1a;提交时&#xff0c;需要把选中状态和半选中状态 的数据id提交。如图所示&#xff1a; 数据回显时&#xff0c;会出现代码如下&#xff1a; <template><el-tree ref"treeRef" :data"data" show-checkbox node-key"id" …

【江协STM32】9-1/2/3 USART串口协议、USART外设、串口发送串口发送+接收

1. 通信接口 通信的目的&#xff1a;将一个设备的数据传送到另一个设备&#xff0c;扩展硬件系统通信协议&#xff1a;制定通信的规则&#xff0c;通信双方按照协议规则进行数据收发全双工&#xff1a;指通信双方能够同时进行双向通信。发送线路和接收线路互不影响&#xff0c…

小程序租赁系统开发的优势与应用前景分析

内容概要 小程序租赁系统是一种新兴的数字化解决方案&#xff0c;旨在为用户提供更加便捷与高效的租赁服务。它通常包括一系列功能&#xff0c;如在线浏览、即时预定、支付功能以及用户反馈机制。这些系统在使用上极为友好&#xff0c;让用户能够轻松选择所需的商品或服务&…

25/1/8 算法笔记<强化学习> GYM环境

前几天花了好多时间在装各个仿真环境上&#xff0c;有V-rep,Pybullet,unity的Ml-agent,很多一大堆&#xff0c;好多好多问题差点逼疯我&#xff0c;可能就pybullet能玩一点&#xff0c;到之后学了机器人我再来玩它&#xff0c;最后的最后&#xff0c;我发现还得是我的gym&#…

学习随记:word2vec中归一化处理的作用

答案来自ai&#xff0c;直接复用为参考&#xff1a; 向量归一化的好处 将向量进行归一化&#xff0c;使其模长为 1&#xff08;即投射到单位圆/单位球上&#xff09;&#xff0c;在许多情况下具有实际意义和计算优势。以下是归一化的主要好处和原因&#xff1a; 1. 提高数值稳…

【C++】B2108 图像模糊处理

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 &#x1f4af;前言&#x1f4af;题目描述题目内容输入格式输出格式示例输入&#xff1a;输出&#xff1a; &#x1f4af;题目分析问题拆解 &#x1f4af;我的做法代码实现代码分析 &#x1f4af;老师的做法…

selenium+pyqt5自动化工具总结

说明&#xff1a;本工具是&#xff0c;操作外部google浏览器、selenium是无法操作qt界面中嵌套的浏览器的&#xff0c; 工具在后面 1. 代码结构 pycharm打开的文件下&#xff0c;再写一个子文件&#xff0c;文件导入的时候把子文件名带上 这样就可以在 外层使用命令 pyinst…

经典多模态模型CLIP - 直观且详尽的解释

对比语言-图像预训练&#xff08;CLIP&#xff09;&#xff0c;这是一种创新的多模态建模策略&#xff0c;能够创建视觉和语言的联合表示。CLIP 的效果非常出色&#xff0c;可以用于构建高度特定且性能卓越的分类器&#xff0c;而无需任何训练数据。本文将深入探讨其理论基础&a…

新时期下k8s 网络插件calico 安装

1、k8s master节点初始化完毕以后一直处于notreadey状态&#xff0c;一直怀疑是安装有问题或者是初始化有问题&#xff08;当然&#xff0c;如果真有问题要先解决这些问题&#xff09;&#xff0c;经过不断探索才发现是网络插件没有安装导致的&#xff0c;根据建议安装calico插…

【图像加密解密】Logistic混沌映射的彩色图像加密算法复现(含相关性检验)【Matlab完整源码 1期】

1、说明 本文给出详细完整代码、完整的实验报告和PPT。 环境&#xff1a;MATLAB2019a 复现文献&#xff1a;[1]黄硕.基于改进的Logistic混沌映射彩色图像加密算法[J].河南工程学院学报(自然科学版),2015,27(02):63-67. 主要目的是为了快速了解何为混沌序列、混沌序列产生、…

[AUTOSAR 基础入门] - RTE虚拟总线详解

文章目录 一、什么是RTE二、RTE的作用三、RTE对Runnables的运行支撑四、RTE与通信4.1. RTE – ECU之间通信4.2. RTE - Sender/Receiver 通信4.2.1 不使用队列&#xff08;直接访问&#xff09;4.2.2 不使用队列&#xff08;缓存访问&#xff09;4.2.3 使用队列 4.3 RTE - Clien…

Linux下文件操作相关接口

文章目录 一 文件是什么普通数据文件 二 文件是谁打开的进程用户 三 进程打开文件的相关的接口c语言标准库相关文件接口1. fopen 函数2. fread 函数3. fwrite 函数4. fclose 函数5. fseek 函数 linux系统调用接口1. open 系统调用2. creat 系统调用3. read 系统调用4. write 系…

用Python实现简单的任务自动化

目录 1. 自动发送邮件提醒 2. 自动备份文件 3. 自动下载网页内容 总结 在现代工作和生活中,任务自动化可以极大地提高效率和准确性。Python,作为一种功能强大且易于学习的编程语言,是实现任务自动化的理想选择。本文将通过几个简单而实用的案例,展示如何用Python实现任…