Starting a Globe project with Qt ?

2343
3
Jump to solution
03-31-2017 06:57 AM
FlorianCADOZ
Occasional Contributor

Hi everyone !

I am totally a beginner with Qt and I would like to test the feasibility of a 3D globe (a bit like ArcGlobe) in offline that would display a Point moving dynamically (generated by a GPS feed or something like an offline locator) with ArcGIS Runtime SDK for Qt!

1- Is it possible to do?

2- With which language? (I saw that there was QML and C ++ ... what is the best solution and why?)

3- What development environment do I need? (Visual Studio ? Witch version of Qt ? etc.)

4- And do you have some feedback on constraints? (The weight of the globe's data, the level of zoom granted, etc.)

Thank you in advance for your precious help! 😃

0 Kudos
1 Solution

Accepted Solutions
LucasDanzinger
Esri Frequent Contributor

We provide some services that you can use out of the box. They are demonstrated in this sample - Display a scene—ArcGIS Runtime SDK for Qt | ArcGIS for Developers 

It uses this as the elevation service - http://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer,

and the Esri World Imagery service as the basemap - World_Imagery (MapServer) 

If you decide to put up your own service, the size depends on the amount of detail and the area you are covering. For example, if you have a elevation service based off a 1 meter DEM for the entire globe, then it will be quite large.

You don't have to use Qt Creator if you don't want - it is just an IDE. You could use other IDEs and build via the command line if you like. However, that is the IDE most commonly used, and provides many nice utilities for Qt developers. Our entire Qt SDK development team, and most all of the customers we talk to use Qt Creator as their IDE for Qt development.

View solution in original post

3 Replies
LucasDanzinger
Esri Frequent Contributor

Hi Florian-

You should definitely be able to do that. We do something similar in our Animate 3D Symbols sample - Animate 3D symbols—ArcGIS Runtime SDK for Qt | ArcGIS for Developers 

You can use either C++ or QML - it is up to you. If you are comfortable in C++, I would recommend going that direction, because it ultimately will lead to more flexibility with writing more custom classes, handling threading, etc. But if you are from a JavaScript background, QML should come very quickly to you, and should suffice for the job as well. The performance of the API itself should be about the same, but if you need to start adding complex JS code in your QML app, you may start to find that the C++ app will get better performance.

You can develop your app using Qt's IDE - Qt Creator. We support version 5.6.2, 5.7.1, and 5.8.

As for data, you will need at least 2 things - the elevation surface and the basemap. The surface can be obtained through a Tiled Elevation Service, and the basemap can be a tiled map service or a local tile package.

I recommend you take a look at the developer page to get started Guide—ArcGIS Runtime SDK for Qt | ArcGIS for Developers. If you install Qt, install the SDK, go through samples, and copy/paste the bits you are interested in into your own app, you should be off to a good start.

-Lucas

FlorianCADOZ
Occasional Contributor

Lucas,

Thank you very much for your answer !

For the data, is there something (like a web service with AGS) given by ESRI ? Or do I need my own data ?

And for this kind of data, how much space do you think it wanna took ?

And then finally, Qt Creator isn't really needed for this kind of work isn't it ?

Thank you for your answer

Florian

0 Kudos
LucasDanzinger
Esri Frequent Contributor

We provide some services that you can use out of the box. They are demonstrated in this sample - Display a scene—ArcGIS Runtime SDK for Qt | ArcGIS for Developers 

It uses this as the elevation service - http://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer,

and the Esri World Imagery service as the basemap - World_Imagery (MapServer) 

If you decide to put up your own service, the size depends on the amount of detail and the area you are covering. For example, if you have a elevation service based off a 1 meter DEM for the entire globe, then it will be quite large.

You don't have to use Qt Creator if you don't want - it is just an IDE. You could use other IDEs and build via the command line if you like. However, that is the IDE most commonly used, and provides many nice utilities for Qt developers. Our entire Qt SDK development team, and most all of the customers we talk to use Qt Creator as their IDE for Qt development.