QGeoCodingManagerEngineclass provides an interface and convenience methods to implementers ofQGeoServiceProviderplugins who want to provide support for geocoding operations. 更多 …
def
locale
()
def
managerName
()
def
managerVersion
()
def
setLocale
(locale)
def
geocode
(address, bounds)
def
geocode
(address, limit, offset, bounds)
def
reverseGeocode
(coordinate, bounds)
In the default implementation, supportsGeocoding() and supportsReverseGeocoding() returns false while
geocode()andreverseGeocode()causeUnsupportedOptionErrorto occur.If the service provider supports geocoding the subclass should provide an implementation of
geocode()and call setSupportsGeocoding(true) at some point in time beforegeocode()被调用。Similarly, if the service provider supports reverse geocoding the subclass should provide an implementation
reverseGeocode()and call setSupportsReverseGeocoding(true) at some point in time beforereverseGeocode()被调用。A subclass of
QGeoCodingManagerEnginewill often make use of a subclass foQGeoCodeReplyinternally, in order to add any engine-specific data (such as aQNetworkReplyobject for network-based services) to theQGeoCodeReplyinstances used by the engine.另请参阅
QGeoCodingManager
QGeoCodingManagerEngine
(
参数
[
,
parent=None
]
)
¶
- param parent
QObject- param parameters
Constructs a new engine with the specified
parent
,使用
参数
to pass any implementation specific data to the engine.
PySide2.QtLocation.QGeoCodingManagerEngine.
error
(
reply
,
error
[
,
errorString=""
]
)
¶
reply
–
QGeoCodeReply
error
–
Error
errorString – unicode
PySide2.QtLocation.QGeoCodingManagerEngine.
finished
(
reply
)
¶
reply
–
QGeoCodeReply
PySide2.QtLocation.QGeoCodingManagerEngine.
geocode
(
address
,
bounds
)
¶
address
–
QGeoAddress
bounds
–
QGeoShape
Begins the geocoding of
address
. Geocoding is the process of finding a coordinate that corresponds to a given address.
A
QGeoCodeReply
object will be returned, which can be used to manage the geocoding operation and to return the results of the operation.
This engine and the returned
QGeoCodeReply
object will emit signals indicating if the operation completes or if errors occur.
If supportsGeocoding() returns false an
UnsupportedOptionError
will occur.
Once the operation has completed,
locations()
can be used to retrieve the results, which will consist of a list of
QGeoLocation
objects. These objects represent a combination of coordinate and address data.
The address data returned in the results may be different from
address
. This will usually occur if the geocoding service backend uses a different canonical form of addresses or if
address
was only partially filled out.
若
bounds
is non-null and a valid
QGeoShape
it will be used to limit the results to those that are contained by
bounds
. This is particularly useful if
address
is only partially filled out, as the service will attempt to geocode all matches for the specified data.
The user is responsible for deleting the returned reply object, although this can be done in the slot connected to
finished()
,
error()
,
finished()
or
error()
with
deleteLater()
.
PySide2.QtLocation.QGeoCodingManagerEngine.
geocode
(
address
,
limit
,
offset
,
bounds
)
¶
address – unicode
limit
–
int
offset
–
int
bounds
–
QGeoShape
Begins geocoding for a location matching
address
.
A
QGeoCodeReply
object will be returned, which can be used to manage the geocoding operation and to return the results of the operation.
This engine and the returned
QGeoCodeReply
object will emit signals indicating if the operation completes or if errors occur.
Once the operation has completed,
locations()
can be used to retrieve the results, which will consist of a list of
QGeoLocation
objects. These objects represent a combination of coordinate and address data.
若
limit
is -1 the entire result set will be returned, otherwise at most
limit
results will be returned.
offset
parameter is used to ask the geocoding service to not return the first
offset
results.
limit
and
offset
results are used together to implement paging.
若
bounds
is non-null and a valid
QGeoShape
it will be used to limit the results to those that are contained by
bounds
.
The user is responsible for deleting the returned reply object, although this can be done in the slot connected to
finished()
,
error()
,
finished()
or
error()
with
deleteLater()
.
PySide2.QtLocation.QGeoCodingManagerEngine.
locale
(
)
¶
QLocale
Returns the locale used to hint to this geocoding manager about what language to use for the results.
另请参阅
PySide2.QtLocation.QGeoCodingManagerEngine.
managerName
(
)
¶
unicode
Returns the name which this engine implementation uses to distinguish itself from the implementations provided by other plugins.
The combination of and
managerVersion()
should be unique amongst plugin implementations.
PySide2.QtLocation.QGeoCodingManagerEngine.
managerVersion
(
)
¶
int
Returns the version of this engine implementation.
The combination of
managerName()
and should be unique amongst plugin implementations.
PySide2.QtLocation.QGeoCodingManagerEngine.
reverseGeocode
(
coordinate
,
bounds
)
¶
coordinate
–
QGeoCoordinate
bounds
–
QGeoShape
Begins the reverse geocoding of
coordinate
. Reverse geocoding is the process of finding an address that corresponds to a given coordinate.
A
QGeoCodeReply
object will be returned, which can be used to manage the reverse geocoding operation and to return the results of the operation.
This engine and the returned
QGeoCodeReply
object will emit signals indicating if the operation completes or if errors occur.
If supportsReverseGeocoding() returns false an
UnsupportedOptionError
will occur.
At that point
locations()
can be used to retrieve the results, which will consist of a list of
QGeoLocation
objects. These objects represent a combination of coordinate and address data.
The coordinate data returned in the results may be different from
coordinate
. This will usually occur if the reverse geocoding service backend shifts the coordinates to be closer to the matching addresses, or if the backend returns results at multiple levels of detail.
If multiple results are returned by the reverse geocoding service backend they will be provided in order of specificity. This normally occurs if the backend is configured to reverse geocode across multiple levels of detail. As an example, some services will return address and coordinate pairs for the street address, the city, the state and the country.
若
bounds
is non-null and a valid
QGeoShape
it will be used to limit the results to those that are contained by
bounds
.
The user is responsible for deleting the returned reply object, although this can be done in the slot connected to
finished()
,
error()
,
finished()
or
error()
with
deleteLater()
.
PySide2.QtLocation.QGeoCodingManagerEngine.
setLocale
(
locale
)
¶
locale
–
QLocale
Sets the locale to be used by this manager to
locale
.
If this geocoding manager supports returning the results in different languages, they will be returned in the language of
locale
.
The locale used defaults to the system locale if this is not set.
另请参阅