基于三维实景的挖填方计算方法、装置及可读介质制造方法及图纸

技术编号:38541530 阅读:10 留言:0更新日期:2023-08-19 17:09
本发明专利技术公开一种基于三维实景的挖填方计算方法、装置及可读介质,通过获取栅格文件并进行解析,得到以栅格形式绘制的地图,并获取栅格仿射变换参数gt数组;于地图上画一个面,获取对应的第一坐标点,根据第一坐标点和栅格仿射变换参数gt数组计算出地图上画的面的左上角leftTop点和右下角rightBottom点在栅格对应的行和列;根据地图上画的面的左上角leftTop点和右下角rightBottom点在栅格对应的行和列确定要搜索的栅格的范围,循环遍历栅格的范围,将每一个栅格的行和列转换为第二坐标点;将第二坐标点与地图上画的面进行比对,响应于确定第二坐标点在地图上画的面内,则根据第二坐标点对应栅格高度和设定海平高度确定挖填方式并计算得到挖填方。该方式便捷,计算速度快、准确。准确。准确。

【技术实现步骤摘要】
基于三维实景的挖填方计算方法、装置及可读介质


[0001]本专利技术涉及三维实景
,具体涉及一种基于三维实景的挖填方计算方法、装置及可读介质。

技术介绍

[0002]计算填挖土方量与平衡填挖方是竖向规划的一项重要内容。尤其在山地市,需要充分利用自然地形,合理确定规划用地和道路的设计标高,减少土石方工程量,力求填挖方就近平衡,从而降低工程造价。
[0003]目前通常采用方网格方法或空间几何计算填挖方量,在AUTOCAD中使用方网格方法计算填挖方量,效率较低。填挖方计算结果要反馈到规划方案并调整标高,需要多次反复,才能确定合理的标高,传统方法费力费时。使用空间几何计算填挖方量,速度快、效率高,通过计算结果的反馈,能直观地辅助规划标高调整。但仍然存在以下缺陷:
[0004]1、计算大面积地块时,速度比较慢;
[0005]2、如果栅格密度比较高,在浏览器的地图上画出对应的栅格,在数量巨大的情况下会使浏览器发生卡顿。

技术实现思路

[0006]针对上述提到的技术问题。本申请的实施例的目的在于提出了一种基于三维实景的挖填方计算方法、装置及可读介质,来解决以上
技术介绍
部分提到的技术问题。
[0007]第一方面,本专利技术提供了一种基于三维实景的挖填方计算方法,包括以下步骤:
[0008]S1,获取栅格文件并进行解析,得到以栅格形式绘制的地图,并获取栅格仿射变换参数gt数组;
[0009]S2,于地图上画一个面,获取对应的第一坐标点,根据第一坐标点和栅格仿射变换参数gt数组计算出地图上画的面的左上角leftTop点和右下角rightBottom点在栅格对应的行和列;
[0010]S3,根据地图上画的面的左上角leftTop点和右下角rightBottom点在栅格对应的行和列确定要搜索的栅格的范围,循环遍历栅格的范围,将每一个栅格的行和列转换为第二坐标点;
[0011]S4,将第二坐标点与地图上画的面进行比对,响应于确定第二坐标点在地图上画的面内,则根据第二坐标点对应栅格高度和设定海平高度确定挖填方式并计算得到挖填方。
[0012]作为优选,栅格仿射变换参数gt数组包括gt[0]、gt[1]、gt[2]、gt[3]、gt[4]和gt[5],gt[0]=原点x坐标,gt[1]=栅格每个格子的宽度,gt[2]=原点x坐标偏移值,gt[3]=原点z坐标,gt[4]=栅格每个格子的长度,gt[5]=原点y坐标偏移值。
[0013]作为优选,步骤S2具体包括:
[0014]S21,根据第一坐标点计算出地图上画的面在x轴的最大值和最小值以及在y轴的
最大值和最小值;
[0015]S22,根据栅格仿射变换参数gt数组与地图上画的面在x轴的最大值x
max
和最小值x
min
以及在y轴的最大值y
max
和最小值y
min
分别计算出左上角leftTop点(x
min
,y
min
)和右下角rightBottom点(x
max
,y
max
)在栅格对应的行和列,计算公式如下:
[0016]行=((y

gt[3])*gt[1]‑
(x

gt[0])*gt[4])/(gt[5]*gt[1]‑
gt[2]*gt[4]);
[0017]列=(x

gt[0]‑
行*gt[2])/gt[1];
[0018]并对行和列进行向下取整。
[0019]作为优选,步骤S3中,栅格的范围包括开始行startRow、开始列startCol、结束行endRow和结束列endCol,其中,开始行startRow对应左上角leftTop点的x
min
,开始列startCol对应右下角rightBottom点的y
max
,结束行endRow对应右下角rightBottom点的x
max
,结束列endCol对应左上角leftTop点的y
min

[0020]作为优选,步骤S3中将每一个栅格的行和列转换为第二坐标点,具体采用以下公式:
[0021]val1=(gt[5]*gt[1]‑
gt[2]*gt[4]);
[0022]val2=col*val1+gt[3]*gt[1]‑
gt[0]*gt[4];
[0023]val3=row*gt[1]+gt[0];
[0024]x

