DTM 和 DSM 的核心区别在于是否包含了地面上的非地形元素。DTM 关注于裸地地形,而 DSM 则包含了所有地表上的特征,无论是自然形成的还是人为建造的。选择哪种模型取决于具体的应用需求。
Ctrl + F 搜索【以表格显示分区统计】,设置如下:

再将计算出来的分区统计表连接到原来的 Building 上,设置如图:

题目说 “ 基本高度指建筑物底部高程值,本题请计算每栋建筑物范围内 DTM 的平均值,保
留 2 位小数位数 ” ,由此来计算基本高度字段,点击字段计算器选择平均值,并点击确定:

题目说 “ 本项目中的 DTM 和 DSM 数据都是通过雷达数据生成,固有一定的误差。正确的 DTM
应该在建筑物处是平整的,而不是倾斜或者高低起伏。” 所有可以考虑将所计算出的 Bulding 中的 BuildingBM 数据镶嵌至 DTM 中,首先将 BuildingEM 导出为栅格数据:
Ctrl + F 搜索分区统计,设置如图:

复制一遍 DTM 数据,在工具箱中点击【数据管理工具】--【栅格】--【栅格数据集】--【栅格】,将基本高度 数据镶嵌到 DTM 中,具体设置如下:

结果如下:

Ctrl + F 搜索以表格显示分区统计,设置如下:

再将最大高度表格连接到 Building 中,连接设置如下:

字段计算器计算最大高度:

建筑物高度指建筑物本身高度,即最大高度 - 基本高度,所以可以在属性表中计算建筑物高度:

结果:

由于考虑的是建筑物的朝向,所以在环境设置中,将 Building 设置为掩膜:
设置掩膜(Masking)主要用于控制图层的显示或分析范围,帮助用户专注于特定区域的数据处理和可视化。掩膜可以视为一个“遮罩”,它允许你指定哪些部分的数据应该被显示、分析或编辑,而将其他部分隐藏或忽略。

Ctrl + F 搜索坡向,设置如下:

结果如下:

题目要求以下几个建筑物的屋顶形态和朝向:

只需要定位到该建筑物,然后分析坡度即可,最后结果:
序号 | BuildingBM | 屋顶形态 | 屋顶朝向 |
|---|---|---|---|
1 | 2116 | 双坡屋顶 | 西北、东南 |
2 | 2156 | 双坡屋顶 | 北、南 |
3 | 2161 | 四坡屋顶 | 西北、东南、西南、东北 |
4 | 2165 | 双坡屋顶 | 西北、东南 |
5 | 2171 | 四坡屋顶 | 西北、东南、西南、东北 |
Ctrl + F 搜索太阳辐射区域,具体设置如下(重复12遍,计算每个月的辐射总数):



再根据十二个月的晴天天数表,算出每个月的

打开【栅格计算器】,计算每个月份的辐射量:


将每个月的最高最低辐射量填入表中:
月份 | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 |
|---|---|---|---|---|---|---|
低值 | 4.23221 | 5.31081 | 9.62105 | 12.2721 | 12.5558 | 10.005 |
高值 | 39828.1 | 48683.1 | 85742.1 | 106786 | 108503 | 85074.4 |
月份 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 |
低值 | 14.2893 | 14.9097 | 12.184 | 6.18916 | 4.79557 | 3.67597 |
低值 | 123380 | 129046 | 107484 | 56247.5 | 44828.5 | 28946 |
先计算出建筑物的坡度,打开【坡度】工具,设置如下:

通过栅格计算器,将三个条件计算出来:



打开【镶嵌至新栅格】,将三个条件镶嵌至栅格中,以提取可用房屋范围,设置如下:


打开【按掩膜提取工具】,通过前面提取到的可用屋顶范围,提取可用屋顶范围内的太阳辐射,设置如下:

为 Building 添加属性字段【可用面积】,使用【以表格显示分区统计】工具,提取出可用房顶面积总和,设置如下:

将数据连接到 Building 中,然后计算可用面积字段,设置如下:

为 Building 添加属性字段【可用辐射量 8 月】,打开【以表格显示分区统计】工具,提取可用屋顶范围辐射量,设置如下:

连接该表,计算可用辐射量 8 月字段,添加python代码,将可用面积小于25的辐射量设置为0,大于25的设置成8月辐射量,设置如下:
def calculate_radiation(available_area, radiation_august):
if available_area < 25:
return 0
else:
return radiation_august
calculate_radiation(![Building.可用面]!, ![可用辐射量8月:SUM]!)
最后结果:

感谢您的三连!!!