Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QGraphicsGeoMap Class Reference

The QGraphicsGeoMap class is used to display a map and manager the interactions between the user and the map. More...

 #include <QGraphicsGeoMap>

Inherits QGraphicsWidget.

Public Types

enum ConnectivityMode { NoConnectivity, OfflineMode, OnlineMode, HybridMode }
enum MapType { NoMap, StreetMap, SatelliteMapDay, SatelliteMapNight, TerrainMap }

Properties

Public Functions

QGraphicsGeoMap ( QGeoMappingManager * manager, QGraphicsItem * parent = 0 )
virtual ~QGraphicsGeoMap ()
void addMapObject ( QGeoMapObject * mapObject )
void addMapOverlay ( QGeoMapOverlay * overlay )
QGeoCoordinate center () const
void clearMapObjects ()
void clearMapOverlays ()
ConnectivityMode connectivityMode () const
QPointF coordinateToScreenPosition ( const QGeoCoordinate & coordinate ) const
void fitInViewport ( const QGeoBoundingBox & bounds, bool preserveViewportCenter = false )
QList<QGeoMapObject *> mapObjects () const
QList<QGeoMapObject *> mapObjectsAtScreenPosition ( const QPointF & screenPosition ) const
QList<QGeoMapObject *> mapObjectsInScreenRect ( const QRectF & screenRect ) const
QList<QGeoMapObject *> mapObjectsInViewport () const
QList<QGeoMapOverlay *> mapOverlays () const
MapType mapType () const
qreal maximumZoomLevel () const
qreal minimumZoomLevel () const
void removeMapObject ( QGeoMapObject * mapObject )
void removeMapOverlay ( QGeoMapOverlay * overlay )
QGeoCoordinate screenPositionToCoordinate ( QPointF screenPosition ) const
void setCenter ( const QGeoCoordinate & center )
void setConnectivityMode ( ConnectivityMode connectivityMode )
void setMapType ( MapType mapType )
void setZoomLevel ( qreal zoomLevel )
QList<ConnectivityMode> supportedConnectivityModes () const
QList<MapType> supportedMapTypes () const
QGeoBoundingBox viewport () const
qreal zoomLevel () const

Reimplemented Public Functions

virtual void paint ( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * parent )
virtual QPainterPath shape () const

Public Slots

void pan ( int dx, int dy )

Signals

void centerChanged ( const QGeoCoordinate & coordinate )
void connectivityModeChanged ( QGraphicsGeoMap::ConnectivityMode connectivityMode )
void mapTypeChanged ( QGraphicsGeoMap::MapType mapType )
void zoomLevelChanged ( qreal zoomLevel )

Reimplemented Protected Functions

virtual void resizeEvent ( QGraphicsSceneResizeEvent * event )

Additional Inherited Members

Detailed Description

The QGraphicsGeoMap class is used to display a map and manager the interactions between the user and the map.

Most of the functionality is provided by QGeoMappingManager, which handles most aspects of the display.

The map viewport can be panned, the zoom level can be changed and the center coordinate of the viewport can be set explicitly.

The screenPositionToCoordinate() and coordinateToScreenPoisition() functions can be used to convert between positions on the screen and global coordinates.

Mouse and keyboard events should be handled by subclassing QGraphicsGeoMap and providing implementations of the event handling functions present in QGraphicsWidget.

Member Type Documentation

enum QGraphicsGeoMap::ConnectivityMode

Describes the method of obtaining the mapping data.

ConstantValueDescription
QGraphicsGeoMap::NoConnectivity0There is no map data.
QGraphicsGeoMap::OfflineMode1The map data will come from an offline source.
QGraphicsGeoMap::OnlineMode2The map data will come from an online source.
QGraphicsGeoMap::HybridMode3The map data will come from a combination of offline and online sources.

enum QGraphicsGeoMap::MapType

Describes a type of map data.

ConstantValueDescription
QGraphicsGeoMap::NoMap0Indicates a lack of map valid data.
QGraphicsGeoMap::StreetMap1The map data is a graphical representation of streets and building boundaries.
QGraphicsGeoMap::SatelliteMapDay2The map data is composed of images collected by satellites during the daytime.
QGraphicsGeoMap::SatelliteMapNight3The map data is composed of images collected by satellites during the nighttime.
QGraphicsGeoMap::TerrainMap4The map data is a graphical representation of terrain features. This may also include some of the information provided by QGraphicsGeoMap::StreetMap.

