QT 5.15.2 开发地图ArcGIS 100.15.6(ArcGIS Runtime SDK for Qt)
- QT 5.15.2
- ArcGIS下载
Downloads | ArcGIS Runtime API for Qt | Esri Developer
- ArcGIS安装(略)
- 参考
Display a map | ArcGIS Maps SDK for Qt | Esri Developer
- QT新建工程
步骤1
步骤2
步骤3
步骤4(选择Topographic不需要KEY)
步骤5(必须是MSVC2019 64bit!)
步骤6
- 清理文件
QT新建ArcGIS工程,编译报错:\BookmarkListModel.h:100: error: C2039: “in“: 不是 “Esri::ArcGISRuntime“ 的成员-CSDN博客
- 下载测试地图数据
https://download.csdn.net/download/quantum7/90369309
- 修改代码
打开文件,修改参考如下:
// Other headers
#include "ArcGISMapDemo.h"#include "Map.h"
#include "MapGraphicsView.h"
#include "TileCache.h"
#include "ArcGISTiledLayer.h"#define TPK_FILE "D:\\SVN-WORK\\SourceCode\\ResearchWork\\ArcGISMapDemo\\map-tpk-for-test\\gis.tpk"using namespace Esri::ArcGISRuntime;ArcGISMapDemo::ArcGISMapDemo(QWidget *parent /*=nullptr*/): QMainWindow(parent)
{// Create a map using the ArcGISTopographic BasemapStyle//m_map = new Map(BasemapStyle::ArcGISTopographic, this);TileCache* tileCache = new TileCache(TPK_FILE, this);ArcGISTiledLayer* tiledLayer = new ArcGISTiledLayer(tileCache, this);Basemap* basemap = new Basemap(tiledLayer, this);m_map = new Map(basemap, this);// Create the Widget viewm_mapView = new MapGraphicsView(this);// Set map to map viewm_mapView->setMap(m_map);// set the mapView as the central widgetsetCentralWidget(m_mapView);
}// destructor
ArcGISMapDemo::~ArcGISMapDemo() {}