您的当前位置:首页正文

ARCGIS-空间分析-实习五说明

来源:画鸵萌宠网
城市建筑日照分析

1. 背景

随着城市建筑密度越来越大,建筑物的日照规范也被纳入城市规划的指标之中,一方面要衡量现有建筑是否符合规范,另一方面又要对未来城市规划提供参考依据.应用GIS空间分析方法可以方便的找出不符合建筑日照规范的建筑。

2. 数据

(1) 某一城区建筑数据buildings。shp; (2) 地块单元数据parcel.shp.

图1. 建筑数据(左)和地块单元数据(右)

3. 要求

(1) 计算该地区各个单元的容积率

容积率建筑面积/用地面积 (公式1) 式中,建筑面积为各楼层建筑面积之和;用地面积为各地块单元(parcels。shp)面积。 (2) 请找出不符合国家规定日照标准的建筑。

我国建筑日照标准有如下规定:一个建筑底层日照要至少满足在冬至这一天,在12:00-14:00能接受到太阳照射.已知该地区纬度¢为32°,太阳赤纬计算公式为: 0.006894-0.399512cos0.072075sin-0.006799cos20.00089sin2 (公式2)式中,θ为日角,即2t0,t0=N-1,N为积日,即为日期在年内的顺序号(1

365.2422月1日为1,以此类推,非闰年的12月31日为365)。 时角t为

t=(s+f/60—12)*15 (公式3) 式中,s为时,f为分。 太阳高度角h,即

harcsin(sinsincoscoscost) (公式4) 太阳方位角A(方位角是以正南方向为0,顺时针为正,逆时针为负),即

Aarccossinhsinsin/coshcos (公式5) (3) 注意:弧度与角度的转换(在三角函数中统一使用弧度)

4. 工作流程

⑴ 计算容积率

根据给定的容积率计算公式,需要计算各地块的面积和地块内的建筑物的建筑总面积,而地块内建筑物的建筑总面积又与每个建筑物的建筑面积相关.因此,首先计算每个建筑物的建筑面积,然后将不同建筑物标识到其所属的地块内,以此得到地块内的建筑物的总建筑面积.同时,计算出各个地块的面积,依据公式1计算得到地块的容积率. ⑵找出不符合日照标准的建筑

在ArcGIS 10的三维分析工具中,提供了阴影分析的功能,该分析工具的光源为点状光源,而本例的太阳光源属于平行光光源,因此该阴影分析的功能无法满足本例的需要.ArcGIS提供的山体阴影工具,模拟的是太阳平行光源,可以用于本例的分析.因此,采用山体阴影工具(Hillshade)进行日照分析。

要提取太阳在规定时间内、不同方位角生成的建筑物阴影,必须获得建筑物的高度.因此,① 将矢量建筑物数据转为栅格,属性为建筑物高度.② 由于建筑物是体模型,在空间上具有一定的宽度,如果直接对建筑物提取山体阴影会造成判断错误。例如假设建筑物A与建筑物B在空间上存在阴影遮挡(即A挡住了B),则A在B向阳向的前方,B的房顶会遮盖住A的阴影,给遮蔽判断带来困难,如下图所示:

图2. 投影缺失(左)和正确情况(右)

因此,为解决这个问题,首先需要提取建筑物的背光面高度数据,由此提取[12:00 — 14:00]这段时间的“山体阴影”,并与建筑物进行叠加分析,从而判断建筑物是否满足日照标准。

要判断12:00 – 14:00建筑物的遮挡情况,还需要对太阳高度和角度的变化逐时刻模拟太阳日照,这是一个积分过程,微分时刻划分的越细,计算量越大,工作越复杂.在保证结果正确性的前提下,为了提高效率,我们只计算3个时刻(即12:00、13:00、14:00)的日照情况,如果这3个时刻都没有遮挡,则说明建筑物满足日照要求。 最后通过分析阴影与建筑物的空间叠加关系,找出不符合日照标准的建筑物。 工作流程图如下:

图3。 工作流程图

5. 操作步骤

⑴ 求解地块容积率。 ① 计算地块用地面积。

