Difference between revisions of "Projects/Marble"

Jump to: navigation, search
(Mapping Coordination)
(98 intermediate revisions by 31 users not shown)
Line 1: Line 1:
{{Template:I18n/Language Navigation Bar|Projects/Marble}}
 
  
__NOTOC__
+
 
 
[[Image:Marble_logo.png]]
 
[[Image:Marble_logo.png]]
  
 
== About Marble ==
 
== About Marble ==
 +
;[[/Devices_and_Use_Cases|Devices and Use Cases]]
 
;[[/FAQ|Marble FAQ]]
 
;[[/FAQ|Marble FAQ]]
  
== Using the Marble Widget in other applications ==
+
== Success Stories: 3rd party applications using the Marble Library==
;[[/MarbleDesigner|with QtDesigner]]
+
;[[/MarbleUsedBy|Software that makes use of Marble]]
;[[/MarbleCPlusPlus|with C++]]
+
 
 +
== Tutorials: How to use the Marble Widget in your application ==
 +
;[[/MarbleDesigner|with Qt Designer]]
 +
;[[/MarbleWindows|On Windows, with Qt Creator/Qt Designer]]
 +
 
 +
=== With C++ ===
 +
;[[/MarbleCPlusPlus|Hello World]]
 +
;[[/MarbleMarbleWidget|Changing basic map properties]]
 +
;[[/MarbleSignalsSlots|Creating a window with controls]]
 +
;[[/MarbleGeoPainter|Painting onto the map]]
 +
;[[/LayerInterface|Drawing in Custom Layers]]
 +
;[[/Routing/BasicRouting|Basic Routing]]
 +
;[[/Runners/Search|Searching for Points of Interest]]
 +
;[[/Runners/ReverseGeocoding|Reverse Geocoding]]
 +
;[[/Runners/Parse|Parsing Files]]
 +
;[[/Runners/PaintingGeoDataLineString|Painting LineString]]
 +
;[[/Runners/DisplayGeoDataPlacemark|Displaying GeoData Documents]]
 +
 
 
;[[/MarblePython|with Python]]
 
;[[/MarblePython|with Python]]
  
 +
;[[/MarbleDBus|via a shell script]]
 +
 +
== How to become a Marble developer ("Marblehead") ==
 +
 +
=== So you are new to Marble development ... ===
 +
 +
<b>Welcome!</b>
 +
 +
Here you'll get all the information you need to start Marble development:
 +
 +
;[[/GoMarble|How to become a Marble Developer]]
 +
 +
== Compiling Marble ==
 +
;[[/LinuxCompiling|Compiling on Linux]]
 +
;[[/WindowsCompiling|Compiling on Windows]]
 +
;[[/MaemoEnvironment|Compiling on Maemo]]
 +
;[[/MeeGoEnvironment|Compiling on MeeGo]]
 +
;[[/PlasmaActiveEnvironment|Compiling for Plasma Active]]
 +
;[[/MacCompiling|Compiling on Mac OS]]
 +
;[[/QtCreator|Setting up QtCreator for Marble Development]]
 +
 +
== Packaging Marble ==
 +
 +
;[[/NewMarbleMoldules|New Marble Modules]] (future packaging advice)
 +
 +
Here is some advice about how packaging is supposed to happen on the various platforms that are supported.
 +
 +
;[[/LinuxPackaging|Packaging for Linux]]
 +
;[[/WindowsPackaging|Packaging for Windows]]
 +
;[[/MaemoPackaging|Packaging for Maemo]]
 +
;[[/MeeGoPackaging|Packaging for MeeGo]]
 +
;[[/MacPackaging|Packaging for Mac]]
 +
 +
== Tools for Marble ==
 +
 +
Here are some tools and checks that are performed on marble code:
 +