Property Documentation

center : QGeoCoordinate

This property holds this property holds the coordinate at the center of the map viewport.

Panning the map can be more efficient than changing the center by small increments.

Access functions:

QGeoCoordinate center () const
void setCenter ( const QGeoCoordinate & center )

Notifier signal:

void centerChanged ( const QGeoCoordinate & coordinate )

connectivityMode : ConnectivityMode

This property holds this property holds the connectivity mode used to obtain the map data.

Setting connectivityMode to a mode not present in supportedConnectivityModes() will do nothing.

Access functions:

ConnectivityMode connectivityMode () const
void setConnectivityMode ( ConnectivityMode connectivityMode )

Notifier signal:

void connectivityModeChanged ( QGraphicsGeoMap::ConnectivityMode connectivityMode )

mapType : MapType

This property holds this property holds the type of map data displayed by the map.

Setting mapType to a type not present in supportedMapTypes() will do nothing.

Access functions:

MapType mapType () const
void setMapType ( MapType mapType )

Notifier signal:

void mapTypeChanged ( QGraphicsGeoMap::MapType mapType )

maximumZoomLevel : const qreal

This property holds this property holds the maximum zoom level supported by the QGeoMappingManager associated with this widget.

Larger values of the zoom level correspond to more detailed views of the map.

Access functions:

qreal maximumZoomLevel () const

minimumZoomLevel : const qreal

This property holds this property holds the minimum zoom level supported by the QGeoMappingManager associated with this widget.

Larger values of the zoom level correspond to more detailed views of the map.

Access functions:

qreal minimumZoomLevel () const

zoomLevel : qreal

This property holds this property holds the zoom level of the map.

Larger values of the zoom level correspond to more detailed views of the map.

If zoomLevel is less than minimumZoomLevel then minimumZoomLevel will be used, and if zoomLevel is larger than maximumZoomLevel then maximumZoomLevel will be used.

Access functions:

qreal zoomLevel () const
void setZoomLevel ( qreal zoomLevel )

Notifier signal:

void zoomLevelChanged ( qreal zoomLevel )

Member Function Documentation

QGraphicsGeoMap::QGraphicsGeoMap ( QGeoMappingManager * manager, QGraphicsItem * parent = 0 )

Creates a new mapping widget, with the mapping operations managed by manager, and the specified parent.

Note that the manager will typically be accessed from an instance of QGeoServiceProvider:

 QGeoServiceProvider serviceProvider("nokia");
 QGeoMappingManager *manager = serviceProvider.mappingManager();
 QGraphicsGeoMap *widget = new QGraphicsGeoMap(manager);

QGraphicsGeoMap::~QGraphicsGeoMap () [virtual]

Destroys this map widget.

void QGraphicsGeoMap::addMapObject ( QGeoMapObject * mapObject )

Adds mapObject to the list of map objects managed by this widget.

If mapObject is within the viewport of the map and QGeoMapObject::isVisible() returns true then the map will display the map object immediately.

The map will take ownership of the mapObject.

void QGraphicsGeoMap::addMapOverlay ( QGeoMapOverlay * overlay )

Adds overlay to the list of map overlays associated with this map.

The overlays will be drawn in the order in which they were added.

The map will take ownership of overlay.

void QGraphicsGeoMap::centerChanged ( const QGeoCoordinate & coordinate ) [signal]

This signal is emitted when the center of the map changes.

The new value is coordinate.

void QGraphicsGeoMap::clearMapObjects ()

Clears the map objects associated with this map.

The map objects will be deleted.

void QGraphicsGeoMap::clearMapOverlays ()

Clears the map overlays associated with this map.

The map overlays will be deleted.

void QGraphicsGeoMap::connectivityModeChanged ( QGraphicsGeoMap::ConnectivityMode connectivityMode ) [signal]

This signal is emitted when the connectivity mode used to fetch the map data changes.

The new value is connectivityMode.

QPointF QGraphicsGeoMap::coordinateToScreenPosition ( const QGeoCoordinate & coordinate ) const

Returns the position on the screen at which coordinate is displayed.

An invalid QPointF will be returned if coordinate is invalid or is not within the current viewport.

void QGraphicsGeoMap::fitInViewport ( const QGeoBoundingBox & bounds, bool preserveViewportCenter = false )

