1.一种基于DEM栅格数据的通视分析方法,其特征在于,利用概要高度数据对观测点在最大通视距离内的任意点之间的通视情况进行实时通视分析,所述概要高度数据是离线计算获得,具体步骤如下:
1)、离线计算DEM栅格数据对应的最低可视高度数据,所述DEM栅格数据对应的最低可视高度数据是指:为实现与观测点之间可视,DEM栅格像素所在位置所需的最低高度值;
2)、将最低可视高度数据划分为若干个块数据,每个块数据中包括至少2×2个最低可视高度栅格像素;
3)、统计每个块数据的块简略信息,所述块简略信息包括:bAllSee:若块数据里每个最低可视高度栅格像素的值与DEM栅格数据中对应的DEM栅格像素的值完全相同,记录为真,否则为假;
vSmall:块数据里所有最低可视高度栅格像素的值中的最小值;
vMax:块数据里所有最低可视高度栅格像素的值中的最大值;
4)、将概要高度数据保存到文件中;
所述概要高度数据包括以数组形式按顺序存储的每个块简略信息和通视计算辅助信息,所述通视计算辅助信息至少包括以下内容:①观测点位置的经度、纬度、观测点高度;
②观测点的最大通视距离dMaxDist;
③DEM栅格数据的行数、列数,DEM栅格像素的宽度;
④块数据的行数a和列数b;
设观测点为A,目标点为B,实时通视分析步骤如下:
S1、将概要高度数据调入内存,根据目标点B的坐标信息,计算确定目标点B对应的DEM栅格像素B’所在位置;确定B’所在位置对应的最低可视高度栅格像素B”所在位置;
S2、确定像素B”所在的块数据B”’;
S3、判断块数据B”’的块简略信息中,bAllSee值是否为真,若是,AB之间可视;否则执行步骤S4;
S4、判断目标点B的高度是否小于vSmall,若是,则目标不可见,否则执行步骤S5;
S5、判断目标点B的高度是否大于vMax,若是,则目标可见,否则执行步骤S6;
S6、读取最低可视高度栅格像素B”中记载的最低可视高度vTheroy;
S7、判断目标点B的高度是否大于等于vTheroy,若是,AB之间可视,否则不可视。
2.根据权利要求1所述的基于DEM栅格数据的通视分析方法,其特征在于,在将最低可视高度数据划分为若干个块数据时,若不能整除,缺失部分以数值为0的像素补齐,并在计算块简略信息时,设定此部分像素与DEM栅格数据对应像素值做相等处理。
3.根据权利要求1或2所述的基于DEM栅格数据的通视分析方法,其特征在于,所述bAllSee为bool类型数据,所述vSmall和vMax数据使用float类型进行存储;bAllSee为真,不需要记录VSmall和VMax;bAllSee为假,需要记录VSmall和VMax。
4.根据权利要求3所述的基于DEM栅格数据的通视分析方法,其特征在于,概要高度数据不大于500M。