方法一:选择【空间统计工具】|【工具】}【计算面积】工具,打开对话框如下图:

图4. 面积计算工具对话框

图5。 parcel_area属性表及面积计算结果

方法二:打开parcel文件属性表,选择add field命令,如下图:

图6。 parcel属性表add field命令

添加“area”字段,设置“字段类型”为double。右键该字段名,在菜单中选择【calculate geometry】命令

图7。 选择calculate geometry命令

图8. 计算结果

② 计算各建筑物的总面积(建筑总面积=每层建筑面积×楼层数)。

打开buildings属性表,新建一个双精度字段“T_area”表示建筑物总面积(方法同上),右键该字段,选择【filed calculator】命令,在对话框中输入公式:[FLOOR]*[area],得到建筑物总面积,如下图:

图9. field calculator对话框及总面积计算结果

③ 标识各个建筑所属地块,便于下一步计算各个地块内的建筑总面积。 选择【分析工具】|【叠加分析】|【标识】工具,打开对话框如图:

图10。 Identity工具对话框

输入要素:buildings; 标识要素:parcel;

输出要素类:buildings_ID; 连接属性:ALL;

其它参数选择默认,生产结果属性表如图:

图11。 标识结果

④ 通过建筑物所属地块的ID属性来统计每个地块内的总建筑面积。

打开building_ID的属性表,右击ID_1字段 ,选择【summarize】命令,打开对话框及输出结果如图:

图12. 汇总工具对话框及汇总结果

⑤ 关联表Sum_Area和parcel_area的属性表.

右键parcel_area(或parcel)图层,选择【连接和关联】|【连接】工具,打开工具对话框如图:

图13。 连接工具对话框

设置parcel_area(或parcel)的ID字段和表Sum_Area的ID_1字段进行关联操作。在提示是否创建索引的对话框选择“是”。

图14。 关联结果

⑥ 计算每个地块的容积率

在parcel_area(或parcel)的属性表中,新建双精度字段Rate;右键该字段选择【field calculator】工具,输出公式:[Sum_Area。Sum_T_area]/[parcel_area.F_AREA](或[parcel。area]),计算结果就是容积率。计算完成后,右击parcel_area图层,选择【连接和关联】|【移除连接】|【Sum_Area】。结果如下图:

图15。 地块容积率计算结果

⑵ 找出不符合日照标准的建筑。

1) 将buildings.shp转化为栅格数据。选择【convention Tools】|【To Raster】|【Polygon

To Raster】工具,打开工具对话框,如图:

图16。 面转栅格对话框 输入要素:buildings; 值字段:height; 输出栅格:buildings_g; 像元大小:1

其他参数默认设置,点击确定,生成栅格数据,如图:

图17. 建筑物栅格数据

2) 对于上面栅格数据,须将NoData转为数值0,否则获得的阴影数据将不完整。 选择【spaitial analyst tools】|【reclass】|【reclassify】工具, 输入栅格:buildings_g; 重分类字段:value;

将NoData的值改为0,其它值保持不变; 输出栅格:dem_buildings。

图18. 重分类结果

3) 分别根据给定的公式,计算12:00、13:00和14:00这3个时间点太阳的高度角

和太阳方位角(如下表)。

表1。 太阳位置时刻表

时间 高度角 方位角 ArcGIS中的方位角 * 角度单位为°。

12:00 34。75197 0 180 13:00 32.92049 16。4569 196.4569 14:00 27.75121 31.2727 211。2727 4) 假设在t0时刻太阳的方位角为A,则建筑物在t0时刻的向光面坡向为[A-90,A+90].

依据此原理,分别提取不同时刻的建筑物背光面轮廓.(下面说明12:00的背光面轮廓提取步骤)。 选择【spaitial analyst tools】|【surface】|【aspect】工具。打开工具对话框如图。 输入栅格:dem_buildings; 输出栅格:aspect12; 生成坡向数据如图:

图19. 12:00建筑物的坡向数据

