首页 > 其他分享 >北斗网格位置码在低空空域管理的Cesium实现(陆续更新)

北斗网格位置码在低空空域管理的Cesium实现(陆续更新)

时间:2024-12-05 18:37:46浏览次数:5  
标签:const level -- 32 网格 空域 toString binaryStr Cesium

北斗网格码作为前沿主流技术,在低空空域的数字化管理中发挥着重要作用。 北斗网格位置码相关描述见国标:GB/T 39409-2020 (1)特定区域、特定级别的网格显示 //特定区域如果跨东西半球、南北半球,分部分处理,遍历循环时比较方便 //特定区域:中国区域版图 const lon_west=72.0 //矩形左下角经度 const lon_east=138.0 //矩形左上角经度 const lat_south=16.0 //矩形左下角纬度 const lat_north=56.0 //矩形左上角纬度 分别按剖分规则遍历经纬度、高度,绘制立方体 //标准划分 const level_1 = 4; // 一级 4° 纬度 const level_1_0 = 6; // 一级 6° 经度 const level_2 = 30 /60; // 二级 30′ const level_3 = 15 /60; // 三级 15′ //经度上15/60, const level_3_0 = 10 /60; //纬度上应该为10/60 const level_4 = 1 /60; // 四级 1′ const level_5 = 4 /3600; // 五级 4″ const level_6 = 2 /3600; // 六级 2″ const level_7 = 1 /(3600*4); // 七级 1/4″ const level_8 = 1 /(3600*32); // 八级 1/32″ const level_9 = 1 /(3600*256); // 九级 1/256″ const level_10 = 1 /(3600*2048); // 十级 1/2048″ 1.5cm 一级剖分:

 

五级剖分:

 

(2)北斗二维编码 按照国标要求编码,注意编码是不等长的,级别不同,长度不同。将编码绘制到网格的中心。 二级的二维编码如下:

 

(3)北斗三维编码 高度维编码获取方式 // 根据公式 C.14 逐个提取每个部分的编码 const a11 = parseInt(binaryStr.slice(32 - 3, 32), 2).toString(8); // --从低位(右侧)取第 1 位到第 3 位 const a10 = parseInt(binaryStr.slice(32-6, 32-3), 2).toString(8);// --从低位(右侧)取第 4 位到第 6 位 const a9 = parseInt(binaryStr.slice(32-9, 32-6), 2).toString(8);// --从低位(右侧)取第 7 位到第 9 位 const a8 = parseInt(binaryStr.slice(32-12, 32-9), 2).toString(8);// --从低位(右侧)取第 10 位到第 12 位 const a7 = parseInt(binaryStr[32 - 13], 2).toString(2);// --从低位(右侧)取第 13 位 const a6 = parseInt(binaryStr.slice(32-17, 32-13), 2).toString(16).toUpperCase();// --从低位(右侧)取第 14 位到第 17 位 const a5 = parseInt(binaryStr.slice(32-21, 32-17), 2).toString(16).toUpperCase();// --从低位(右侧)取第 18 位到第 21 位 const a4 = parseInt(binaryStr[32 - 22], 2).toString(2);// --从低位(右侧)取第 22 位 const a3 = parseInt(binaryStr.slice(32-25, 32-22), 2).toString(8); // --从低位(右侧)取第 23 位到第 25 位 const a21 = parseInt(binaryStr.slice(32-31, 32-25), 2).toString(10).padStart(2, '0');// --从低位(右侧)取第 26 位到第 31 位 const a0 = parseInt(binaryStr[32 - 32], 2).toString(2);// --从低位(右侧)取第 32 位 二级网格的三维编码如下:

 

(4)用户可视范围、用户地图比例尺动态确定区域及级别 (5)根据经纬度点、高度及级别绘制点所在网格   外链:https://zhuanlan.zhihu.com/p/8428345687 

 

标签:const,level,--,32,网格,空域,toString,binaryStr,Cesium
From: https://www.cnblogs.com/bimgis/p/18589121

相关文章

  • 说说你对网格布局的理解
    在前端开发中,网格布局(GridLayout)是一种强大的二维布局系统,它将网页划分成由行和列组成的网格,允许开发者精确定位和排列元素。相比于传统的浮动布局和Flexbox,Grid布局更擅长处理复杂的、二维的页面结构。我的理解可以概括为以下几点:1.核心概念:网格容器(GridContainer):应用......
  • 数字图像空域隐写和分析技术的实现
    目录前言一、LSB顺序隐写二、LSB随机隐写三、抗分析的LSB随机隐写四、卡方分析五、信息估算法分析六、RS分析前言西南科技大学信息隐藏课程作业二,数字图像空域隐写与分析技术的实现。该实验的主要难点在于分析的实现,本人也是到处参考其他人的文章和代码才勉强完成该......
  • Cesium 二三维切换
    Cesium二三维切换switch2D3D(){letmap=getMap();if(!map)return;letview=map.getCameraView();if(map.scene.mode==Cesium.SceneMode.SCENE3D){letpitch=((0-view.pitch)*Math.PI)/180;letlength=v......
  • 网格的单元格可以使用弹窗SM8016
    namespaceSM8016CPDLMXQD{publicclassSM8016CPDLMXQD:ISuwfBus{privateSlnSuwfPage_page;publicvoidInitial(SlnSuwfPagepage){_page=page;BindButtonEvent("btnCPDLMXQD",newEvent......
  • 一网统管市域社会治理网格化管理云平台建设方案
    1.方案背景与目标市域社会治理是国家治理的重要基石,本方案旨在通过构建网格化管理云平台,实现市域社会治理的现代化、智能化和精细化,提高社会治理效能,维护社会安全稳定。2.政策趋势与要求当前,市域社会治理正向着以人民为中心、构建多元治理格局的方向发展。政策要求加强和......
  • Cesium中级开发教程之十四:水面波纹
    教程示例网站:https://thomaz529.github.io一、效果图二、代码createWaterMaterial(){viewer.scene.primitives.add(newCesium.Primitive({geometryInstances:newCesium.GeometryInstance({geometry:ne......
  • 【cesium重新梳理】1.cesium知识整理
    之前零零碎碎学过、用过cesium,但也没做记录,现在重新整理一下,方便学习回顾。1.cesium简介CesiumJS是一个开源JavaScript库,用于创建具有最佳性能、精度、视觉质量和易用性的世界级3D地球仪和地图。从航空航天到智能城市再到无人机,各行各业的开发人员都使用CesiumJS创建交互式We......
  • 【cesium】打造科技感建筑泛光效果
    一些智慧城市项目经常需要加载建筑白膜数据(3dtiles),并制作炫酷的炫光效果,在cesium中可以使用自定义着色器修改白膜建筑的外观。1.首先,加载3Dtiles格式的建筑白膜数据,这里我们使用一个免费的数据链接:data.mars3d.cn/3dtiles/jzw…这是mars3D提供的一个链接,发送请求就会返回3Dtil......
  • 【cesium】修改底图颜色为蓝色科技范儿
    cesium中,默认的底图颜色往往难以满足个性化需求,而【蓝色科技】风格常常备受青睐,本文从实操角度介绍实现方法。 简单来说,我们所用的方法叫做【反色滤镜】,总的分为2个步骤,反色,过滤。具体做法如下:首先要获取目标影像图层,这里不能直接对div进行操作,因为会将地图上的所有元素都......
  • div网格
    页面部分<divclass="real-water"><divv-for="(item,index)inwaterItem":key="index"><el-imagestyle="width:20px;height:20px"fit="cover":src="require(`@/assets/siquan/$......