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

ArcGis地图

1、概述

官网:https://developers.arcgis.com/qt/
官网:官网指导
官网:Add graphics to a map view
Arcgis runtime sdk for Qt 开发记录(系列文章)

2、创建地图

//online:
m_mapView = new MapGraphicsView(this);    
m_map = new Map(Basemap::lightGrayCanvas(this), this);    
m_mapView->setMap(m_map); 
pMainLayout->addWidget(m_mapView);
setCentralWidget(pMainWidget);
m_mapView->setAttributionTextVisible(false);
//本地
m_mapView = new MapGraphicsView(this);  	//初始化mapview窗体
TileCache *titlecahe=new TileCache(("C:/Users/dujia/Desktop/aaa.tpk"),this);  //加载本地apk
ArcGISTiledLayer *titleLayer=new ArcGISTiledLayer(titlecahe,this);  //新建平铺图层
Basemap *baseMap=new Basemap(titleLayer);  	//底图-----------
m_map = new Map(baseMap, this);  			//加载底图
m_mapView->setMap(m_map);  					//将地图设置到map_view

3、定位、旋转、缩放

void Arcgis_demo::addButtons(QVBoxLayout* layout)
{// 定位QPushButton* pButtonLocate = new QPushButton("locate");connect(pButtonLocate, &QPushButton::clicked, this, [this](){// 经纬度坐标,这里用了“天坛公园”的位置Point pt(116.4104, 39.8818, SpatialReference::wgs84());// 比例尺设置double scale = 30000.0;m_mapView->setViewpointCenter(pt, scale);});layout->addWidget(pButtonLocate);// 旋转 30°QPushButton* pButtonRotate = new QPushButton("rotate");connect(pButtonRotate, &QPushButton::clicked, this, [this](){double cur_rotation = m_mapView->currentViewpoint(ViewpointType::CenterAndScale).rotation();cur_rotation += 30.0;m_mapView->setViewpointRotation(cur_rotation);});layout->addWidget(pButtonRotate);// 放大QPushButton* pButtonZoomIn = new QPushButton("zoom in");connect(pButtonZoomIn, &QPushButton::clicked, this, [this](){double cur_scale = m_mapView->currentViewpoint(ViewpointType::CenterAndScale).targetScale();cur_scale -= 10000.0;m_mapView->setViewpointScale(cur_scale);});layout->addWidget(pButtonZoomIn);// 缩小QPushButton* pButtonZoomOut = new QPushButton("zoom out");connect(pButtonZoomOut, &QPushButton::clicked, this, [this](){double cur_scale = m_mapView->currentViewpoint(ViewpointType::CenterAndScale).targetScale();cur_scale += 10000.0;m_mapView->setViewpointScale(cur_scale);});layout->addWidget(pButtonZoomOut);
}

4、鼠标点坐标

void T3::onMouseClicked(QMouseEvent &event)
{//单机地图时触发Point point = m_mapView->screenToLocation(event.x(), event.y());  //本地坐标转地图坐标qDebug() << "point::" <<point << ":::" << point.x()<<"::"<<point.y();Geometry geometryWgs84 = GeometryEngine::project(point, SpatialReference::wgs84());   //坐标转化qDebug() << "pointxxxxxx:::" << geometryWgs84;
}

5、画线测距

t和arcgis for qt在地图上做测距(画线和显示距离,单位km)

相关文章:

ArcGis地图

1、概述 官网&#xff1a;https://developers.arcgis.com/qt/ 官网&#xff1a;官网指导 官网&#xff1a;Add graphics to a map view Arcgis runtime sdk for Qt 开发记录&#xff08;系列文章&#xff09; 2、创建地图 //online&#xff1a; m_mapView new MapGraphicsV…...

Chrome 和 Edge 上出现“status_breakpoint”错误解决办法

文章目录 STATUS_BREAKPOINTSTATUS_BREAKPOINT报错解决办法Chrome浏览器 Status_breakpoint 错误修复- 将 Chrome 浏览器更新到最新版本- 卸载不再使用的扩展程序和应用程序- 安装计算机上可用的任何更新&#xff0c;尤其是 Windows 10- 重启你的电脑。 Edge浏览器 Status_brea…...

华为AP升级操作记录

AP型号&#xff1a;AP4050DN 原版本&#xff1a;AP4050DN CLOUD V200R008C10SPC700 升级后版本&#xff1a;AP4000 V200R019C00SPC913 开启FTP&#xff0c;用户名&#xff1a;admin, 密码&#xff1a;123456 FTP服务端地址&#xff1a;192.168.8.58 操作&#xff1a;将AP连接…...

面试系列 - String字符串使用详解

String 类是 Java 中最常用的类之一&#xff0c;它用于表示和操作字符串。字符串是一系列字符的序列&#xff0c;可以包含字母、数字、符号等。在 Java 中&#xff0c;String 类是不可变的&#xff0c;这意味着一旦创建了字符串对象&#xff0c;它的内容就不能被修改。 一、常…...

1782_Adobe Reader X实现pdf分页保存

全部学习汇总&#xff1a; GitHub - GreyZhang/windows_skills: some skills when using windows system. 看了一本pdf电子书&#xff0c;觉得其中几页很值得分享。如果分享整本书当然是不错的选择&#xff0c;但是分享整本书很可能会导致一个结局——内容太多别人不会去看&…...

筛选图片,写JSON文件和复制

筛选图片&#xff0c;写JSON文件和复制 筛选图片&#xff0c;写JSON文件筛选图片复制 筛选图片&#xff0c;写JSON文件 # coding: utf-8 from PIL import Image, ImageDraw, ImageFont import os import shutil import cv2 as cv import numpy as np import jsondef zh_ch(str…...