=(1+gt[4]*gt[2]‑
gt[4]*gt[2])/val2*gt[2]+val3;
[0025]y

=(val2+x

*gt[4])/gt[1];
[0026]其中,row为每一个栅格的行,col为每一个栅格的列,第二坐标点为(x

,y

)。
[0027]作为优选,步骤S4中将第二坐标点与地图上画的面进行比对具体包括:
[0028]将第二坐标点(x

,y

)通过esri提供的java工具类com.esri.core.geometry的GeometryEngine.within(点(x

,y

),地图上画的面)方法进行比对,判断第二坐标点(x

,y

)是否在地图上画的面内。
[0029]作为优选,步骤S4中根据第二坐标点对应栅格高度和设定海平高度确定挖填方式并计算得到挖填方,具体包括:
[0030]响应于确定第二坐标点对应栅格高度大于设定海平高度,则确定挖填方式为挖;
[0031]响应于确定第二坐标点对应栅格高度小于设定海平高度,则确定挖填方式为填;并执行以下步骤:
[0032]通过第二坐标点、栅格仿射变换参数以及每个栅格的宽度计算栅格在地图上对应的坐标数组:[[x
’‑
gt[1]/2,y
’‑
gt[1]/2]、[x

+gt[1]/2,y
’‑
gt[1]/2]、[x

+gt[1]/2,y

+gt[1]/2]和[x
’‑
gt[1]/2,y

+gt[1]/2]];
[0033]根据栅格在地图上对应的坐标数组通过esri.geometry类库获取得到栅格与地图上画的面的重叠部分坐标数组;
[0034]根据栅格与地图上画的面的重叠部分坐标数组计算重叠部分的面积;
[0035]挖填方的数值为重叠部分的面积乘以第二坐标点对应栅格高度与设定海平高度之间的差值;
[0036]响应于确定第二坐标点对应栅格本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于三维实景的挖填方计算方法,其特征在于,包括以下步骤:S1,获取栅格文件并进行解析,得到以栅格形式绘制的地图,并获取栅格仿射变换参数gt数组;S2,于所述地图上画一个面,获取对应的第一坐标点,根据所述第一坐标点和所述栅格仿射变换参数gt数组计算出地图上画的面的左上角leftTop点和右下角rightBottom点在栅格对应的行和列;S3,根据所述地图上画的面的左上角leftTop点和右下角rightBottom点在栅格对应的行和列确定要搜索的栅格的范围,循环遍历栅格的范围,将每一个栅格的行和列转换为第二坐标点;S4,将所述第二坐标点与所述地图上画的面进行比对,响应于确定所述第二坐标点在所述地图上画的面内,则根据所述第二坐标点对应栅格高度和设定海平高度确定挖填方式并计算得到挖填方。2.根据权利要求1所述的基于三维实景的挖填方计算方法,其特征在于,所述栅格仿射变换参数gt数组包括gt[0]、gt[1]、gt[2]、gt[3]、gt[4]和gt[5],gt[0]=原点x坐标,gt[1]=栅格每个格子的宽度,gt[2]=原点x坐标偏移值,gt[3]=原点z坐标,gt[4]=栅格每个格子的长度,gt[5]=原点y坐标偏移值。3.根据权利要求2所述的基于三维实景的挖填方计算方法,其特征在于,所述步骤S2具体包括:S21,根据所述第一坐标点计算出所述地图上画的面在x轴的最大值和最小值以及在y轴的最大值和最小值;S22,根据所述栅格仿射变换参数gt数组与所述地图上画的面在x轴的最大值x
max
和最小值x
min
以及在y轴的最大值y
max
和最小值y
min
分别计算出左上角leftTop点(x
min
,y
min
)和右下角rightBottom点(x
max
,y
max
)在栅格对应的行和列,计算公式如下:行=((y

gt[3])*gt[1]

(x

gt[0])*gt[4])/(gt[5]*gt[1]

gt[2]*gt[4]);列=(x

gt[0]

行*gt[2])/gt[1];并对行和列进行向下取整。4.根据权利要求1所述的基于三维实景的挖填方计算方法,其特征在于,所述步骤S3中,所述栅格的范围包括开始行startRow、开始列startCol、结束行endRow和结束列endCol,其中,开始行startRow对应左上角leftTop点的x
min
,开始列startCol对应右下角rightBottom点的y
max
,结束行endRow对应右下角rightBottom点的x
max
,结束列endCol对应左上角leftTop点的y
min
。5.根据权利要求2所述的基于三维实景的挖填方计算方法,其特征在于,所述步骤S3中将每一个栅格的行和列转换为第二坐标点,具体采用以下公式:val1=(gt[5]*gt[1]

gt[2]*gt[4]);val2=col*val1+gt[3]*gt[1]

gt[0]*gt[4];val3=row*gt[1]+gt[0];x

=(1+gt[4]*gt[2]

gt[4]*gt[2])/va...

【专利技术属性】
技术研发人员:王欣许碧连潘奕涛汪瑞渊
申请(专利权)人:厦门天海图汇信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1