| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
So that it's possible to make the type property somehow constant in
subclasses
Change-Id: I61f4d1b412dbfb173e7ca7fa31411cffbfcfacb1
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-63251
Change-Id: I7ceeeebb30007c5d97d61e057c8ec6e827177b19
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
| |
This patch fixes the case of disabling the various caches.
Currently setting the cache size to 0 results in default initial values
instead.
Change-Id: I019cd15ac23b6479e4367a3e102dd661895a7fda
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: Ie02061804efdb79911a997bd017d13ed0d65d262
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Task-number: QTBUG-62122
Change-Id: I538e1eeb6bce3f5de424003b0b31fa59599dc2d5
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In 5.9.0 map items are clipped against the visible region.
This implies that their geometry is also clipped against
the visible region.
This is problematic in ::geometryChanged, since the old
geometry is always clipped in this way.
This patch clips items against a "projectable" region
instead, that is the part of the map that is in front
of the camera.
Since this can produce very large vertices, mapbox
earcut 3rd party library is pulled in, to replace
qTriangulate that only supports coordinates up to
1<<21.
This patch also contains a fix for earcut.hpp to make it
build also on QNX6.6
Task-number: QTBUG-61727
Change-Id: Iffc95fdae88fef982c1eb86db567b326b5e51057
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
| |
This reverts commit 2ab93acd9751b3ffe2c36a4a0e37dc792686a08f.
Reason being: not passing QNX6 bot
Change-Id: If45fe095b6e6959f7c40e3e0ed7a14d278bbb230
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In 5.9.0 map items are clipped against the visible region.
This implies that their geometry is also clipped against
the visible region.
This is problematic in ::geometryChanged, since the old
geometry is always clipped in this way.
This patch clips items against a "projectable" region
instead, that is the part of the map that is in front
of the camera.
Since this can produce very large vertices, mapbox
earcut 3rd party library is pulled in, to replace
qTriangulate that only supports coordinates up to
1<<21.
Task-number: QTBUG-61727
Change-Id: I7449e755a4848a2b2107c5de4e27821e3e887bfb
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch allows to call toCoordinate also on negative y values, given
that the y value is still below the horizon. If not, the y value
will be clamped to the "minimum unprojectable y value", a value that
is clamped to 0.
Task-number: QTBUG-61813
Change-Id: I177d3b459b6eaf827daf860b7d4011511a7e76ee
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-61538
Change-Id: Ib1e5cbe1bdcfc324e3e9dcaca7045c9318a5059e
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
| |
If opengl is not present, now that warnings are error, Location
fails to build due to an unused ogl variable.
Change-Id: Id1e9a1f4da8bc31a65e29b3dd2770250284d02bb
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This patch moves the implementation of the default filenameToTileSpec
and tileSpecToFileName methods into standalone public static methods
so that they can be possibly reused by plugins or other components,
since these implementations do not actually depend on any member of
QGeoFileTileCache.
Change-Id: I6e3f59615ff3a5e0924f946aa13aabebb8157e42
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-60881
Change-Id: Iffdcfe1ebfe81da9b809dceeff61fca044e94891
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In certain cases servers provide tiles that can be fully transparent,
provide no content or are bogus.
Tile fetchers can be smart and detect some of these cases.
This patch offers an extensible way to allow them to communicate (via
a null QImage) tiles that should not be rendered, in addition to
an extensible mechanism to identify such tiles on disk.
The default way is by assuming that, once such tiles have been
detected, the tile fetcher would simply write a file with "NoRetry" as
content.
Change-Id: I404bb4dcc38fdd33c412f7407601b47947e4ce8d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
| |
This patch disables the queue persistence, that causes the cache to
fail indexing valid content present in the cache on disk
Task-number: QTBUG-60581
Change-Id: Iec3ba6105fe59a6f466bfabf0db4bf4fc00267af
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change optimizes QGeoProjectionWebMercator::setupCamera, factoring
out the code that calculates the visible region, and replacing it
with a dirty flag.
The computation is deferred to the first time visibleRegion() gets
called.
This is done because the visible region is currently only used to render
some types of map items, meaning that in a multi layer setup, only few
layers might need it.
Change-Id: I5dd75969581513eb60e3cf5d6ba649349bf25378
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
| |
An assignment was missing to make the overzooming bool actually kick
in.
Change-Id: I5f6e52016026af050c734bca31e45f06fbbdb9b5
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
| |
Tile fetchers may need to override this one to better analyze the
reply content and possibly validate it.
Change-Id: Ia3445017ad7b44d719a1ce28b811d9145373e397
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: If6f8fd446c562d6ccaf368e1d5afb5eee113fece
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: I1fff4d22c11c540b955abbfeb0707c8622291bef
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch moves the lower/upper bound check on setZoom from
QDeclarativeGeoMap to the gesture area, allowing to set higher zoom
levels than the maximumZoomLevel when setting Map.zoomLevel directly,
for the map types that support overzoom.
This is now safe as the bound check is introduced in the tile fetcher,
so no invalid tiles will be requested, and is beneficial when
combining layers supporting different maximum zoom levels.
Change-Id: I08ee9c282ee2ebc1dafa3c68a238b93ffbc1ba02
Reviewed-by: Alex Blasche <alexander.blasche@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 fixes the -no-gui build.
Task-number: QTBUG-60062
Change-Id: I71400dfddac8ddf6a74906be8ba1272bf4a86781
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
| |
Change-Id: Ic169824201ed6aeaeb2a482b28da989f9312181d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: I7f81f3dab3ef0243c45ec22bafa8687f756134f4
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: I7a82c0d63f35d1cfd264801e58089408254757c8
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
| |
This patch fixes the incorrect behavior of using nearest filtering
at integer zoom level, even if the texture is being overzoomed from
a lower zoom level
Change-Id: Ia3572399187a6f24829504116602685434ecfc5f
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
| |
This patch forces a camera data update upon changeActiveMapType, which
may change the tile size.
Change-Id: Ib371ea7f76267bc4ed8a30eed31ec3887b4a1415
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: If3e920f4b4cb5bf6310914a258eb3f569de9a8ef
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: I18fc1788f7af0efe76f97257ffe739eb1a96e6cc
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Add a NoPrefetch PrefetchStyle to allow disabling the prefetching.
A new parameter in the geoservice plugin is then needed to effectively
disable it.
Change-Id: I8b8a2343cbe4f59bd990d25c3381f4a11708860e
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This patch avoids each bind to do this conversion if the format of the
tile isn't RGB or ARGB32_Premultiplied.
This is the case of PNG with alpha channel, that usually comes as
ARGB32.
Change-Id: I8f1297dd82ab20b6c8ecac3e68bf5d82e03f2e70
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
| |
With this patch tiles from previous zoom levels can be temporarily
used to fill the map until the actual tiles are fetched.
Task-number: QTBUG-23659
Change-Id: I7db68c82217cb18a9bec2abdc3e679fc0bfb6b94
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes an incorrect computation of the projection matrices and
thus a mismatch in projections between mbgl vs the other plugins when
the window A/R is less than 1.0.
Task-number: QTBUG-59417
Change-Id: Ib03eaa4c877a00c9281c335f859c854d6db632c0
Reviewed-by: Bruno de Oliveira Abinader <brunoabinader@gmail.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
| |
Without this patch, using tiles of size 128 may cause these methods
to return negative values
Change-Id: I6476083350fd552756d1388fa9bc8fa36d8c4ee3
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Bruno de Oliveira Abinader <brunoabinader@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes a bug that makes MapQuickItem disappear when
the zoomLevel property is set, the camera is tilted and zoomed in
very close to the item, causing the coordinate of the map quick item
to end behind the camera.
Task-number: QTBUG-59397
Change-Id: Iae92204917729eb9daaf8592db318613bf57b966
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
| |
Change-Id: I85870f176510d1d6fd51bce94daf58fc326e13b3
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ibd6d68ced4edbd96fb67fe61244b83d597df5775
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Drop unnecessary guards around QFactoryLoader (which is available
without QLibrary) and drop an unused include.
Change-Id: I0368eb857474fc728f1dad76977758b6d773f1d6
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
These includes seem to block CI on some configurations
Task-number: QTBUG-59243
Change-Id: I10e743302cd9e41036cd1e8e94746fd3b2d817d3
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch fixes the behavior of MapQuickItem when the zoomLevel is
set, that is it makes behave the qquickitem as if it would be
on the map, instead of on the screen.
Change-Id: Ibb8a6000e2f6a37a68c32df001fc8565079a6f70
Reviewed-by: Alex Blasche <alexander.blasche@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>
|
|\ \ |
|
| |\ \
| | |/
| | |
| | | |
Change-Id: I3c27a0635fa324dfea7a1d19774a66e21c066bbe
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Tiles are magnified when high dpi scaling factor is used for the
app, so the scale factor must be considered when tile size is
used to decide whether to switch mipmapping on or not
Change-Id: I628ddc82f41bbdb94d0c1c6ed628bc13990f64bf
Reviewed-by: Laszlo Agocs <laszlo.agocs@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 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>
|