;[https://bugs.kde.org/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&product=marble&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&cmdtype=doit&order=Importance Marble Open Bugs]
 +
;[http://reviewboard.kde.org/groups/marble/ Review Board]
 +
;[http://api.kde.org/4.x-api/kdeedu-apidocs/marble/html/index.html API Docs (KDE Trunk)]
 +
;[http://www.englishbreakfastnetwork.org/apidocs/apidox-kde-4.x/kdeedu-marble.html APIDOX reports]
 +
;[http://www.englishbreakfastnetwork.org/krazy/reports/kde-4.x/kdeedu/marble/index.html Krazy reports]
  
 
== Programming Coordination ==
 
== Programming Coordination ==
 +
 +
Here are a few links to various issues we are working on:
 +
;[[/Gsoc2010| Gsoc Students projects 2010]]
 +
;[[/GsocGit| Use of git(orious) for GSOC]]
 +
;[[/TODO|TODO list]]
 +
;[[/MaemoTODO|Maemo specific TODO list]]
 +
 +
;[[/GSoC2011| GSoC Students' projects 2011]]
 +
;[http://community.kde.org/SoCiS/2011/Ideas#Marble_Virtual_Globe ESA SoCIS 2011 ideas]
 +
 +
;[[/GSoC2012| GSoC Students' projects 2012]]
 +
 +
=== Translation ===
 +
;[[/MapTranslation|Map Translation]]
 +
;[[/UiTranslation|UI Translation]]
 +
;[[/GeoDataCoordinatesTranslation|GeoDataCoordinates Translation]]
 +
 
=== User Interface ===
 
=== User Interface ===
 
;[[/Mockups|Mockups]]
 
;[[/Mockups|Mockups]]
 +
;[[/IconStatus|Icon Status]]
 +
 +
=== Texture Mapping ===
 +
;[[/TextureNG|Texture Mapping]]
  
 
=== GeoData Library / KML ===
 
=== GeoData Library / KML ===
;[[/LibGeoData|GeoData Library]]
+
The base classes to manipulate geographic data
 +
;[[/GeoData|GeoData Presentation]]
 +
;[[/GeoData/GeoDataUse|Use cases for GeoData classes]]
 +
;[http://websvn.kde.org/*checkout*/trunk/KDE/kdeedu/marble/src/lib/geodata/data/README.html GeoData API Description]
 +
;[[/GeoData/GeoDataParsing|Parsing GeoData]]
 +
;[[/GeoData/GeoDataWriter|Writing GeoData]]
 +
;[[/GeoData/PointerVsImplicitShare|Pointer vs. Implicit Share]]
 +
 
 +
 
 
;[[/KMLStatus|KML Status]]
 
;[[/KMLStatus|KML Status]]
 
;[[/GPXStatus|GPX Status]]
 
;[[/GPXStatus|GPX Status]]
 +
 +
Using GeoData:
 +
;[[/Placemark|Placemarks Management]]
 +
;[[/ModelView|Review of Model-View use in marble]]
 +
 +
=== Geo Graphics View ===
 +
;[[/GeoGraphicsViewOverview|Overview of the GeoGraphicsView]]
 +
;[[/GraphicsViewGeoParser| Interaction between GeoData and GeoGraphicsView]]
  
 
=== GeoPainter / DGML ===
 
=== GeoPainter / DGML ===
 
;[[/GeoPainter|GeoPainter]]
 
;[[/GeoPainter|GeoPainter]]
 
;[[/Dgml|DGML]]
 
;[[/Dgml|DGML]]
 +
 +
=== Plugin Interfaces ===
 +
;[[/Plugins|Plugin interfaces]]
  
 
=== Marble Runner ===
 
=== Marble Runner ===
 
;[[/CoordinateRunner|Coordinate Runner]]
 
;[[/CoordinateRunner|Coordinate Runner]]
 
;[[/OsmNameFinderRunner|OSM Runner]]
 
;[[/OsmNameFinderRunner|OSM Runner]]
 +
;[[/RunnerHOWTO|Runner HOWTO]]
 +
 +
=== Online Services ===
 +
;[[/OnlineServices|Creating new Online Services]]
 +
;[[/ListOfPossibleOnlineServices|List of possible Online Services]]
  
 
=== Projections ===
 
=== Projections ===
 
;[[/WinkelIii|Winkel III]]
 
;[[/WinkelIii|Winkel III]]
 +
;[[/RobinsonProjection|Robinson projection]]
 +
[http://www.radicalcartography.net/?projectionref A little overview of map projections]
 +
 +
=== Tile Download ===
 +
;[[/VectorTilingProposal|Vector Tiling Proposal]]
 +
;[[/TileDownload|Tile Download]]
  
 
=== Documentation ===
 
=== Documentation ===
;[[/ApiDocs|API Docs]]
 
 
;[[/CustomMaps|How to customize maps]]
 
;[[/CustomMaps|How to customize maps]]
 +
;[[/PNTFiles|How to change the PNT files used by Marble]]
 
;[[/MarblesSecrets|Marble's Secrets]]
 
;[[/MarblesSecrets|Marble's Secrets]]
 +
;[[/ProxyConnection|How to use the Proxy]]
 +
 +
=== GeoClue / GPS ===
 +
;[[/GeoClue|GeoClue support in Marble]]
 +
 +
=== XDG Base Directory Specification ===
 +
;[[/xdg|XDG Base Directory Specification]]
  
 
== Mapping Coordination ==
 
== Mapping Coordination ==
 +
Possible maps we could use:
 +
* [http://pelagios.dme.ait.ac.at/maps/greco-roman/ Tiled map of the classical world] see the [http://pelagios-project.blogspot.co.uk/2012/09/a-digital-map-of-roman-empire.html authors blog] for details
 +
* [http://www.unearthedoutdoors.net/global_data/true_marble/download TrueMarble Global 250m images]
 +
* [http://onearth.jpl.nasa.gov/ OnEarth NASA satellite images]
 +
* [http://worldwindcentral.com/wiki/Add-on:ZoomIt! ZoomIt! (in parts proprietary)]
 +
* [http://sos.noaa.gov/datasets/ NOAA Science on a Sphere]
 +
* [http://efele.net/maps/tz/world/ Olsen Time Zone map in Shapefile format].  Public Domain.  Scripted to generate from current tz file.
 +
 +
=== Natural Earth Vector Map ===
 +
;[[/NaturalEarth|A proposal to use the Natural Earth vector map]]
 +
 +
 
=== Documentation ===
 
=== Documentation ===
 
;[[/HistoricalMaps|How to create Historical Maps]]
 
;[[/HistoricalMaps|How to create Historical Maps]]
 +
;[[/CustomMaps|How to create Custom Maps]]
 +
 +
;[[/PalaeoMaps|Global Palaeogeography]]
 +
 +
== Routing ==
 +
;[[/OnlineRoutingImplementation|Implementation of Online-Routing]]
 +
;[[/MaemoOfflineRouting|Installation of Marble and Gosmore on Maemo]]
 +
;[[/RoutingRoadmap|Routing Roadmap]]
 +
;[[/RoutingInstructions|Routing Instructions]]
 +
 +
== valgrind  ==
 +
if you want to fix memory leaks, you can run valgrind with:
 +
 +
valgrind --leak-check=full --track-origins=yes --num-callers=30 marble 2>&1 | tee MARBLE_MEMCHECK
  
 
== Meetings ==
 
== Meetings ==
 
Summaries and logs of scheduled Marble meetings can be found on the following pages:
 
Summaries and logs of scheduled Marble meetings can be found on the following pages:
 
;[[/MarbleMeeting20081029|Wednesday Nov. 10th, 2008]]
 
;[[/MarbleMeeting20081029|Wednesday Nov. 10th, 2008]]
 +
 +
;[[/MarbleMeeting20101107|Marble Weekend Sprint, Nov. 5-7]]

Revision as of 21:50, 19 September 2012


Marble logo.png

Contents

About Marble

Devices and Use Cases
Marble FAQ

Success Stories: 3rd party applications using the Marble Library

Software that makes use of Marble

Tutorials: How to use the Marble Widget in your application

with Qt Designer
On Windows, with Qt Creator/Qt Designer

With C++

Hello World
Changing basic map properties
Creating a window with controls
Painting onto the map
Drawing in Custom Layers
Basic Routing
Searching for Points of Interest
Reverse Geocoding
Parsing Files
Painting LineString
Displaying GeoData Documents
with Python
via a shell script

How to become a Marble developer ("Marblehead")

So you are new to Marble development ...

Welcome!

Here you'll get all the information you need to start Marble development:

How to become a Marble Developer

Compiling Marble

Compiling on Linux
Compiling on Windows
Compiling on Maemo
Compiling on MeeGo
Compiling for Plasma Active
Compiling on Mac OS
Setting up QtCreator for Marble Development

Packaging Marble

New Marble Modules (future packaging advice)

Here is some advice about how packaging is supposed to happen on the various platforms that are supported.

Packaging for Linux
Packaging for Windows
Packaging for Maemo
Packaging for MeeGo
Packaging for Mac

Tools for Marble

Here are some tools and checks that are performed on marble code:

Marble Open Bugs
Review Board
API Docs (KDE Trunk)
APIDOX reports
Krazy reports

Programming Coordination

Here are a few links to various issues we are working on:

Gsoc Students projects 2010
Use of git(orious) for GSOC
TODO list
Maemo specific TODO list
GSoC Students' projects 2011
ESA SoCIS 2011 ideas
GSoC Students' projects 2012

Translation

Map Translation
UI Translation
GeoDataCoordinates Translation

User Interface

Mockups
Icon Status

Texture Mapping

Texture Mapping

GeoData Library / KML

The base classes to manipulate geographic data

GeoData Presentation
Use cases for GeoData classes
GeoData API Description
Parsing GeoData
Writing GeoData
Pointer vs. Implicit Share


KML Status
GPX Status

Using GeoData:

Placemarks Management
Review of Model-View use in marble

Geo Graphics View

Overview of the GeoGraphicsView
Interaction between GeoData and GeoGraphicsView

GeoPainter / DGML

GeoPainter
DGML

Plugin Interfaces

Plugin interfaces

Marble Runner

Coordinate Runner
OSM Runner
Runner HOWTO

Online Services

Creating new Online Services
List of possible Online Services

Projections

Winkel III
Robinson projection

A little overview of map projections

Tile Download

Vector Tiling Proposal
Tile Download

Documentation

How to customize maps
How to change the PNT files used by Marble
Marble's Secrets
How to use the Proxy

GeoClue / GPS

GeoClue support in Marble

XDG Base Directory Specification

XDG Base Directory Specification

Mapping Coordination

Possible maps we could use:

Natural Earth Vector Map

A proposal to use the Natural Earth vector map


Documentation

How to create Historical Maps
How to create Custom Maps
Global Palaeogeography

Routing

Implementation of Online-Routing
Installation of Marble and Gosmore on Maemo
Routing Roadmap
Routing Instructions

valgrind

if you want to fix memory leaks, you can run valgrind with:

valgrind --leak-check=full --track-origins=yes --num-callers=30 marble 2>&1 | tee MARBLE_MEMCHECK

Meetings

Summaries and logs of scheduled Marble meetings can be found on the following pages:

Wednesday Nov. 10th, 2008
Marble Weekend Sprint, Nov. 5-7

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal