Сбой приложения osgEarthQt при запуске с ошибкой

Я использую Qt 5.11.2 / osgEarth 2.9.0.

Когда я пытаюсь запустить приведенный ниже код, я получаю сообщение об ошибке:

Невозможно сделать QOpenGLContext текущим в другом потоке

Я пытался найти решение в Интернете, но нашел только похожие ситуации, когда люди просто переписывали часть своего кода, даже без osgEarth. Но если вы удалите вывод Qt из моего кода (последние 2 строки)), все работает хорошо, из чего я заключил, что проблема не в моем коде. Может я забыл установить какой-нибудь пакет? Или неправильно установил?

Код:

Viewer *viewer = new Viewer();
EarthManipulator *manipulator = new EarthManipulator();
viewer->setLightingMode(osg::View::NO_LIGHT);
viewer->getCamera()->setSmallFeatureCullingPixelSize(-1.0f);
viewer->setCameraManipulator(manipulator);

Map map = new Map();
MapNode mapnode = new MapNode(map);

Drivers::XYZOptions xyz;
xyz.url() = "http://[abc].tile.openstreetmap.org/{z}/{x}/{y}.png";
xyz.profile()->namedProfile() = "spherical-mercator";
ImageLayer* imageLayer = new ImageLayer("OSM", xyz);
map->addLayer(imageLayer);

viewer->setSceneData(mapnode);
MapNodeHelper().configureView(viewer);

QWidget *viewerWidget = new ViewerWidget(viewer);
layout->addWidget(viewerWidget);

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]