geoshape QML Basic Type

A geoshape type represents an abstract geographic area.

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.

用法范例

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

要创建 geoshape value, specify it as a "shape()" string:

import QtPositioning
Item {
    property variant region: "shape()"
}
					

or with the QtPositioning.shape() 函数:

import QtPositioning 5.2
Item {
    property variant 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.

特性

isEmpty

bool isEmpty
					

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

isValid

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.

type

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.

方法

contains()

bool contains(coordinate coord)
					

返回 true 若 coordinate 指定通过 coord is within this geoshape; Otherwise returns false.