当前位置: 首页 > news >正文

基于arcpro3.0.2的北斗网格生成简介

基于arcpro3.0.2的北斗网格生成简介

在这里插入图片描述

采用2000坐标系、可基于行政区范围
软件可生成第一级到第十级北斗网格经纬跨度                  等分         约赤道处距离
第一级 6X4度                      60 和A~V         660      km
第二级 30X30分                    12X8             55.66    km
第三级 15X10分                    2X3              27.83    km
第四级 1X1分                      15X10            1.85      km
第五级 4X4秒                      15X15            123.69  m
第六级 2X2秒                      2X2              61.84    m
第七级 1/4 X 1/4秒                8X8              7.73      m
第八级 1/32 X 1/32秒              8X8              0.97     m
第九级 1/256 X 1/256秒            8X8              12.0     cm
第十级 1/2048 X 1/2048秒          8X8              1.5       cm
public static string GetNewBDBM(double B, double L, int Level)
{List<string> code = new List<string>();double pre_a = 0;   //上一级行号double pre_b = 0;   //上一级列号double pre_Q = 0;    //上一级确定角点纬度值double pre_Y = 0;    //上一级确定角点经度值double pre_dB = 0;   //上一级经差double pre_dL = 0;   //上一级纬差//本级变量double dB = 0, dL = 0;int a = 0, b = 0;double Q = 0, Y = 0;//BL点 转为度for (int i = 1; i <= Level; i++){if (i == 1){   //第一层  1:100万                    GetDetaB_detaL(i, ref dB, ref dL);  //获取本级经纬差值//                  string bit_1 = "N";   //我国位于北半球=N,   南半球=Sif (B >= 0){   //B=ybit_1 = "N";}else{bit_1 = "S";}//a = getInt(Math.Floor(Math.Abs(B) / dB)) + 1;    //商取整【B/4】+1                    b = getInt(Math.Floor(L / dL)) + 31;             //商取整【L/6】+31  //修正b值b = Math.Abs(b); if (b<0) b = 1;if (b > 59) b = 60;//修正a值if (a > 22) a = 22;//string bit_23 = b.ToString().PadLeft(2, '0');    //补足2位01-60string bit_4 = Get100W_WeiD_bit_1(Math.Abs(a).ToString());//生成北斗码code.Add(bit_1 + bit_23 + bit_4);    //N45A//==记录历史行列号和确定角点经纬度坐标值pre_a = a;pre_b = b;pre_Q = 0;   //全球赤道0度点pre_Y = 0;   //全球赤道0度点pre_dB = dB;pre_dL = dL;//==}else if (i == 2){GetDetaB_detaL(i, ref dB, ref dL);  //获取本级经纬差值//获取上一级网格层的确定角点经纬度坐标值Q = pre_Q + (pre_b - 31) * pre_dL;Y = pre_Y + (pre_a - 1) * pre_dB;//获取此点在本级网格层的行列号                  a = getInt((L - Q) / dL) + 1;b = getInt((B - Y) / dB) + 1;//生成北斗码code.Add(fixRowColNum15(a - 1));code.Add(fixRowColNum15(b - 1));//==记录历史行列号和确定角点经纬度坐标值pre_a = a;pre_b = b;pre_Q = Q;   //全球赤道0度点pre_Y = Y;   //全球赤道0度点pre_dB = dB;pre_dL = dL;//==}else if (i == 3){GetDetaB_detaL(i, ref dB, ref dL);  //获取本级经纬差值//获取上一级网格层的确定角点经纬度坐标值Q = pre_Q + (pre_a - 1) * pre_dL;Y = pre_Y + (pre_b - 1) * pre_dB;//获取此点在本级网格层的行列号                  a = getInt((L - Q) / dL) + 1;b = getInt((B - Y) / dB) + 1;//生成北斗码  (Z序列)//code.Add(fixRowColNum15(a - 1));//code.Add(fixRowColNum15(b - 1));code.Add(fixRowColZorder(a, b));//==记录历史行列号和确定角点经纬度坐标值pre_a = a;pre_b = b;pre_Q = Q;   //全球赤道0度点pre_Y = Y;   //全球赤道0度点pre_dB = dB;pre_dL = dL;//==}else if (i >= 4 && i <= 5){GetDetaB_detaL(i, ref dB, ref dL);  //获取本级经纬差值//获取上一级网格层的确定角点经纬度坐标值Q = pre_Q + (pre_a - 1) * pre_dL;Y = pre_Y + (pre_b - 1) * pre_dB;//获取此点在本级网格层的行列号                  a = getInt((L - Q) / dL) + 1;b = getInt((B - Y) / dB) + 1;//生成北斗码code.Add(fixRowColNum15(a - 1));code.Add(fixRowColNum15(b - 1));//==记录历史行列号和确定角点经纬度坐标值pre_a = a;pre_b = b;pre_Q = Q;   //全球赤道0度点pre_Y = Y;   //全球赤道0度点pre_dB = dB;pre_dL = dL;//==}else if (i == 6){GetDetaB_detaL(i, ref dB, ref dL);  //获取本级经纬差值//获取上一级网格层的确定角点经纬度坐标值Q = pre_Q + (pre_a - 1) * pre_dL;Y = pre_Y + (pre_b - 1) * pre_dB;//获取此点在本级网格层的行列号                  a = getInt((L - Q) / dL) + 1;b = getInt((B - Y) / dB) + 1;//生成北斗码  (Z序列)//code.Add(fixRowColNum15(a - 1));//code.Add(fixRowColNum15(b - 1));code.Add(fixRowColZorder(a, b));//==记录历史行列号和确定角点经纬度坐标值pre_a = a;pre_b = b;pre_Q = Q;   //全球赤道0度点pre_Y = Y;   //全球赤道0度点pre_dB = dB;pre_dL = dL;//==}else if (i >= 7 && i <= 10){GetDetaB_detaL(i, ref dB, ref dL);  //获取本级经纬差值//获取上一级网格层的确定角点经纬度坐标值Q = pre_Q + (pre_a - 1) * pre_dL;Y = pre_Y + (pre_b - 1) * pre_dB;//获取此点在本级网格层的行列号                  a = getInt((L - Q) / dL) + 1;b = getInt((B - Y) / dB) + 1;//生成北斗码code.Add(fixRowColNum15(a - 1));code.Add(fixRowColNum15(b - 1));//==记录历史行列号和确定角点经纬度坐标值pre_a = a;pre_b = b;pre_Q = Q;   //全球赤道0度点pre_Y = Y;   //全球赤道0度点pre_dB = dB;pre_dL = dL;//==}}string buf = "";for (int i = 0; i < code.Count; i++){buf += code[i];}return buf;
}