5) 选择【spaitial analyst tools】|【map algebra】|【raster calculator】工具。打开工具对话框如下左图. 输入公式:~((\"Aspect12\" >= 90) & (”Aspect12\" 〈= 270)) & (\"Aspect12” >= 0)。计算12:00方位角为180°时建筑物背光面的轮廓。 输出栅格:back12;

图20. 栅格计算器对话框和提取结果

6) 提取建筑物背光面的高度数据。

选择【spaitial analyst tools】|【map algebra】|【raster calculator】工具。输入公式:\"back12\" * ”dem_buildings”。 输出栅格:dem12。

图21。 栅格计算器对话框和12:00建筑物背光面高度提取结果

同样的方法提可以取出13:00和14:00的建筑物背光面轮廓的高度数据:dem13和dem14。

7) 根据3个时间点计算得到的建筑物背光面高度数据,生成hillshade.

选择【spaitial analyst tools】|【surface】|【hillshade】工具。打开工具对话框如图。

图21。 hillshade工具对话框及参数设置

输入栅格:分别为dem12、dem13和dem14;

输出栅格:分别设为hillshade12、hillshade13和hillshade14; “方位角”和“高度角\"参数分别根据不同时刻输入相应的数据;

选择“模拟阴影”选项,输出栅格会同时考虑本地光照的角度和阴影,其中0值表示阴影区域。

所得3个时刻阴影数据分别如下所示:

图22。 12:00时刻的建筑物阴影数据

图23。 13:00时刻的建筑物阴影数据

图24。 14:00时刻的建筑物阴影数据

图25. 局部建筑物与阴影的遮挡关系(虚框为建筑物,黑色为阴影区)

8) 由于获得的hillshade数据中,仅值为0的栅格为建筑物的阴影,为了方便对该时间

段阴影的叠加分析,首先应先将hillshade数据进行【重分类】,对阴影栅格(hillshade值为0)数据,赋值为1,其它数据对应值为0 .

图26。 对hillshade数据重分类结果

然后,利用【raster calculator】将3个时刻的阴影栅格,累加为一个图层sh_all,即建筑物在12:00 – 14:00时段内的阴影范围。其取值分别为0、1、2、3; 值为0的区域属于非阴影区;

值为1的区域说明在某一时刻存在阴影; 值为2的区域说明在其中两个时刻存在阴影; 值为3的区域说明该区域3个时刻都存在阴影;

这里认为凡是值大于0的区域在12:00 ~ 14:00内有建筑物被遮挡。

图27. 阴影区域累加结果

9) 对累积结果进行重分类。

因为阴影区的数值还不统一,所以用【重分类】工具对sh_all数据分类,使“阴影栅格\"为1,非阴影栅格为0。

图28. 阴影区与非阴影区重分类结果

10) 通过矢量包含关系来判断建筑物与阴影的遮挡关系。

所以我们需要将栅格数据转换为矢量面数据。打开上面的栅格文件的属性表,选中值为1

的字段;再选择【转换工具】|【由栅格转出】|【栅格转面】工具,打开对话框如下图:

图29. 栅格转面工具对话框

输出结果如下图:

图30。 转换为矢量后的结果

11) 查询不符合日照标准的建筑物(即质心落在阴影内的建筑物)。 选择菜单栏中的【selection】|【select by location】工具,如下图:

图31. 选择“按位置选择\"工具

该工具对话框如下图:

选择方法:“从以下图层中选择要素” 目标图层:buildings; 源图层:shadow_polygon;

空间选择方法:“目标图层要素的质心在源图层要素内”

图32。 “按位置选择”工具对话框及参数设置

点击确认,生成查询结果,如下图所示,其中高亮框选中区域为被遮挡的建筑物。

图33. 查询结果

12) 将查询结果导出新图层。

右击查询后的buildings图层,选择【数据】|【导出数据】,打开工具对话框,如下图: 输出要素类设置为illegal。

图34。 导出数据对话框

将illegal图层和buildings、parcel数据叠加显示,得到不符合日照法规的建筑物分布情况,如下图:

图35. 不符合日照法规的建筑分布图(高亮建筑为不达标建筑物)

因篇幅问题不能全部显示,请点此查看更多更全内容

Top