Qt Location QML Types

Overview

Provided that a position has been obtained, the Qt Location module can add a Map with Places of Interest (POI) and Places. The user can be made aware of nearby features and related information, displayed on the map. These features can be places of business, entertainment, and so on. They may include paths, roads, or forms of transport, enabling navigation optimization and assistance.

To perform navigation we need Routes from start to destination. These routes are made up of segments, where each RouteSegment can be considered a navigation subtask; for example, "drive 100 meters", or "turn left". The beginning and end of each segment is a waypoint, that is, one part of the journey.

A typical use case for the API is a user looking for a particular type of place, such as a restaurant; the user enters a search string into the map application and is presented with a list of results for restaurants "near" the device. The application can then be used to navigate to the chosen destination using a route that is optimized according to features in the environment that may help or hinder the journey. The navigation then proceeds with the user's progress monitored by means of the current location.

In short, the main QML types and their roles are as follows:

  • The Place instances hold information about the destination and surrounding objects, including displayable representations.
  • The Map enables the information contained in Place objects to be displayed, panned, zoomed, and so on.
  • The Route is be determined by a plugin, with each RouteSegment holding the navigation instructions, guided by the continuously updated current Location.

Plugins

Plugins supply the data required to calculate routes and navigation instructions, and they are typically tied to a specific location-based service. For example, a plugin may allow connecting to a service that provides geocoding and routing information, which can be consumed by the application.

There may be various GeoServices plugins for various tasks, with some plugins providing more than one service. One QML Plugin instance must be created for each GeoService plugin. Plugins are required for routing and geocoding, maps, and places, however the default plugin handles all four of these services. A plugin may require online access or it may support on-board maps and data.

Note: Plugins may not provide features such as paging or relevance hints.

Related Information

The following links provide more information about maps and places:

Maps and NavigationDisplaying maps and finding routes
PlacesSearching for and managing points of interest

Common QML Types

Plugin

Type describes a Location based services plugin

PluginParameter

Type describes a parameter to a Plugin

Maps QML Types

CameraCapabilities

Type holds information about the camera capabilities for a specific map type

DynamicParameter

Type represents a parameter for a Map element. This type provides a mean to specify plugin-dependent optional parameters for a map

Map

Type displays a map

MapCircle

Type displays a geographic circle on a Map

MapCircleObject

Displays a circle on a Map

MapCopyrightNotice

Item displays the current valid copyright notice for a Map element

MapGestureArea

Type provides Map gesture interaction

MapIconObject

Displays an icon on a Map

MapItemGroup

Type is a container for map items

MapItemView

Used to populate Map from a model

MapObjectView

Used to populate Map with map objects from a model

MapPinchEvent

Type provides basic information about pinch event

MapPolygon

Type displays a polygon on a Map

MapPolygonObject

Displays a polygon on a Map

MapPolyline

Type displays a polyline on a map

MapPolylineObject

Displays a polyline on a Map

MapQuickItem

Type displays an arbitrary Qt Quick object on a Map

MapRectangle

Type displays a rectangle on a Map

MapRoute

Type displays a Route on a Map

MapRouteObject

Displays a geographical route on a Map

MapType

Type holds information about a map type

Navigator

Type offers functionalities to perform turn-by-turn navigation

Route

Type represents one geographical route

RouteLeg

Type represents a leg of a Route, that is the portion of a route between one waypoint and the next

RouteManeuver

Type represents the information relevant to the point at which two RouteSegments meet

RouteModel

Type provides access to routes

RouteQuery

Type is used to provide query parameters to a RouteModel

RouteSegment

Type represents a segment of a Route

Waypoint

Type provides a mean to specify a waypoint in a RouteQuery in a more detailed way than by using a simple coordinate

Geocoding QML Types

GeocodeModel

Type provides support for searching operations related to geographic information

Places QML Types

Category

Type represents a category that a Place can be associated with

CategoryModel

Type provides a model of the categories supported by a Plugin

ContactDetail

Type holds a contact detail such as a phone number or a website address

ContactDetails

Type holds contact details for a Place

EditorialModel

Type provides a model of place editorials

ExtendedAttributes

Type holds additional data about a Place

Icon

Type represents an icon image source which can have multiple sizes

ImageModel

Type provides a model of place images

Place

Type represents a location that is a position of interest

PlaceAttribute

Type holds generic place attribute information

PlaceSearchModel

Provides access to place search results

PlaceSearchSuggestionModel

Provides access to search term suggestions

Ratings

Type holds place rating information

ReviewModel

Provides access to reviews of a Place

Supplier

Holds data regarding the supplier of a place, a place's image, review, or editorial

User

Type identifies a user who contributed a particular Place content item

Alphabetical Listing of All QML Types

CameraCapabilities

Type holds information about the camera capabilities for a specific map type

Category

Type represents a category that a Place can be associated with

CategoryModel

Type provides a model of the categories supported by a Plugin

ContactDetail

Type holds a contact detail such as a phone number or a website address

ContactDetails

Type holds contact details for a Place

DynamicParameter

Type represents a parameter for a Map element. This type provides a mean to specify plugin-dependent optional parameters for a map

EditorialModel

Type provides a model of place editorials

ExtendedAttributes

Type holds additional data about a Place

GeocodeModel

Type provides support for searching operations related to geographic information

Icon

Type represents an icon image source which can have multiple sizes

ImageModel

Type provides a model of place images

Map

Type displays a map

MapCircle

Type displays a geographic circle on a Map

MapCopyrightNotice

Item displays the current valid copyright notice for a Map element

MapGestureArea

Type provides Map gesture interaction

MapItemGroup

Type is a container for map items

MapItemView

Used to populate Map from a model

MapPinchEvent

Type provides basic information about pinch event

MapPolygon

Type displays a polygon on a Map

MapPolyline

Type displays a polyline on a map

MapQuickItem

Type displays an arbitrary Qt Quick object on a Map

MapRectangle

Type displays a rectangle on a Map

MapRoute

Type displays a Route on a Map

MapType

Type holds information about a map type

Place

Type represents a location that is a position of interest

PlaceAttribute

Type holds generic place attribute information

PlaceSearchModel

Provides access to place search results

PlaceSearchSuggestionModel

Provides access to search term suggestions

Plugin

Type describes a Location based services plugin

PluginParameter

Type describes a parameter to a Plugin

Ratings

Type holds place rating information

ReviewModel

Provides access to reviews of a Place

Route

Type represents one geographical route

RouteLeg

Type represents a leg of a Route, that is the portion of a route between one waypoint and the next

RouteManeuver

Type represents the information relevant to the point at which two RouteSegments meet

RouteModel

Type provides access to routes

RouteQuery

Type is used to provide query parameters to a RouteModel

RouteSegment

Type represents a segment of a Route

Supplier

Holds data regarding the supplier of a place, a place's image, review, or editorial

User

Type identifies a user who contributed a particular Place content item

Waypoint

Type provides a mean to specify a waypoint in a RouteQuery in a more detailed way than by using a simple coordinate

© 2019 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.