本blog地址:https://blog.csdn.net/hsg77

相关文章:

基于arcpro3.0.2的北斗网格生成简介

基于arcpro3.0.2的北斗网格生成简介 采用2000坐标系、可基于行政区范围 软件可生成第一级到第十级北斗网格经纬跨度 等分 约赤道处距离 第一级 6X4度 60 和A~V 660 km 第二级 30X30分 12X8 …...

网络流算法:最大流问题

引言 最大流问题是网络流中的一个经典问题&#xff0c;其目标是在给定的流网络中找到从源点到汇点的最大流量。最大流问题在交通运输、计算机网络、供应链管理等领域有广泛的应用。本文将详细介绍最大流问题的定义、解决方法以及具体算法实现。 目录 最大流问题的定义Ford-F…...

C++从入门到入土(四)--日期类的实现

目录 前言 日期类的实现 日期的获取 日期的比较 const成员函数 日期的加减 日期的加等 日期的减等 日期的加减 日期的加加减减 日期的相减 流插入和提取的重载 友元 友元的特点 日期类代码 总结 前言 前面我们介绍了C中类和对象的相关知识和六个默认成员函数&…...

【香橙派系列教程】(七)香橙派下的Python3安装

【七】香橙派下的Python3安装 为接下来的Linux图像识别智能垃圾桶做准备。 图像处理使用京东SDK只支持pyhton和Java接口&#xff0c;目的是引入C语言的Python调用&#xff0c;感受大厂做的算法bug 此接口是人工智能接口&#xff0c;京东识别模型是通过训练后的模型&#xff0c;…...

贝叶斯优化算法(Bo)与门控循环单元(GRU)结合的预测模型(Bo-GRU)及其Python和MATLAB实现

### 背景 随着时间序列数据在各个领域&#xff08;如金融、气象、医疗等&#xff09;应用的日益广泛&#xff0c;如何准确地预测未来的数据点成为了一个重要的研究方向。长短期记忆网络&#xff08;LSTM&#xff09;和门控循环单元&#xff08;GRU&#xff09;作为深度学习模型…...

人工智能时代,程序员当如何保持核心竞争力?

目录 前言 一.AI辅助编程对程序员工作的影响 二.程序员应重点发展的核心能力 三.人机协作模式下的职业发展规划 结束语 前言 随着AIGC&#xff08;如chatgpt、midjourney、claude等&#xff09;大语言模型接二连三的涌现&#xff0c;AI辅助编程工具日益普及&#xff0c;程序…...

LMDrive 端到端闭环自动驾驶框架

LMDrive&#xff0c;一种新颖的语言引导的端到端闭环自动驾驶框架。LMDrive独特地处理和整合多模态传感器数据与自然语言指令&#xff0c;使车辆能够在现实的指令设置中与人类和导航软件进行交互。 LMDrive由两个主要部分组成&#xff1a; 1&#xff09;一个视觉编码器&#x…...

P2045 方格取数加强版

