| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
tests/auto/declarative_ui/tst_map.qml
Change-Id: If408b8242b39f78926b5373393f3b1f65b262499
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently the visible region is calculated as the intersection between
the viewing frustum and the map plane clipped against the map extended
rectangle in mercator space (from -1 to 2 in x coords, 0 to 1 in y
coords).
The result is correct in the extended mercator space. However, this may
lead to overlapping coordinates when converted back to latitude and
longitude.
For this reason, this patch changes the clipping geometry to be the
map un-extended rectangle centered around the current map center.
The result is a geometry that never wraps around or overlaps, thus
removing the need for handling separately the case when the map
is fully visible when returning the visible region.
Task-number: QTBUG-57690
Change-Id: I8396c40a123ce94bff4388dfefbd8a694657b8bd
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
init() is currently setting zoomLevel to 0.
This prevents the map from flicking diagonally as there's no
room for that when the map is fully visible vertically.
This test is currently passing in CI for unclear reasons,
but it's failing locally.
Change-Id: I0bb7c703a6cd2d4b5f440ce629c3933cf41268f6
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds two new methods to QDeclarativeGeoMap, to allow users
to add or remove MapItemViews at runtime.
[ChangeLog][QtLocation][Map] Added methods to add or remove MapItemViews
at runtime.
Task-number: QTBUG-55782
Change-Id: I4e612a9476a864331f61d49dac811a8069ae010f
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch introduces a new QGeoShape, QGeoPolygon, together
with helper functions in the location singleton (QtPositioning.*)
to create and convert geopolygons from QML.
[ChangeLog][QtPositioning][QGeoPolygon] Added QGeoPolygon shape.
Change-Id: I111c576d7428f2a953f0459d16c25eea7ab2bd7c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds a Q_INVOKABLE setPath overload that takes a QGeoPath.
This can be beneficial when a path is already available and should
be set without going through javascript array conversion.
This method should come handy also when pushing polyline data from
C++.
[ChangeLog][QtLocation][MapPolyline] Added setPath overload taking a
QGeoPath.
Change-Id: I6916500473865b8234b48e8df08dfb465a2a75d2
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This method effectively extends the functionalities offered by
the center qml property, allowing to set a coordinate to an item
position other than the center of the item.
This is useful in those applications where the center of the scene
(e.g., a cursor) is not to be place exactly in the center of the map.
[ChangeLog][QtLocation][QDeclarativeGeoMap] Added alignCoordinateToPoint
method to QDeclarativeGeoMap.
Change-Id: I68a3d12e8376b83c4c1775a3af5e2125d3e71d63
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds an overload for setBearing in QDeclarativeGeoMap to
rotate the map around a specific QGeoCoordinate.
[ChangeLog][QtLocation][QDeclarativeGeoMap] Added setBearing overload to
rotate the map around a given QGeoCoordinate.
Change-Id: I5d2428d852b0c3537f4a1cdb1925c059788c45c5
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch enriches QGeoMapType/QDeclarativeGeoMapType embedding into
this object the camera capabilities for this type, that are then exposed
via a new QML Type, CameraCapabilities, and custom metadata in form
of a QVariantMap, that can be accessed via the new metadata property.
[ChangeLog][QtLocation][QDeclarativeGeoMapType] Added CameraCapabilities
and metadata properties to QDeclarativeGeoMapType.
Task-number: QTBUG-58931
Change-Id: I97a8852fbb3bbac88fdbf0d47e8247ea7ed1f31e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The test was disabled to facilitate CI integration.
Change-Id: Ib61cb3a778e9134ed4fe07a98d38f438c1f22beb
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Invalid QDateTimes (like the default-constructed ones) now output
"QDateTime(Invalid)".
Temporarily the test is disabled until qt5.git integration passes
such that the QDateTime debug operator stream becomes available
in the Qt CI.
Change-Id: I3c461e55f0300b8bc040761b8c181fe8abf63abe
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: I3241efba9c3a32a4a097a67fd6432c45aad8e6ef
|
| |
| |
| |
| |
| |
| |
| | |
Binary compatibility files updated
Change-Id: Icb554c390a2c662a724d68d33909838f2a3e23e7
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This test has, in the last week, started to fail more often than not.
Since it's very likely to be a CI problem, blacklisting it for now.
Task-number: QTBUG-61485
Change-Id: Ifb68274f83b7ecc1652394623454230b527b2002
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Icd0e0d4b27cb4e5eb892fffd14b5285d43f4afbf
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A way to retrieve the size of the path is missing, as the path property
turns out not to be accessible to QML.
This patch adds a Q_INVOKABLE method to expose it.
[ChangeLog][QtPositioning][QGeoPath] Add ::size() to QGeoPath to
retrieve the number of coordinates in the path.
Change-Id: Ifa7a640113cba71f23e36626a84c8b2fe473a07e
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
src/plugins/geoservices/geoservices.pro
Change-Id: Ie82dd22c588e5cba409fc1ef31a65968ce9f719b
|
| |
| |
| |
| |
| | |
Change-Id: I4067d6df69aad0af9495a29532a34f0a7e992596
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As currently there is no way to create a pre-filled qgeopath,
this patch adds an overload to QtPositioning.geopath() to pass
parameters to the constructor.
Change-Id: I05af4dbef07bd62e9e2eace7105b5255e8a392fa
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |\
| | |
| | |
| | | |
Change-Id: I0cb953c2ef6d6efaf6e1c181693bd9f30432fd9a
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This patch adds a QByteArray member to QGeoMapType with the name of
the plugin providing that map type.
This value is then used to validate what is passed to
QDeclarativeGeoMap::setActiveMapType to see if it's a map type for the
currently set plugin.
Change-Id: If15b67c32150f0c3c2815d28e26fc37138d4cf71
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently boot2qt is tested with QEMU and some tests fail. Disabling
them for now to make it possible to enable qt5 tests for Coin.
Task-number: QTBUG-60266
Change-Id: Ib12fe4787bf5f5c672be96233205da3184c2920d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Until now we have not honored the min/max zoom levels specified
in QGeoCameraCapabilities when requesting tiles.
As a result we have often fired requests for non-existing tile layers.
This change complements the added support for individual camera caps
for each map type, and makes the tile fetcher honor the bounds
defined in the camera capabilities.
This also allows to set larger zoom levels in the renderer, overzooming
existing tiles, without the fetcher firing requests for invalid
resources
Change-Id: Ic8a523a114147109f7ef8af3510a3ab78d06d714
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since the only part of QGeoMapType used in the method is mapId, there's
no need to pass the whole map type as argument.
The benefit is that the camera caps can be requested solely based on
the info in QGeoTileSpec.
Change-Id: Iafd0e2a1d4d45fbf02b862efe56841001cbebd75
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is not just a regular test. This is a plugin that does
load(qt_plugin).
qgeotiledmappingmanagerengine_test.h:89:14: error: 'createMap' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
Change-Id: I523b0abacd5148b2bf08fffd14b488ffa441e68b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It is reasonable to add mapReady property to the condition
for the start of test cases where it is required that the
map is initialized. This covers the case when one of the
initialization steps runs asynchronously.
Change-Id: I2eff52dbe3a7bec0b2f3fb26d607398829b5c9f2
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Somehow MSVC still sees it as unused, despite our best efforts in
Q_ASSERT. So add Q_UNUSED.
qdeclarativepinchgenerator.cpp(218) : warning C4100: 'event' : unreferenced formal parameter
Change-Id: I523b0abacd5148b2bf08fffd14b46aa8f8409f42
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
Squaring a number, doubling it and taking the square root is just a
roundabout way of multiplying the number by sqrt(2); so do that
instead, saving some computational cost and probably reducing the
amount of rounding errors that can creep in.
Change-Id: I1abf3c2de318f48f80536379156ace8f25a6acaf
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
| |
Apparently these cause a test crash
Task-number: QTBUG-59503
Change-Id: I3982eaf68503f791faf25ec4b57f7a592d8a2242
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ibd6d68ced4edbd96fb67fe61244b83d597df5775
|
| |
| |
| |
| |
| |
| | |
Change-Id: I1774d2b4c637f5057691f43275e10f19b986c722
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
We already had a guard for QT_NO_PROCESS in place. Change that to the
safe form QT_CONFIG(process) and also guard the header inclusion.
Change-Id: I9c62024bd315a91da44e0492f0c8aa095de76dab
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The current precision of 6 digits only ever guarantees
110m on Earth. That's not sufficient for some use cases.
A precision of 11 guarantees at least 8 digits after the comma since
there are at most three digits before the comma. The 8th digit
reflects a geographical precision of 1.1 mm on earth. More precision
for navigation purposes is not needed.
Task-number: QTBUG-59259
Change-Id: I4f59c152171c3a71f22aa7520718d0fcb611b697
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch bakes all the required linear transformations performed
in the method inside a 4x4 double matrix, removing 4 of the 5
instructions previously performed.
Autotest adaptations with compares instead of verifys have been
necessary due to small epsilons in the results.
Change-Id: I7795173a27812eb93a48e3175ad24fd546aeec04
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The old algorithm for computing the frustum footprint has problems
with certain viewport sizes when tilting the map.
This patch fixes the problem, and also removes the dependency on a local
copy of qsort that was necessary in order for that algorithm to work
properly.
Task-number: QTBUG-58684
Task-number: QTBUG-34088
Change-Id: I36aaaa90c567cd19a4ae66dba8def0aec0b00534
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change makes the currently read only properties minimumTilt,
maximumTilt, minimumFieldOfView and maximumFieldOfView user-settable
as well, like minimum and maximum zoom level.
Autotests are included.
Task-number: QTBUG-58931
Change-Id: I784be7bd0d960061e94bc40cd8a45e466754526f
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch makes it possible to change QGeoCameraCapabilites
at runtime, when the map type changes, to accommodate for
those plugins that offer different maps having different
capabilities.
This is then used to properly push the min/max zoom levels
for each map type in our OSM plugin.
Autotests are included.
Change-Id: I48532da77ffb3eaf2e752561395945c3a2c21985
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Changing Q_LOCATION_EXPORT to Q_LOCATION_PRIVATE_EXPORT in all
_p headers to avoid confusion.
Change-Id: Ic42d1c59f0cd68c27bcf40296c612d005da11efd
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
src/plugins/geoservices/nokia/qgeotiledmappingmanagerengine_nokia.cpp
Change-Id: I2428d360c07b55ec5ee61f81c6f97b3d7b20f363
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch changes the window size of tst_map_flick to 120x120, that
seems to be the minimum on windows platforms.
This to prevent test failures.
Task-number: QTBUG-56679
Change-Id: I08082710d843f3330a2d7c80b494d3732e0675bc
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Flick tests results on windows are flaky in presence of high system
load, due to the way testlib simulates flicking.
This change blacklists them on windows, where the problem seems to be
most severe.
Task-number: QTBUG-56679
Change-Id: Ia4e1eb524af8280e8ed724216c0c118cf81f05db
Reviewed-by: Milla Pohjanheimo <milla.pohjanheimo@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Change filtetring into filtering
Change-Id: Ib00a904df11bcab66805dc927f4c4b01d0de0cf4
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Autotests are now all working, blacklisting not necessary anymore
Change-Id: I2c9dc16a95f7b64b00228143ccfa31d1ae1645b6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Added binary compatibility file for qtlocation
Change-Id: Iffeb7e66db62cba2935637e697ddb67798978a1c
Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch lets a user create an external qml file, and put multiple
map items inside a parent MapItemGroup{}, and add that element to a Map
item.
QDeclarativeGeoMap gets also two associated methods: addMapItemGroup and
removeMapItemGroup to deal with item groups at runtime.
Additionally, clearMapItems now clears also added item groups.
Task-number: QTBUG-55211
Change-Id: Ie4e602e4bda65fb56422b721be5fd34c54eb7954
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch uses QGeoShape::boundingGeoRectangle to set the visible
region, supporting the new QGeoShapes, simplifying the logic in
::fitViewportToGeoShape, and not requiring updates if new QGeoShapes
are added.
Change-Id: I4f4c21bc0b62aae9432024d8f20db774d191255b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds rotation and tilting support to QGeoTiledMapScene
and QGeoCameraTiles.
It also adds the related capabilities to the geoservice plugins
mapping managers
QML Api is added in a separate patch
Change-Id: I3de1b52a9928c4856f6ee57ad39191acebe0f770
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QDeclarativeGeoMap currently does not provide any mean to set bearing
and tilt into qgeocameradata.
It has been not a problem since QGeoTiledMap and sons did not support
it.
External renderers however support it, so this patch adds QML api
calls to control these parameters, and adapt the existing logic
to take them into consideration in camera-related
calls, as well as in the afterViewportChange handlers of the Map
Items.
This patch also sligthly modifies the QML api to make the handling
of all the bounded camera property more homogeneous.
Minimum and maximum zoom levels prior plugin initialization
aren't -1 anymore, but are some valid lower and upper bounds
for this property, that is 0 and 30.
in this way all the 2 bounded properties (zoomLevel and
tilt) behave the same, in that they can be freely set before plugin
initialization, within reasonable predefined bounds, and, after that,
they may be clamped depending on the actual plugin capabilities.
Autotests for the QML part of the API included.
Change-Id: I9d09e32698a7330388e465e8ea7523ee39577d34
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch simplifies the QGeoMap API removing all the API
necessary to convert to and from screen.
This is now demanded to a specific QGeoProjection class, that will
be independent of the map, except for using the same Geo projection
(currently only WebMercator, or EPSG:3857, although we use a sphere
instead of an ellipsoid, i believe)
The benefits are
- This relieves subclasses of QGeoMap from implementing a
GeoProjection API, especially since QtLocation currently supports
only WebMercator, and reimplementations would have to anyway
produce the same results as the inbuilt one.
- This avoids the several indirection steps previously necessary
to perform a map projection (qgeotiledmap -> private->mapscene->
private). Since these operation are quite frequent one per
map item coordinate at every redraw, shortening the indirection
chain is beneficial
- It simplifies the highly complex QGeoTiledMapScene, separating
all the logic that is not needed to draw the scene, but only
to perform geo coordinate <-> screen coordinate conversion
Change-Id: I9e3ca5280166f2d6430a32deb44c030d02d9d4e1
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently the zoomLevel is the power of 2 reflecting how many tiles
are in a map edge.
This means that two plugins with two different tileSize will show a
map of different size at the same zoomLevel.
With this patch the zoomLevel is "normalized" upon a tileSize of 256,
regardless of the tile size in use.
In this way, the new 256 based zoom level can be a consistent parameter
also for plugins that are not tile based.
CameraCapabilities therefore now offers two new methods,
m[in,ax]imumZoomLevelAt256, that return the respective value for
the normalized 256^2 tilesize.
It also gets a setTileSize, which is currently not used as all our
plugins use a tile size of 256 (which is the camera capabilities
default tilesize value).
Change-Id: Ib12092fd14faf7fc85f8be5fb799dbd5496b760b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|