geoshape QML Basic Type

A geoshape type represents an abstract geographic area. More...

This type is a QML representation of QGeoShape which is an abstract geographic area. It includes attributes and methods common to all geographic areas. To create objects that represent a valid geographic area use georectangle or geocircle.

The isValid attribute can be used to test if the geoshape represents a valid geographic area.

The isEmpty attribute can be used to test if the geoshape represents a region with a geometrical area of 0.

The contains() method can be used to test if a coordinate is within the geoshape.

Example Usage

Use properties of type var to store a geoshape. To create a geoshape use one of the methods described below.

To create a geoshape value, specify it as a "shape()" string:

import QtPositioning

Item {
    property var region: "shape()"

or with the QtPositioning.shape() function:

import QtPositioning

Item {
    property var region: QtPositioning.shape()

When integrating with C++, note that any QGeoShape value passed into QML from C++ is automatically converted into a geoshape value, and vice-versa.



bool isEmpty

Returns whether this geoshape is empty. An empty geoshape is a region which has a geometrical area of 0.


bool isValid

Returns whether this geoshape is valid.

A geoshape is considered to be invalid if some of the data that is required to unambiguously describe the geoshape has not been set or has been set to an unsuitable value.


ShapeType type

Returns the current type of the shape.

  • GeoShape.UnknownType - The shape's type is not known.
  • GeoShape.RectangleType - The shape is a georectangle.
  • GeoShape.CircleType - The shape is a geocircle.
  • GeoShape.PathType - The shape is a geopath. (Since Qt 5.9)
  • GeoShape.PolygonType - The shape is a geopolygon. (Since Qt 5.10)

This QML property was introduced by Qt 5.5.



bool contains(coordinate coord)

Returns true if the coordinate specified by coord is within this geoshape; Otherwise returns false.

© 2024 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.