Attempts to fit the bounding box bounds into the viewport of the map.

This method will change the zoom level to the maximum zoom level such that all of bounds is visible within the resulting viewport.

If preserveViewportCenter is false the map will be centered on the bounding box bounds before the zoom level is changed, otherwise the center of the map will not be changed.

QList<QGeoMapObject *> QGraphicsGeoMap::mapObjects () const

Returns the map objects associated with this map.

QList<QGeoMapObject *> QGraphicsGeoMap::mapObjectsAtScreenPosition ( const QPointF & screenPosition ) const

Returns the list of visible map objects managed by this widget which contain the point screenPosition within their boundaries.

QList<QGeoMapObject *> QGraphicsGeoMap::mapObjectsInScreenRect ( const QRectF & screenRect ) const

Returns the list of visible map objects managed by this widget which are displayed at least partially within the on screen rectangle screenRect.

QList<QGeoMapObject *> QGraphicsGeoMap::mapObjectsInViewport () const

Returns the list of visible map objects manager by this widget which are displayed at least partially within the viewport of the map.

QList<QGeoMapOverlay *> QGraphicsGeoMap::mapOverlays () const

Returns the map overlays associated with this map.

void QGraphicsGeoMap::mapTypeChanged ( QGraphicsGeoMap::MapType mapType ) [signal]

This signal is emitted when the map type changes.

The new value is mapType.

void QGraphicsGeoMap::paint ( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * parent ) [virtual]

Reimplemented from QGraphicsItem::paint().

void QGraphicsGeoMap::pan ( int dx, int dy ) [slot]

Pans the map view dx pixels in the x direction and dy pixels in the y direction.

The x and y axes are specified in Graphics View Framework coordinates. By default this will mean that positive values of dx move the viewed area to the right and that positive values of dy move the viewed area down.

After the panning has occurred the centerChanged() signal will be emitted.

void QGraphicsGeoMap::removeMapObject ( QGeoMapObject * mapObject )

Removes mapObject from the list of map objects managed by this widget.

If mapObject is within the viewport of the map and QGeoMapObject::isVisible() returns true then the map will stop displaying the map object immediately.

The map will release ownership of the mapObject.

void QGraphicsGeoMap::removeMapOverlay ( QGeoMapOverlay * overlay )

Removes overlay from the list of map overlays associated with this map.

The map will release ownership of overlay.

void QGraphicsGeoMap::resizeEvent ( QGraphicsSceneResizeEvent * event ) [virtual protected]

Reimplemented from QGraphicsWidget::resizeEvent().

QGeoCoordinate QGraphicsGeoMap::screenPositionToCoordinate ( QPointF screenPosition ) const

Returns the coordinate corresponding to the point in the viewport at screenPosition.

An invalid QGeoCoordinate will be returned if screenPosition is invalid or is not within the current viewport.

QPainterPath QGraphicsGeoMap::shape () const [virtual]

Reimplemented from QGraphicsItem::shape().

QList<ConnectivityMode> QGraphicsGeoMap::supportedConnectivityModes () const

Returns the connectivity modes supported by the QGeoMappingManager associated with this widget.

QList<MapType> QGraphicsGeoMap::supportedMapTypes () const

Returns the map types supported by the QGeoMappingManager associated with this widget.

QGeoBoundingBox QGraphicsGeoMap::viewport () const

Returns a bounding box corresponding to the physical area displayed in the viewport of the map.

The bounding box which is returned is defined by the upper left and lower right corners of the visible area of the map.

void QGraphicsGeoMap::zoomLevelChanged ( qreal zoomLevel ) [signal]

This signal is emitted when the zoom level of the map changes.

The new value is zoomLevel.

X

Thank you for giving your feedback.

Make sure it is related to this specific page. For more general bugs and requests, please use the Qt Bug Tracker.

[0]; s.parentNode.insertBefore(ga, s); })();
Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 54
  2. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  3. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  4. BlackBerry 10 : premières images du prochain OS de RIM qui devrait intégrer des widgets et des tuiles inspirées de Windows Phone 0
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. La rubrique Qt a besoin de vous ! 1
Page suivante

Le Qt Developer Network au hasard

Logo

Combiner licence, à propos et fermer d'une dernière manière

Le Qt Developer Network est un réseau de développeurs Qt anglophone, où ils peuvent partager leur expérience sur le framework. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt qtmobility-1.1
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web