SuperMap iClient3D for Plugin 技术文档
三维空间分析  

4     阴影率分析

4.1     概述

阴影率统计分析是指在特定时间段内对被遮挡的物体阴影情况进行分析的活动。SuperMap iClient3D for Plugin提供了阴影率统计分析功能(ShadowQuery),可在三维场景中指定某个区域,根据设置间隔进行自动插值并计算每个点在指定时间段的阴影率,通过分层设色策略显示与分析该区域内的阴影率现象,并支持单点阴影率的查询与分析。

阴影率统计分析可广泛应用在城市规划、建筑物设计、景观分析等方面。比如在城市规划中需要考虑新建建筑是否严重影响周边建筑的光照,查看其影响的区域有多大,如何调整建筑的高度,才不会影响周边建筑的采光。

4.2     主要接口

SuperMap iClient3D for Plugin中阴影率分析类为ShadowQuery类,其方法及属性见下表:

4.1 ShadowQuery类属性列表

返回类型

名称

描述

Number

baseUtcOffset

获取或设置计算太阳位置时所用的地方时与 UTC 的偏移量

DateTime

endTime

获取或设置分析的结束时间。 

GeoRegion3D

queryRegion

获取或设置分析区域 。

Number

spacing

获取或设置分析展示点的间距。

DateTime

startTime

获取或设置分析的开始时间。 

Number

timeInterval

获取或设置时间间隔。

 

4.2 ShadowQuery类方法列表

类型

名称

描述

void

build

执行阴影分析。

void

clear

清除分析结果。

Color

getColorTable

获取当前阴影率对应的颜色表。

Number

getRatioValues

获取阴影率分析的阴影率数值。

Number

getShadowRatio

获取指定位置的阴影率数值。

Color

setColorDictionary

设置阴影率范围及其对应的颜色表。

 

4.3     主要代码

           shadowQuery = new SuperMap.Web.Realspace.ShadowQuery();

           var date = new Date();

           date.setMinutes(0);

           date.setSeconds(0);

           date.setHours(parseInt(startHour));

           //设置阴影率分析的开始时间

           shadowQuery.set_startTime(date);

           date.setHours(parseInt(endHour));

//设置阴影率分析的结束时间

           shadowQuery.set_endTime(date);

           //设置阴影率分析结果展示点的间隔

           shadowQuery.set_spacing(dSpacing);

           //设置分析的时间间隔

           shadowQuery.set_timeInterval(nInterval);

           //设置分析区域

           shadowQuery.set_queryRegion(geoRegion);

           var colors = new Array();

            colors[0] = new SuperMap.Web.Core.Color(255,0,0,255);

            colors[1] =new SuperMap.Web.Core.Color(0,0,255,255);

            var keys = new Array(0,1);

            //设置阴影率范围及其对应的颜色表

            shadowQuery.setColorDictionary(keys,colors);

           //执行分析

           shadowQuery.build();

 

阴影率分析的实现效果如下图:

41 阴影率统计结果


  版权所有©2000-2016 北京超图软件股份有限公司。保留所有权利。