Description 给定一个 n n n \times n nn 的矩阵&#xff0c;从左上角出发&#xff0c;可以往右或者往下走&#xff0c;每到达一个方格&#xff0c;就取走上面的数&#xff08;取过后格子上的数会清零&#xff09;&#xff0c;一共要走 k k k 次&#xff0c;求取到的数之和…...

【Bigdata】OLAP的衡量标准

这是我父亲 日记里的文字 这是他的生命 留下留下来的散文诗 几十年后 我看着泪流不止 可我的父亲已经 老得像一个影子 &#x1f3b5; 许飞《父亲写的散文诗》 OLAP&#xff08;联机分析处理&#xff09;系统的衡量标准主要集中在以下几个方面&#xff1a;…...

关于DDOS攻击趋势及防护措施

随着互联网技术的飞速发展&#xff0c;网络安全问题日益成为企业不可忽视的重要议题。分布式拒绝服务&#xff08;DDoS&#xff09;攻击作为其中的典型代表&#xff0c;以其强大的破坏力和难以防范的特性&#xff0c;给企业的网络安全带来了巨大挑战。今天我们就来了解下当前DD…...

Apache Flink:一个开源流处理框架

文章目录 引言官网链接Flink 原理概述核心概念 基础使用环境搭建编写 Flink 程序注意事项 高级使用窗口操作状态后端复杂事件处理&#xff08;CEP&#xff09;与 Kafka 集成 优点结论 引言 Apache Flink 是一个开源流处理框架&#xff0c;专为高吞吐量、低延迟的实时数据处理设…...

Nginx 学习笔记

1. Nginx简介 Nginx 是一个高性能的Http和反向代理服务器。也是一个IMAP/POP3/SMTP等邮件代理服务器。 特点&#xff1a; 占有内存少并发能力强安装非常的简单配置文件非常简洁&#xff08;还能够支持perl语法&#xff09;Bug非常少启动特别容易&#xff0c;并且几乎可以做到…...

软甲测试定义和分类

软件测试定义 使用人工和自动手段来运行或测试某个系统的过程&#xff0c;其目的在于检验他是否满足规定的需求或弄清预期结果与实际结果之间的差别 软件测试目的 为了发现程序存在的代码或业务逻辑错误 – 第一优先级发现错误为了检验产品是否符合用户需求 – 跟用户要求实…...

Vue 3+Vite+Eectron从入门到实战系列之(二)一Elementplus及VueRouter的配置

为了后续开发方便,在没有 UI 设计师配合的情况下,让我们的界面更加美观,我们使用 elementplus 组件库,并配置路由。 删除不需要的默认文件夹及文件,src 配置如下 实现效果 安装 elementplus,vue-router npm install element-plus --save npm install vue-router --save在…...

STL-list

1.list 1. list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。 2. list的底层是双向链表结构&#xff0c;双向链表中每个元素存储在互不相关的独立节点中&#xff0c;在节点中通过指针指向其前一个元素和后一个元素。 3. l…...

2024 7.29~8.4 周报

一、上周工作 2024 7.22~7.28周报-CSDN博客 二、本周计划 修改论文 三、完成情况 3.1 论文修改 3.1.1 摘要 问题&#xff1a;所写问题是一般性的深度网络问题&#xff08;过拟合&#xff09;&#xff0c;并没有针对FWI的问题&#xff08;边缘不清晰、深层不清晰、速度慢…...

随身助手271个可用api接口网站php源码(随身助手API)

源码简介&#xff1a; 随身助手API&#xff0c;本次更新了271个可用接口&#xff0c;现在开源给大家使用&#xff0c;无后门无加密&#xff0c;放心使用。 {“标题”:”看图猜成语接口”,”小标题”:”随身助手API”,”地址”:”tianyi/LookIdiom.php”,”状态”:”正常”} {…...

珠江电缆,顺应全球变化,实现高质量出海

在全球经济快速变化的今天&#xff0c;越来越多的企业将目光投向了国际市场。特别是对于线缆行业来说&#xff0c;顺应全球变化、应对机遇与挑战&#xff0c;实现高质量出海已成为长期发展的战略目标之一。珠江电缆作为一家集研发、制造和销售为一体的大型专业电线电缆企业&…...

redis面试(四)持久化

什么是持久化&#xff1f; 由于redis是基于内存操作的轻量型数据库&#xff0c;所以如果发生宕机重启这种事情&#xff0c;存储的数据就会直接丢失&#xff0c;如果在里面存储了没有备份的数据&#xff0c;那么确实会对我们的业务造成一定影响。 所以我们要通过持久化的手段&a…...

构建数据桥梁:Pandas如何简化API到DataFrame的转换

在数据科学的广阔天地中&#xff0c;API如同一把钥匙&#xff0c;为我们打开了通往丰富数据资源的大门。无论是追踪最新的股市动态&#xff0c;还是分析社交媒体趋势&#xff0c;API都能提供我们需要的实时数据。今天&#xff0c;我们将一起探索如何利用Python的pandas库&#…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...