MarbleMap Class Reference
from PyKDE4.marble import *
Inherits: QObject
Namespace: Marble.MarbleMap
Detailed Description
A class that can paint a view of the earth.
FIXME: Change this description when we are done.
This class can paint a view of the earth or any other globe, depending on which dataset is used. It can be used to show the globe in a widget like MarbleWidget does, or on any other QPaintDevice.
The projection and other view parameters that control how MarbleMap paints the map is given through the class ViewParams. If the programmer wants to allow the user to control the map, he/she has to provide a way for the user to interact with it. An example of this can be seen in the class MarbleWidgetInputHandler, that lets the user control a MarbleWidget that uses MarbleMap internally.
The MarbleMap needs to be provided with a data model to work. This model is contained in the MarbleModel class. The widget can also construct its own model if none is given to the constructor. This data model contains 3 separate datatypes: tiles which provide the background, vectors which provide things like country borders and coastlines and placemarks which can show points of interest, such as cities, mountain tops or the poles.
- See also:
- MarbleWidget
- See also:
- MarbleControlBox
- See also:
- MarbleModel
Signals | |
distanceChanged (QString distanceString) | |
framesPerSecond (float fps) | |
mouseClickGeoPosition (float lon, float lat, Marble.GeoDataCoordinates.Unit a2) | |
mouseMoveGeoPosition (QString a0) | |
projectionChanged (Marble.Projection a0) | |
repaintNeeded (QRegion dirtyRegion) | |
themeChanged (QString theme) | |
timeout () | |
zoomChanged (int zoom) | |
Methods | |
__init__ (self) | |
__init__ (self, Marble.MarbleModel model) | |
addPlacemarkData (self, QString data, QString key="data") | |
addPlacemarkFile (self, QString filename) | |
float | centerLatitude (self) |
float | centerLongitude (self) |
centerOn (self, float lon, float lat) | |
centerOn (self, QModelIndex index) | |
centerSun (self) | |
changeCurrentPosition (self, float lon, float lat) | |
clearPersistentTileCache (self) | |
clearVolatileTileCache (self) | |
customPaint (self, Marble.GeoPainter painter) | |
Marble.AngleUnit | defaultAngleUnit (self) |
QFont | defaultFont (self) |
float | distance (self) |
distanceChanged (self, QString distanceString) | |
QString | distanceString (self) |
[Marble::AbstractFloatIte] | floatItems (self) |
framesPerSecond (self, float fps) | |
bool | geoCoordinates (self, int x, int y, float lon, float lat, Marble.GeoDataCoordinates.Unit a4=Marble.GeoDataCoordinates.Degree) |
goHome (self) | |
int | height (self) |
home (self, float lon, float lat, int zoom) | |
bool | mapCoversViewport (self) |
QPixmap | mapScreenShot (self) |
QString | mapThemeId (self) |
int | maximumZoom (self) |
int | minimumZoom (self) |
Marble.MarbleModel | model (self) |
mouseClickGeoPosition (self, float lon, float lat, Marble.GeoDataCoordinates.Unit a2) | |
mouseMoveGeoPosition (self, QString a0) | |
moveDown (self) | |
moveLeft (self) | |
moveRight (self) | |
float | moveStep (self) |
moveUp (self) | |
bool | needsUpdate (self) |
int | northPoleY (self) |
notifyMouseClick (self, int x, int y) | |
openGpxFile (self, QString filename) | |
paint (self, Marble.GeoPainter painter, QRect dirtyRect) | |
quint64 | persistentTileCacheLimit (self) |
QAbstractItemModel | placemarkModel (self) |
QItemSelectionModel | placemarkSelectionModel (self) |
Marble.Quaternion | planetAxis (self) |
Marble.Projection | projection (self) |
projectionChanged (self, Marble.Projection a0) | |
bool | propertyValue (self, QString name) |
int | radius (self) |
reload (self) | |
removePlacemarkKey (self, QString key) | |
[Marble::RenderPlugi] | renderPlugins (self) |
repaintNeeded (self, QRegion dirtyRegion) | |
rotateBy (self, float deltaLon, float deltaLat) | |
rotateBy (self, Marble.Quaternion incRot) | |
bool, float (x), float (y) | screenCoordinates (self, float lon, float lat, ) |
setCenterLatitude (self, float lat) | |
setCenterLongitude (self, float lon) | |
setDefaultAngleUnit (self, Marble.AngleUnit angleUnit) | |
setDefaultFont (self, QFont font) | |
setDistance (self, float distance) | |
setHome (self, float lon, float lat, int zoom=1050) | |
setHome (self, Marble.GeoDataCoordinates homePoint, int zoom=1050) | |
setMapThemeId (self, QString maptheme) | |
setNeedsUpdate (self) | |
setPersistentTileCacheLimit (self, quint64 kiloBytes) | |
setProjection (self, Marble.Projection projection) | |
setPropertyValue (self, QString name, bool value) | |
setRadius (self, int radius) | |
setShowAtmosphere (self, bool visible) | |
setShowBorders (self, bool visible) | |
setShowCities (self, bool visible) | |
setShowClouds (self, bool visible) | |
setShowCompass (self, bool visible) | |
setShowCrosshairs (self, bool visible) | |
setShowElevationModel (self, bool visible) | |
setShowFrameRate (self, bool visible) | |
setShowGps (self, bool visible) | |
setShowGrid (self, bool visible) | |
setShowIceLayer (self, bool visible) | |
setShowLakes (self, bool visible) | |
setShowOtherPlaces (self, bool visible) | |
setShowOverviewMap (self, bool visible) | |
setShowPlaces (self, bool visible) | |
setShowRelief (self, bool visible) | |
setShowRivers (self, bool visible) | |
setShowScaleBar (self, bool visible) | |
setShowTerrain (self, bool visible) | |
setShowTileId (self, bool visible) | |
setSize (self, int width, int height) | |
setSize (self, QSize size) | |
setVolatileTileCacheLimit (self, quint64 kiloBytes) | |
bool | showAtmosphere (self) |
bool | showBorders (self) |
bool | showCities (self) |
bool | showClouds (self) |
bool | showCompass (self) |
bool | showCrosshairs (self) |
bool | showElevationModel (self) |
bool | showFrameRate (self) |
bool | showGps (self) |
bool | showGrid (self) |
bool | showIceLayer (self) |
bool | showLakes (self) |
bool | showOtherPlaces (self) |
bool | showOverviewMap (self) |
bool | showPlaces (self) |
bool | showRelief (self) |
bool | showRivers (self) |
bool | showScaleBar (self) |
bool | showTerrain (self) |
QSize | size (self) |
Marble.SunLocator | sunLocator (self) |
themeChanged (self, QString theme) | |
timeout (self) | |
updateChangedMap (self) | |
updateGps (self) | |
updateSun (self) | |
Marble.ViewParams | viewParams (self) |
quint64 | volatileTileCacheLimit (self) |
int | width (self) |
int | zoom (self) |
zoomChanged (self, int zoom) | |
zoomIn (self) | |
zoomOut (self) | |
zoomView (self, int zoom) | |
zoomViewBy (self, int zoomStep) |
Method Documentation
__init__ | ( | self ) |
__init__ | ( | self, | ||
Marble.MarbleModel | model | |||
) |
Add GeoDataPlacemark data as string to the model.
- Parameters:
-
data the string containing the Placemarks. key the string needed to identify the data
addPlacemarkFile | ( | self, | ||
QString | filename | |||
) |
Add a GeoDataPlacemark file to the model.
- Parameters:
-
filename the filename of the file containing the Placemarks.
float centerLatitude | ( | self ) |
Return the latitude of the center point.
float centerLongitude | ( | self ) |
Return the longitude of the center point.
centerOn | ( | self, | ||
float | lon, | |||
float | lat | |||
) |
Center the view on a point
- Parameters:
-
index an index for a QModel, indicating a city
centerOn | ( | self, | ||
QModelIndex | index | |||
) |
Center the view on a point
- Parameters:
-
index an index for a QModel, indicating a city
centerSun | ( | self ) |
changeCurrentPosition | ( | self, | ||
float | lon, | |||
float | lat | |||
) |
Set the current Gps position
- Parameters:
-
lat the new latitude value lon the new longitude value
clearPersistentTileCache | ( | self ) |
clearVolatileTileCache | ( | self ) |
customPaint | ( | self, | ||
Marble.GeoPainter | painter | |||
) |
Enables custom drawing onto the MarbleMap straight after the globe and before all other layers have been rendered.
- Parameters:
-
painter
Marble.AngleUnit defaultAngleUnit | ( | self ) |
QFont defaultFont | ( | self ) |
float distance | ( | self ) |
Return the current distance.
distanceChanged | ( | self, | ||
QString | distanceString | |||
) |
- Signal syntax:
QObject.connect(source, SIGNAL("distanceChanged(const const QString&)"), target_slot)
QString distanceString | ( | self ) |
Return the current distance string.
[Marble::AbstractFloatIte] floatItems | ( | self ) |
framesPerSecond | ( | self, | ||
float | fps | |||
) |
- Signal syntax:
QObject.connect(source, SIGNAL("framesPerSecond(qreal)"), target_slot)
bool geoCoordinates | ( | self, | ||
int | x, | |||
int | y, | |||
float | lon, | |||
float | lat, | |||
Marble.GeoDataCoordinates.Unit | a4=Marble.GeoDataCoordinates.Degree | |||
) |
Get the earth coordinates corresponding to a pixel in the map.
- Parameters:
-
x the x coordinate of the pixel y the y coordinate of the pixel lon the longitude angle is returned through this parameter lat the latitude angle is returned through this parameter
- Returns:
- true if the pixel (x, y) is within the globe
goHome | ( | self ) |
Center the view on the default start point with the default zoom.
int height | ( | self ) |
home | ( | self, | ||
float | lon, | |||
float | lat, | |||
int | zoom | |||
) |
get the home point
- Parameters:
-
lon the longitude of the home point. lat the latitude of the home point. zoom the default zoom level of the home point.
bool mapCoversViewport | ( | self ) |
QPixmap mapScreenShot | ( | self ) |
Return a QPixmap with the current contents of the map.
QString mapThemeId | ( | self ) |
Get the ID of the current map theme To ensure that a unique identifier is being used the theme does NOT get represented by its name but the by relative location of the file that specifies the theme:
Example: maptheme = "earth/bluemarble/bluemarble.dgml"
int maximumZoom | ( | self ) |
return the minimum zoom value for the current map theme.
int minimumZoom | ( | self ) |
return the minimum zoom value for the current map theme.
Marble.MarbleModel model | ( | self ) |
Return the model that this view shows.
mouseClickGeoPosition | ( | self, | ||
float | lon, | |||
float | lat, | |||
Marble.GeoDataCoordinates.Unit | a2 | |||
) |
- Signal syntax:
QObject.connect(source, SIGNAL("mouseClickGeoPosition(qreal, qreal, Marble::GeoDataCoordinates::Unit)"), target_slot)
mouseMoveGeoPosition | ( | self, | ||
QString | a0 | |||
) |
- Signal syntax:
QObject.connect(source, SIGNAL("mouseMoveGeoPosition(QString)"), target_slot)
moveDown | ( | self ) |
Move down by the moveStep.
moveLeft | ( | self ) |
Move left by the moveStep.
moveRight | ( | self ) |
Move right by the moveStep.
float moveStep | ( | self ) |
Return how much the map will move if one of the move slots are called.
- Returns:
- The move step.
moveUp | ( | self ) |
Move up by the moveStep.
bool needsUpdate | ( | self ) |
return if the map needs to be updated.
int northPoleY | ( | self ) |
Get the Y coordinate of the North Pole.
- Returns:
- the pixel address of the geographical north pole.
notifyMouseClick | ( | self, | ||
int | x, | |||
int | y | |||
) |
used to notify about the position of the mouse click
openGpxFile | ( | self, | ||
QString | filename | |||
) |
Opens a gpx file for viewing on the Marble Map
paint | ( | self, | ||
Marble.GeoPainter | painter, | |||
QRect | dirtyRect | |||
) |
Paint the map using a give painter.
- Parameters:
-
painter The painter to use. dirtyRect the rectangle that actually needs repainting.
quint64 persistentTileCacheLimit | ( | self ) |
Returns the limit in kilobytes of the persistent (on hard disc) tile cache.
- Returns:
- the limit of persistent tile cache in kilobytes.
QAbstractItemModel placemarkModel | ( | self ) |
returns the model for all the placemarks on the globe.
QItemSelectionModel placemarkSelectionModel | ( | self ) |
returns the selection model for all the placemarks on the globe.
Marble.Quaternion planetAxis | ( | self ) |
Return the quaternion that specifies the rotation of the globe.
- Returns:
- The quaternion that describes the rotation of the globe.
Marble.Projection projection | ( | self ) |
Get the Projection used for the map
- Returns:
- Spherical a Globe
- Returns:
- Equirectangular a flat map
- Returns:
- Mercator another flat map
projectionChanged | ( | self, | ||
Marble.Projection | a0 | |||
) |
- Signal syntax:
QObject.connect(source, SIGNAL("projectionChanged(Marble::Projection)"), target_slot)
bool propertyValue | ( | self, | ||
QString | name | |||
) |
Return the property value by name.
- Returns:
- The property value (usually: visibility).
int radius | ( | self ) |
Return the radius of the globe in pixels.
reload | ( | self ) |
Reload the currently displayed map by reloading texture tiles from the internet. In the future this should be extended to all kinds of data which is used in the map.
removePlacemarkKey | ( | self, | ||
QString | key | |||
) |
remove data or files from the model.
- Parameters:
-
key either the filename or the string used to identify the data in addPlacemarkFile and addPlacemarkData
[Marble::RenderPlugi] renderPlugins | ( | self ) |
repaintNeeded | ( | self, | ||
QRegion | dirtyRegion | |||
) |
This signal is emitted when the repaint of the view was requested. If available with the dirtyRegion which is the region the view will change in. If dirtyRegion.isEmpty() returns true, the whole viewport has to be repainted.
- Signal syntax:
QObject.connect(source, SIGNAL("repaintNeeded(QRegion)"), target_slot)
rotateBy | ( | self, | ||
float | deltaLon, | |||
float | deltaLat | |||
) |
Rotate the view by the angle specified by a Quaternion.
- Parameters:
-
incRot a quaternion specifying the rotation
rotateBy | ( | self, | ||
Marble.Quaternion | incRot | |||
) |
Rotate the view by the angle specified by a Quaternion.
- Parameters:
-
incRot a quaternion specifying the rotation
bool, float (x), float (y) screenCoordinates | ( | self, | ||
float | lon, | |||
float | lat, | |||
) |
Get the screen coordinates corresponding to geographical coordinates in the map.
- Parameters:
-
lon the lon coordinate of the requested pixel position lat the lat coordinate of the requested pixel position x the x coordinate of the pixel is returned through this parameter y the y coordinate of the pixel is returned through this parameter
- Returns:
- true if the geographical coordinates are visible on the screen
setCenterLatitude | ( | self, | ||
float | lat | |||
) |
Set the latitude for the center point
- Parameters:
-
lat the new value for the latitude
setCenterLongitude | ( | self, | ||
float | lon | |||
) |
Set the longitude for the center point
- Parameters:
-
lon the new value for the longitude
setDefaultAngleUnit | ( | self, | ||
Marble.AngleUnit | angleUnit | |||
) |
setDefaultFont | ( | self, | ||
QFont | font | |||
) |
setDistance | ( | self, | ||
float | distance | |||
) |
Set the distance of the observer to the globe in km.
- Parameters:
-
distance The new distance in km.
setHome | ( | self, | ||
float | lon, | |||
float | lat, | |||
int | zoom=1050 | |||
) |
Set the home point
- Parameters:
-
homePoint the new home point. zoom the default zoom level for the new home point.
setHome | ( | self, | ||
Marble.GeoDataCoordinates | homePoint, | |||
int | zoom=1050 | |||
) |
Set the home point
- Parameters:
-
homePoint the new home point. zoom the default zoom level for the new home point.
setMapThemeId | ( | self, | ||
QString | maptheme | |||
) |
Set a new map theme
- Parameters:
-
maptheme The ID of the new maptheme. To ensure that a unique identifier is being used the theme does NOT get represented by its name but the by relative location of the file that specifies the theme:
Example: maptheme = "earth/bluemarble/bluemarble.dgml"
setNeedsUpdate | ( | self ) |
Mark the map as needing an update.
setPersistentTileCacheLimit | ( | self, | ||
quint64 | kiloBytes | |||
) |
Set the limit of the persistent (on hard disc) tile cache.
- Parameters:
-
bytes The limit in kilobytes, 0 means no limit.
setProjection | ( | self, | ||
Marble.Projection | projection | |||
) |
Set the Projection used for the map
- Parameters:
-
projection projection type (e.g. Spherical, Equirectangular, Mercator)
setPropertyValue | ( | self, | ||
QString | name, | |||
bool | value | |||
) |
Sets the value of a map theme property
- Parameters:
-
value value of the property (usually: visibility)
Later on we might add a "setPropertyType and a QVariant if needed.
setRadius | ( | self, | ||
int | radius | |||
) |
Set the radius of the globe in pixels.
- Parameters:
-
radius The new globe radius value in pixels.
setShowAtmosphere | ( | self, | ||
bool | visible | |||
) |
Set whether the atmospheric glow is visible
- Parameters:
-
visible visibility of the atmospheric glow
setShowBorders | ( | self, | ||
bool | visible | |||
) |
Set whether the borders visible
- Parameters:
-
visible visibility of the borders
setShowCities | ( | self, | ||
bool | visible | |||
) |
Set whether the city place mark overlay is visible
- Parameters:
-
visible visibility of the city place marks
setShowClouds | ( | self, | ||
bool | visible | |||
) |
Set whether the cloud cover is visible
- Parameters:
-
visible visibility of the cloud cover
setShowCompass | ( | self, | ||
bool | visible | |||
) |
Set whether the compass overlay is visible
- Parameters:
-
visible visibility of the compass
setShowCrosshairs | ( | self, | ||
bool | visible | |||
) |
Set whether the crosshairs are visible
- Parameters:
-
visible visibility of the crosshairs
setShowElevationModel | ( | self, | ||
bool | visible | |||
) |
Set whether the elevation model is visible
- Parameters:
-
visible visibility of the elevation model
setShowFrameRate | ( | self, | ||
bool | visible | |||
) |
Set whether the frame rate gets shown
- Parameters:
-
visible visibility of the frame rate
setShowGps | ( | self, | ||
bool | visible | |||
) |
Set whether Gps Data is visible
- Parameters:
-
visible visibility of the Gps Data
setShowGrid | ( | self, | ||
bool | visible | |||
) |
Set whether the coordinate grid overlay is visible
- Parameters:
-
visible visibility of the coordinate grid
setShowIceLayer | ( | self, | ||
bool | visible | |||
) |
Set whether the ice layer is visible
- Parameters:
-
visible visibility of the ice layer
setShowLakes | ( | self, | ||
bool | visible | |||
) |
Set whether the lakes are visible
- Parameters:
-
visible visibility of the lakes
setShowOtherPlaces | ( | self, | ||
bool | visible | |||
) |
Set whether the other places overlay is visible
- Parameters:
-
visible visibility of other places
setShowOverviewMap | ( | self, | ||
bool | visible | |||
) |
Set whether the overview map overlay is visible
- Parameters:
-
visible visibility of the overview map
setShowPlaces | ( | self, | ||
bool | visible | |||
) |
Set whether the place mark overlay is visible
- Parameters:
-
visible visibility of the place marks
setShowRelief | ( | self, | ||
bool | visible | |||
) |
Set whether the relief is visible
- Parameters:
-
visible visibility of the relief
setShowRivers | ( | self, | ||
bool | visible | |||
) |
Set whether the rivers are visible
- Parameters:
-
visible visibility of the rivers
setShowScaleBar | ( | self, | ||
bool | visible | |||
) |
Set whether the scale bar overlay is visible
- Parameters:
-
visible visibility of the scale bar
setShowTerrain | ( | self, | ||
bool | visible | |||
) |
Set whether the terrain place mark overlay is visible
- Parameters:
-
visible visibility of the terrain place marks
setShowTileId | ( | self, | ||
bool | visible | |||
) |
Set whether the is tile is visible NOTE: This is part of the transitional debug API and might be subject to changes until Marble 0.8
- Parameters:
-
visible visibility of the tile
setSize | ( | self, | ||
int | width, | |||
int | height | |||
) |
setSize | ( | self, | ||
QSize | size | |||
) |
setVolatileTileCacheLimit | ( | self, | ||
quint64 | kiloBytes | |||
) |
Set the limit of the volatile (in RAM) tile cache.
- Parameters:
-
bytes The limit in kilobytes.
bool showAtmosphere | ( | self ) |
Return whether the atmospheric glow is visible.
- Returns:
- The cloud cover visibility.
bool showBorders | ( | self ) |
Return whether the borders are visible.
- Returns:
- The border visibility.
bool showCities | ( | self ) |
Return whether the city place marks are visible.
- Returns:
- The city place mark visibility.
bool showClouds | ( | self ) |
Return whether the cloud cover is visible.
- Returns:
- The cloud cover visibility.
bool showCompass | ( | self ) |
Return whether the compass bar is visible.
- Returns:
- The compass visibility.
bool showCrosshairs | ( | self ) |
Return whether the crosshairs are visible.
- Returns:
- The crosshairs' visibility.
bool showElevationModel | ( | self ) |
Return whether the elevation model is visible.
- Returns:
- The elevation model visibility.
bool showFrameRate | ( | self ) |
Return whether the frame rate gets displayed.
- Returns:
- the frame rates visibility
bool showGps | ( | self ) |
Return whether Gps Data is visible.
- Returns:
- The Gps Data's visibility.
bool showGrid | ( | self ) |
Return whether the coordinate grid is visible.
- Returns:
- The coordinate grid visibility.
bool showIceLayer | ( | self ) |
Return whether the ice layer is visible.
- Returns:
- The ice layer visibility.
bool showLakes | ( | self ) |
Return whether the lakes are visible.
- Returns:
- The lakes' visibility.
bool showOtherPlaces | ( | self ) |
Return whether other places are visible.
- Returns:
- The visibility of other places.
bool showOverviewMap | ( | self ) |
Return whether the overview map is visible.
- Returns:
- The overview map visibility.
bool showPlaces | ( | self ) |
Return whether the place marks are visible.
- Returns:
- The place mark visibility.
bool showRelief | ( | self ) |
Return whether the relief is visible.
- Returns:
- The relief visibility.
bool showRivers | ( | self ) |
Return whether the rivers are visible.
- Returns:
- The rivers' visibility.
bool showScaleBar | ( | self ) |
Return whether the scale bar is visible.
- Returns:
- The scale bar visibility.
bool showTerrain | ( | self ) |
Return whether the terrain place marks are visible.
- Returns:
- The terrain place mark visibility.
QSize size | ( | self ) |
Marble.SunLocator sunLocator | ( | self ) |
Return the sun locator object.
- Returns:
- the sun locator object
themeChanged | ( | self, | ||
QString | theme | |||
) |
Signal that the theme has changed
- Parameters:
-
theme Name of the new theme.
- Signal syntax:
QObject.connect(source, SIGNAL("themeChanged(QString)"), target_slot)
timeout | ( | self ) |
- Signal syntax:
QObject.connect(source, SIGNAL("timeout()"), target_slot)
updateChangedMap | ( | self ) |
Update the map because the model changed.
updateGps | ( | self ) |
updates the gps tracking point by polling
updateSun | ( | self ) |
Marble.ViewParams viewParams | ( | self ) |
quint64 volatileTileCacheLimit | ( | self ) |
Returns the limit in kilobytes of the volatile (in RAM) tile cache.
- Returns:
- the limit of volatile tile cache in kilobytes.
int width | ( | self ) |
int zoom | ( | self ) |
Return the current zoom level.
zoomChanged | ( | self, | ||
int | zoom | |||
) |
Signal that the zoom has changed, and to what.
- Parameters:
-
zoom The new zoom value.
- See also:
- zoomView()
- Signal syntax:
QObject.connect(source, SIGNAL("zoomChanged(int)"), target_slot)
zoomIn | ( | self ) |
Zoom in by the amount zoomStep.
zoomOut | ( | self ) |
Zoom out by the amount zoomStep.
zoomView | ( | self, | ||
int | zoom | |||
) |
Zoom the view to a certain zoomlevel
- Parameters:
-
zoom the new zoom level.
The zoom level is an abstract value without physical interpretation. A zoom value around 1000 lets the viewer see all of the earth in the default window.
zoomViewBy | ( | self, | ||
int | zoomStep | |||
) |
Zoom the view by a certain step
- Parameters:
-
zoomStep the difference between the old zoom and the new