qt - 如何使用 ArcGisRuntime SDK 在 Qt 创建器中添加光栅图像
问题描述
这是我编写的代码,但无法显示光栅图像。
#include "Map.h"
#include "MapGraphicsView.h"
#include "Raster.h"
#include "RasterLayer.h"
using namespace Esri:: ArcGISRuntime;
Raster_example::Raster_example(QWidget* parent /*=nullptr*/):
QMainWindow(parent)
{
Raster* raster = new Raster("D:/Sony/blr.tif", this);
// Raster* raster = new Raster(buildRasterPath,this);
RasterLayer rasterLayer = new RasterLayer(raster);
// m_map.getOperationalLayers().add(rasterLayer);
// Create the Widget view
m_mapView = new MapGraphicsView(this);
以下是我运行代码时遇到的错误:
错误:没有从 'Esri::ArcGISRuntime::RasterLayer *' 到 'Esri::ArcGISRuntime::RasterLayer' 的可行转换
候选构造函数不可行:第一个参数没有从 'Esri::ArcGISRuntime::RasterLayer *' 到 'const Esri::ArcGISRuntime::RasterLayer &' 的已知转换;用 * 取消引用参数
C:\Qt\Qt5.13.0\5.13.0\msvc2017_64\include\QtCore\qglobal.h:372:从宏“Q_DISABLE_COPY”扩展
错误:C2440:“正在初始化”:无法从“Esri::ArcGISRuntime::RasterLayer *”转换为“Esri::ArcGISRuntime::RasterLayer”
没有构造函数可以采用源类型,或者构造函数重载决议不明确
解决方案
new SomeClass(...)
创建该类的实例someClass
并返回指向该类的指针。所以它应该像
RasterLayer *rasterLayer = new RasterLayer(raster);
推荐阅读
- mysql - 如何在mysql中获得以下数据集的排名?
- c++ - 访问我的自定义类中的 QQmlApplicationEngine
- javascript - Json Array 在第二个 for 循环中未定义
- javascript - 如何在node.js中显示函数的总和
- aframe - 有没有办法可以将多个材料组件添加到框架中的实体?
- python - 如何从 Google Analytics Reporting API v4 Python 中获取前 50 个会话
- r - x轴ggplot中的空间特定区域
- python - Python中具有缺失值的两组点之间的快速欧几里得距离
- python - 以更简洁的方式转储 OrderedDict
- php - Laravel 表单请求验证优先级