您现在的位置是:首页 >技术杂谈 >qt quick(qml)通过arcgis导入自定义格式地图(Windows 版本)网站首页技术杂谈
qt quick(qml)通过arcgis导入自定义格式地图(Windows 版本)
简介qt quick(qml)通过arcgis导入自定义格式地图(Windows 版本)
参考ArcGIS Maps SDK for Qt
参考Display a map
安装
预先安装的软件

安装ArcGIS SDK
点击ArcGIS Maps SDK for Qt

注册账号
要注册成developer版本用户的,不然之后可能没办法生成API

下载
下载之后安装,一路next就可以了

在QT中创建ArcGIS项目
new project,选择cpp或者qml创建(取决于你用cpp方式修改程序还是用qml方式修改程序)

构建套件
选择的是

因为这个支持Qt 6.2以上的,如果用原来的Qt 5.15会出错;MSVC选的是2019版本的
配置环境
如果出现“xxx.lib","xxx,h"找不到的错误,多半是环境变量的原因,修改环境变量中的INCLUDE和LIB变量


运行


导入地图
设置API key
在developer dashboard复制API KEY,将来粘贴到main.cpp中

导入shp文件
Layers页面选择import data,把.dbf,.prj,qix,shp,shx全部打包成一个zip文件然后将ZIP文件上传,选择"shapefile"格式。导入成功之后,创建Layers。这个时候就会生成一个URL,将这个URL导入到程序中。
修改程序
包括QML版本和CPP版本的,这里以QML版本为例
添加API KEY 至main.cpp中

添加map
Map {
// add the ArcGISStreets basemap to the map
initBasemapStyle: Enums.BasemapStyleArcGISNavigation
initialViewpoint: viewpoint
FeatureLayer {
ServiceFeatureTable {
url: "xxxxxxx(导入图层之后生成的url)"
}
}
}
ViewpointCenter{
id:viewpoint
center:Point{
x:xxx
y:xxx
spatialReference: SpatialReference {wkid: 4326}
}
targetScale: 100000.0
}
然后运行。
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。





U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结