返回顶部
首页 > 资讯 > 精选 >QT编写地图实现获取区域边界的方法是什么
  • 617
分享到

QT编写地图实现获取区域边界的方法是什么

2023-06-26 05:06:44 617人浏览 独家记忆
摘要

本篇内容介绍了“Qt编写地图实现获取区域边界的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、前言区域边界也是一些坐标点集合,而

本篇内容介绍了“Qt编写地图实现获取区域边界的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、前言

区域边界也是一些坐标点集合,而且不同的行政区划得到的区域边界点数组集合个数不同,觉得部分都是一个集合,少部分有一些飞地之类的,需要多个闭合区域,所以会得到多个数组集合,绘制的时候都要分别取出来绘制就行。

获取边界点一般和行政区划搭配起来使用,比如用户输入一个省市的名称,然后自动定位到该省市,然后对该轮廓获取所有边界点集合输出到js文件,最后供离线使用,获取边界点还有一个功能就是获取当前区域内的左下角右上角等经纬度坐标,这个主要是供离线地图下载使用的,百度地图很好的提供了bdary.get(cityname, function(rs)的函数来获取行政区划的边界点集合,其中rs.boundaries就是所有的边界点集合,估计他是服务器上存储好的每个区域的集合,查询到了立即返回,可能早期也是人工的一点点圈起来连线好存到到数据库的,按照此方式其实可以搞一个程序自动将全国的所有省市边界点集合数据全部扒下来,给离线地图使用,测试了下貌似只支持到县城级别,不支持具体到乡镇。

二、功能特点

定时器排队下载省市轮廓图点坐标集合存储到JS文件。

支持一个行政区域多个不规则区域下载。

自动计算行政区域的下载轮廓数量。

可精确选择省份、市区、县城,也可直接输入行政区域的名称。

可以设置下载间隔、随时开始下载和停止下载。

提供编辑边界功能,可以直接在地图上编辑好不规则区域的点集合,然后获取边界点集合数据,这个可以用来自己绘制区域拿到数据,比如某个乡镇甚至某个小区的行政区域数据,很牛逼。

三、体验地址

体验地址:https://pan.baidu.com/s/1ZxG-oyUKe286LPMPxOrO2A 提取码:o05q 文件名:bin_map.zip

国内站点:Https://gitee.com/feiyangqingyun

国际站点:https://GitHub.com/feiyangqingyun

四、效果图

QT编写地图实现获取区域边界的方法是什么

五、相关代码

void frmMapBoundary::getBoundary(){    //判断当前索引对应的省会的复选框有没有勾选,没有勾选则找到下一个勾选的    int count = names.count();    while (indexMain < count - 1 && !cks.at(indexMain)->isChecked()) {        indexMain++;        indexSub = 0;    }    //到了最后一个省会的索引,停止定时器    if (indexMain == count || !cks.at(indexMain)->isChecked()) {        on_btnStop_clicked();        return;    }    //下载到省会的最后一个县,索引自动跳到下一个省会    QStringList list = names.at(indexMain);    if (indexSub == list.count()) {        indexMain++;        indexSub = 0;        getBoundary();        return;    }    QString name = list.at(indexSub);    addBoundary(name);    indexSub++;    //更新进度条    int value = bars.at(indexMain)->value();    bars.at(indexMain)->setValue(value + 1);    ui->txtTip->setText(name);}void frmMapBoundary::addBoundary(){    //开启编辑状态    QString name = ui->cboxName->currentText();    addBoundary(name, true);}void frmMapBoundary::addBoundary(const QString &name, bool edit){    currentName = name;    QString js = QString("addBoundary('%1', true, %2)").arg(name).arg(edit ? "true" : "false");    runJs(js);}void frmMapBoundary::saveBoundary(const QString &fileName, const QVariant &data){    //传过来的是行政区划的边界点坐标集合,存储到js文件    //可能会有多个数据,比如台湾的金门岛,都是独立的区域形状,存入数组    QStringList boundarys;    QStringList list = data.toString().split("|");    foreach (QString points, list) {        boundarys << QString("{'points': '%1'}").arg(points);    }    //最终js文件内容数据    QString boundary = QString("var boundarys = [%1]").arg(boundarys.join(", "));    QFile file(fileName);    if (file.open(QFile::WriteOnly | QFile::Truncate)) {        QTextStream out(&file);#if (QT_VERSION < QT_VERSION_CHECK(6,0,0))        out.setCodec("utf-8");#endif        out << boundary;    }}

“QT编写地图实现获取区域边界的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: QT编写地图实现获取区域边界的方法是什么

本文链接: https://lsjlt.com/news/307015.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • QT编写地图实现获取区域边界的方法是什么
    本篇内容介绍了“QT编写地图实现获取区域边界的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、前言区域边界也是一些坐标点集合,而...
    99+
    2023-06-26
  • QT编写地图实现获取区域边界
    目录一、前言二、功能特点三、体验地址四、效果图五、相关代码一、前言 区域边界也是一些坐标点集合,而且不同的行政区划得到的区域边界点数组集合个数不同,觉得部分都是一个集合,少部分有一些...
    99+
    2024-04-02
  • Qt如何编写地图实现省市区域图
    这篇文章主要介绍了Qt如何编写地图实现省市区域图,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、前言省市区域图也可以叫省市轮廓图,就是将每个省份、市区的边界区域变成轮廓展示...
    99+
    2023-06-22
  • Qt编写地图实现省市区域图的示例代码
    目录一、前言二、功能特点三、体验地址四、效果图五、相关代码一、前言 省市区域图也可以叫省市轮廓图,就是将每个省份、市区的边界区域变成轮廓展示,只是个大概的轮廓,和真是的地图基本一致...
    99+
    2024-04-02
  • golang获取域名的方法是什么
    在Golang中,可以使用net包来获取域名。具体的方法是使用net.LookupHost()函数,该函数接收一个参数,即所要查询的...
    99+
    2024-04-09
    golang
  • QT编写地图实现设备点位的示例代码怎么写
    本篇文章为大家展示了QT编写地图实现设备点位的示例代码怎么写,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、前言在学习JS语法的时候发现其实程序都大同小异,正所谓一通百通,熟悉各大概的语法以后基本...
    99+
    2023-06-26
  • Android获取本地相册图片和拍照获取图片的实现方法
    需求:从本地相册找图片,或通过调用系统相机拍照得到图片。 容易出错的地方: 1、当我们指定了照片的uri路径,我们就不能通过data.getData();来获取uri,而应该直...
    99+
    2022-06-06
    方法 图片 Android
  • Android编程获取设备MAC地址的实现方法
    本文实例讲述了Android编程获取设备MAC地址的实现方法。分享给大家供大家参考,具体如下: public static void getMacAddress(final...
    99+
    2022-06-06
    方法 mac Android
  • JavaScript作用域编写提升的方法是什么
    本篇内容主要讲解“JavaScript作用域编写提升的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript作用域编写提升的方法是什么”吧...
    99+
    2024-04-02
  • PHP实现获取url地址中顶级域名的方法示例
    做域名黑名单的时候我们需要得到顶级域名。下面总结几种PHP实现获取url地址中顶级域名的方法示例 ` 方法一: ...
    99+
    2023-09-01
    php 服务器 开发语言
  • Android编程实现获取图片资源的四种方法
    本文实例讲述了Android编程实现获取图片资源的四种方法。分享给大家供大家参考,具体如下: 1. 图片放在sdcard中: 代码如下:Bitmap imageBitmap ...
    99+
    2022-06-06
    方法 图片 Android
  • Android编程实现读取本地SD卡图片的方法
    本文实例讲述了Android编程实现读取本地SD卡图片的方法。分享给大家供大家参考,具体如下: private Bitmap getDiskBitmap(String pat...
    99+
    2022-06-06
    方法 图片 sd sd卡 Android
  • JavaScript实现跨域的方法是什么
    今天小编给大家分享一下JavaScript实现跨域的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们...
    99+
    2024-04-02
  • 获取服务器ip地址和端口的方法是什么
    获取服务器IP地址和端口的方法取决于您使用的操作系统和网络工具。以下是一些常用的方法:1. 在Windows操作系统中,打开命令提示...
    99+
    2023-06-07
    获取服务器ip 服务器
  • Android编程如何实现获取当前系统语言及地区并更改语言的方法
    这篇文章给大家分享的是有关Android编程如何实现获取当前系统语言及地区并更改语言的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。本文实例讲述了Android编程实现获取当前系统语言及地区并更改语言的方法。...
    99+
    2023-05-30
    android
  • 实现ADO.NET记录集获取记录数量的方法是什么
    本篇文章给大家分享的是有关实现ADO.NET记录集获取记录数量的方法是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。VC使用ADO技术访问数据表,打开数据表后,获得了ADO...
    99+
    2023-06-17
  • Python基于域相关实现图像增强的方法是什么
    这篇文章主要讲解了“Python基于域相关实现图像增强的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python基于域相关实现图像增强的方法是什么”吧!介绍当在图像上训练深度神经...
    99+
    2023-06-26
  • mysql读写分离实现的方法是什么
    MySQL读写分离是通过将读操作和写操作分别分配到不同的MySQL实例上来实现的。 常见的实现方法有以下两种: 通过MySQL代...
    99+
    2024-04-09
    mysql
  • android轮播图实现的方法是什么
    Android中轮播图的实现方法一般有以下几种: 使用ViewPager:ViewPager是Android提供的用于实现滑动切...
    99+
    2024-02-29
    android
  • C/C++ QT实现自定义对话框的方法是什么
    这篇文章主要讲解了“C/C++ QT实现自定义对话框的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C/C++ QT实现自定义对话框的方法是什么”吧!对话框分为...
    99+
    2023-06-21
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作