C++并发编程:构建线程安全队列(第二部分:细粒度锁)

C++并发编程:构建线程安全队列(第二部分:细粒度锁) 1. 引言 在多线程环境下,为了保证数据的一致性和正确性,需要使用同步原语来对共享数据的访问进行互斥和同步。std::queue作为一种先进先出(FIFO)的数据结构,它本身并不是线程安全的,同时访问它可能导致数据竞争和不一致的问…...

浅述C++内存管理——new与malloc的不同

前言 C相对于其他语言有一个重要的特点就是对于内存的管理&#xff0c;相比于C语言&#xff0c;C提供了新的关键字new来代替malloc的功能&#xff0c;其中有何不同&#xff0c;请看下文。 一、内存的构成 在我们日常编程过程中最常接触到的就是以下四个分区 以下将分别给出例…...

语言基础篇11——函数、函数参数类型、装饰器、生成器

函数 基本结构 def func_name(value):print(f"Hello {value}")return 0func_name("World")函数参数 参数默认值和五种参数类型 https://docs.python.org/3/glossary.html#term-parameter 参数默认值 带默认值的参数必须在参数列表右边 def func_nam…...

linux jar包class热部署 工具 arthas安装及使用

在不改变类、方法 的前提下&#xff0c;在方法中对业务逻辑做处理 或 打日志等情况下使用。 建议线上日志调试时使用&#xff1a; arthas安装 1. 下载文件 arthas-packaging-3.7.1-bin.zip https://arthas.aliyun.com 2. 服务器安装arthas 2.1 服务器指定目录下创建目录 c…...

Android studio 调整jar包顺序

第一步&#xff1a;编译jar包&#xff0c;放入lib路径下&#xff1a;如&#xff1a; 第二步&#xff1a;app 目录下build.gradle 中添加 compileOnly files(libs/classes.jar) 第三步&#xff1a;project目录下build.gradle 中添加 allprojects {gradle.projectsEvaluated {t…...

用Qt写的机器视觉绘图工具

一个用QtGraphicsView写的机器视觉绘图工具&#xff0c;支持直线查找&#xff0c;圆拟合&#xff0c;卡尺工具&#xff0c;圆环查找等。底部GraphicsScene可以实时显示相机图像&#xff0c;工具获取图像后通过算法处理图像。 Project是基于Qt的例程项目qdraw改的。...

Spring Boot 打包,将依赖全部打进去

一、背景 spring boot 2.4.4 项目&#xff0c;打包&#xff0c;将依赖全部打进去 二、在pom.xml中引入插件 在项目的 pom.xml 文件中&#xff0c;添加 Maven 插件 spring-boot-maven-plugin&#xff0c;示例如下&#xff1a; <build><plugins><!-- ...其他插件…...

SpringCloud入门实战(十五)分布式事务框架Seata简介

&#x1f4dd; 学技术、更要掌握学习的方法&#xff0c;一起学习&#xff0c;让进步发生 &#x1f469;&#x1f3fb; 作者&#xff1a;一只IT攻城狮 &#xff0c;关注我&#xff0c;不迷路 。 &#x1f490;学习建议&#xff1a;1、养成习惯&#xff0c;学习java的任何一个技术…...

MySQL数据库 主从复制与读写分离

读写分离是什么 读写分离&#xff0c;基本的原理是让主数据库处理事务性增、改、删操作&#xff08;INSERT、UPDATE、DELETE&#xff09;&#xff0c;而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。 为什么要进行读写分离 因…...

Qt day2

目录 1.多态&#xff0c;虚函数&#xff0c;纯虚函数 1.多态性&#xff08;Polymorphism&#xff09;&#xff1a; 2.虚函数&#xff08;Virtual Function&#xff09;&#xff1a; 3.纯虚函数&#xff08;Pure Virtual Function&#xff09;&#xff1a; 将引用作为函数参…...

JavaScript - 好玩的打字动画

效果预览&#xff1a; &#x1f680;HTML版本 <!DOCTYPE html> <html> <head><title>打字动画示例</title><style>.typewriter {color: #000;overflow: hidden; /* 隐藏溢出的文本 */white-space: nowrap; /* 不换行 */border-right: .…...

rpm打包

文章目录 rpm打包 1. rpm打包步骤0&#xff09;准备工作&#xff1a;安装打包工具rpm-build和rpmdevtools&#xff08;1&#xff09;在线安装&#xff08;2&#xff09;离线安装 1&#xff09;创建初始化目录2&#xff09;准备打包内容3&#xff09;编写打包脚本 spec文件4&…...

匠心新品:大彩科技超薄7寸WIFI线控器发布,热泵、温控器、智能家电首选!

一、产品介绍 此次发布一款7寸高清全新外壳产品&#xff0c;让HMI人机界面家族再添一新成员。该产品相比其他外壳有以下5个大改动&#xff1a; 1 表面玻璃盖板使用2.5D立体结构&#xff1b; 2 液晶盖板采用一体黑设计&#xff0c;且液晶屏与触摸板是全贴合结构&#xff1b; …...

华为云云服务器评测|使用云耀云服务器L实例部署Portainer工具

华为云云服务器评测&#xff5c;使用云耀云服务器L实例部署Portainer工具 一、云耀云服务器L实例介绍1.1 云耀云服务器L实例简介1.2 云耀云服务器L实例特点1.3 云耀云服务器L实例使用场景 二、本次实践介绍2.1 本次实践简介2.2 Portainer简介 三、购买云耀云服务器L实例3.1 登录…...

web vue 项目 Docker化部署

Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段&#xff1a; 构建阶段&#xff08;Build Stage&#xff09;&#xff1a…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...