Registered Member
|
Hello!
The Marble Virtual Globe has the ability to show satellites and their orbits (I mean "View -> Online Services -> Satellites"). Prompt, please, can I add this feature to my app? If so, where I can read and see examples on how this is done? The ephemerides of the satellites is planned to take from the SP3-files. Thanks in advance for your help. |
KDE Developer
|
Yes, you can show satellites in your own app easily:
The whole functionality is implemented as a plugin. So the only thing you need to do in your code is enabling the plugin. This can be accomplished like this: You can get hold of all render plugins via: QList<RenderPlugin *> MarbleWidget::renderPlugins() const With this information you can enable the satellite plugin using the same approach that is used for the compass floatitem in https://techbase.kde.org/Marble/MarbleMarbleWidget |
Registered Member
|
Thanks for your answer! But so far I can't do it
1. When I have tried to enable plugins using the 15.08 release of marble, qt-4.8.6 (openSuse 42.1), I got such outputs: Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libAnnotatePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libAnnotatePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libAprsPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libAprsPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libAtmospherePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libAtmospherePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libCachePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libCachePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libCompassFloatItem.so" Reason: "The file '/usr/lib64/marble/plugins/libCompassFloatItem.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libCrosshairsPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libCrosshairsPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libCycleStreetsPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libCycleStreetsPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libEarthquakePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libEarthquakePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libEclipsesPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libEclipsesPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libElevationProfileFloatItem.so" Reason: "The file '/usr/lib64/marble/plugins/libElevationProfileFloatItem.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libElevationProfileMarker.so" Reason: "The file '/usr/lib64/marble/plugins/libElevationProfileMarker.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libFlightGearPositionProviderPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libFlightGearPositionProviderPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libFoursquarePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libFoursquarePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGosmoreReverseGeocodingPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libGosmoreReverseGeocodingPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGosmoreRoutingPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libGosmoreRoutingPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGpsInfo.so" Reason: "The file '/usr/lib64/marble/plugins/libGpsInfo.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGpsbabelPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libGpsbabelPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGpsdPositionProviderPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libGpsdPositionProviderPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGpxPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libGpxPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libGraticulePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libGraticulePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libHostipPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libHostipPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libJsonPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libJsonPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libKmlPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libKmlPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libLatLonPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libLatLonPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libLicense.so" Reason: "The file '/usr/lib64/marble/plugins/libLicense.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libLocalDatabasePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libLocalDatabasePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libLocalOsmSearchPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libLocalOsmSearchPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libLogPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libLogPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libMapQuestPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libMapQuestPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libMapScaleFloatItem.so" Reason: "The file '/usr/lib64/marble/plugins/libMapScaleFloatItem.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libMeasureTool.so" Reason: "The file '/usr/lib64/marble/plugins/libMeasureTool.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libMonavPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libMonavPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libNavigationFloatItem.so" Reason: "The file '/usr/lib64/marble/plugins/libNavigationFloatItem.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libNominatimReverseGeocodingPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libNominatimReverseGeocodingPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libNominatimSearchPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libNominatimSearchPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libOSRMPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libOSRMPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libOpenCachingComPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libOpenCachingComPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libOpenDesktopPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libOpenDesktopPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libOpenRouteServicePlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libOpenRouteServicePlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libOsmPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libOsmPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libOverviewMap.so" Reason: "The file '/usr/lib64/marble/plugins/libOverviewMap.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libPhoto.so" Reason: "The file '/usr/lib64/marble/plugins/libPhoto.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libPn2Plugin.so" Reason: "The file '/usr/lib64/marble/plugins/libPn2Plugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libPntPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libPntPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libPositionMarker.so" Reason: "The file '/usr/lib64/marble/plugins/libPositionMarker.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libPostalCode.so" Reason: "The file '/usr/lib64/marble/plugins/libPostalCode.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libProgressFloatItem.so" Reason: "The file '/usr/lib64/marble/plugins/libProgressFloatItem.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libRoutingPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libRoutingPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libRoutinoPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libRoutinoPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libSatellitesPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libSatellitesPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libSpeedometer.so" Reason: "The file '/usr/lib64/marble/plugins/libSpeedometer.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libStarsPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libStarsPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libSunPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libSunPlugin.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libWeather.so" Reason: "The file '/usr/lib64/marble/plugins/libWeather.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libWikipedia.so" Reason: "The file '/usr/lib64/marble/plugins/libWikipedia.so' is not a valid Qt plugin." Ignoring to load the following file since it doesn't look like a valid Marble plugin: "/usr/lib64/marble/plugins/libYoursPlugin.so" Reason: "The file '/usr/lib64/marble/plugins/libYoursPlugin.so' is not a valid Qt plugin." Object::connect: No such signal MarbleWebView::titleChanged(QString) Object::connect: (sender name: 'webView') Object::connect: (receiver name: 'titleText') Object::connect: No such signal MarbleWebView::urlChanged(QUrl) Object::connect: (sender name: 'webView') libpng warning: iCCP: profile 'ICC Profile': 1000000h: invalid rendering intent Сorrespondingly, QList<RenderPlugin *> MarbleWidget::renderPlugins() is empty. Do I understand correctly that I should recompiling qt and/or marble to fix this problem? 2. When I have tried to enable plugins using another computer - the 4.10.5 release of marble, qt-4.8.4 (openSuse 12.3), QList of RenderPlugin* contains some plugins, but while I don't quite understand how to add data about the satellite and to display it on the MarbleWidget. Probably I should use this function: bool Marble::SatellitesPlugin::render ( GeoPainter * painter, ViewportParams * viewport, const QString & renderPos, GeoSceneLayer * layer ) |
KDE Developer
|
1. looks like a Qt version mismatch to me.
As for 2. It would be great if you could tell what you're trying to accomplish. Note that it's possible to add your own Satellite Data Sources inside the Marble application (and therefore also in your own application) by entering Settings -> Configure Marble -> Plugins Press the wrench icon next to the Satellites entry and press the "Data Sources" tab. Check the toolbar icons on that page. Also check the docs at https://techbase.kde.org/Projects/Marbl ... alogFormat |
Registered Member
|
hi
how show satelite and orbit manualy without use of plugin like previsat? tanks |
Registered users: bartoloni, Bing [Bot], Google [Bot], Sogou [Bot], Yahoo [Bot]