使用产品:supermap-iobjectscpp-10.2.0-20128-90283-win-all.zip 操作系统:win10 x64
数据类型: 文件型 (global.smwu)
开发工具:Qt5.14.2 msvc2017_64
问题描述: 先上代码:
1 void MainWindow::openMap()
2 {
...
3 UGMap* pMap = qMapControl->GetMap(); //QMapControl *qMapControl;
4 QString qStrPath = QFileDialog::getOpenFileName(this,("OpenWorkSpace"), "../data", ("SuperMapWorkspace(*.sxwu *.smwu)"));
5 if(pWorkspace->Open(Translator::QStr2UGStr(qStrPath)))
6 {
7 pMap->SetWorkspace(pWorkspace);
8 }
9 else
10 {
11 QMessageBox::critical(this,"ERROR",QString::fromLocal8Bit("工作空间打开失败!"));
12 return;
13 }
14 int iSceneSize = pWorkspace->m_SceneStorages.GetCount();
15 if (iSceneSize > 0)
16 {
17 UGString sceneName = pWorkspace->m_SceneStorages.GetNameAt(0);
18 if (!pMap->Open(sceneName))
19 {
QMessageBox::critical(this, "ERROR", QString::fromLocal8Bit("打开场景失败!"));
//return;
}
}
...
}
安装包中示例getttingStarted工程能正常加载二维地图,第 17 行代码返回值是正确的,
但是运行到 18 行失败,QMapControl 类能否加载场景?
打开extension4QT 工程也没有找到类似 QSceneControl 的类,
c++ 中存在SceneControl类可用,请问QT开发环境下如何正确加载三维场景 ?