Mikhail Pozdnyakov
735fc0a4dc
[core][tile mode] Share seenCrossTileIDs across all placeLayer() calls
...
Thus we obviate lots of repeated operations for already placed symbols.
2020-03-25 15:11:41 +02:00
Mikhail Pozdnyakov
313844b1da
[core][tile mode] Place tile intersecting labels first, across all layers
...
Thus, we reduce the amount of label cut-offs in Tile mode.
Before, labels were arranged within one symbol layer (one bucket),
which was not enough for several symbol layers being placed at the
same time.
2020-03-25 15:11:41 +02:00
Mikhail Pozdnyakov
f5430ca33c
[core] Introduce map mode specific Placement implementations
2020-03-25 15:11:41 +02:00
Mikhail Pozdnyakov
7ba5d5e2dd
[core] Introduce Placement::placeLayers()
2020-03-25 15:11:41 +02:00
Mikhail Pozdnyakov
7234cb3968
[core] Ability to set source-layer setProperty method
2020-03-24 20:53:55 +02:00
Mikhail Pozdnyakov
5f1847d9a2
[core] conversion::Layer uses setProperty API to set max/min zoom & filter
2020-03-24 20:53:55 +02:00
Mikhail Pozdnyakov
20d960ed51
[core] Layer::setProperty() can set min/max zoom and filter
2020-03-24 20:53:55 +02:00
Mikhail Pozdnyakov
280b806777
[core] Move generic setProperty() parts to the base Layer class
2020-03-24 20:53:55 +02:00
Thiago Marcos P. Santos
9dbd0a666a
[core] Fix modernize-pass-by-value errors
...
As reported by clang-tidy-8.
2020-03-23 20:05:40 +02:00
Thiago Marcos P. Santos
76b99eb8e8
[core] Fix modernize-deprecated-headers errors
...
As reported by clang-tidy-8.
2020-03-23 20:05:40 +02:00
Thiago Marcos P. Santos
cee3910f17
[core] Fix modernize-return-braced-init-list errors
...
As reported by clang-tidy-8.
2020-03-23 20:05:40 +02:00
Alexander Shalamov
71efb24e2d
Bump mapbox-base to 1.2.0
2020-03-23 11:33:06 -04:00
Thiago Marcos P. Santos
d15b9c1f9c
[core] Fix performance-unnecessary-value-param errors
...
As reported by clang-tidy-8.
2020-03-23 12:09:09 +02:00
Thiago Marcos P. Santos
37802eec36
[core] Fix performance-type-promotion-in-math-fn errors
...
As reported by clang-tidy-8.
2020-03-23 12:09:09 +02:00
Thiago Marcos P. Santos
6223fc2898
[core] Fix performance-inefficient-vector-operation errors
...
As reported by clang-tidy-8.
2020-03-23 12:09:09 +02:00
Thiago Marcos P. Santos
5210d720ad
[core] Fix performance-unnecessary-copy-initialization errors
...
As reported by clang-tidy-8.
2020-03-23 12:09:09 +02:00
Thiago Marcos P. Santos
cedb7368f1
[core] Fix performance-for-range-copy errors
...
As reported by clang-tidy-8.
2020-03-23 12:09:09 +02:00
Mikhail Pozdnyakov
8bf841a951
[core] Render::clearData clears fonts
2020-03-20 11:43:59 +02:00
Mikhail Pozdnyakov
2ae96ad687
[core] Introduce Renderer::clearData() instead of keepRenderData map options
...
`Renderer::clearData()` is a better API than the removed `MapOptions::keepRenderData()`:
- gives more flexibility to the client
- similar to the existing `Renderer::reduceMemoryUse()`
- the `MapOptions::keepRenderData()` API implementation could not handle the raise condition, which
happened if the new still image request had come before all tiles from the previous requests were loaded.
Co-authored-by: Dane Springmeyer <dane@mapbox.com >
2020-03-20 11:43:59 +02:00
galinelle
bc45d65c58
Add additional transformState::latLngToScreenCoordinate getter ( #16311 )
...
This change adds a latLngToScreenCoordinate overload, to retrieve
the projected vec4 in additional to the ScreenCoordinate object,
that is useful to detect whether the projected latLng is in front
or behind the camera.
2020-03-19 18:53:09 +02:00
zmiao
b45cae286e
Refactor within function
2020-03-19 14:40:49 +02:00
zmiao
df79b05178
[core] Using TileCoordinates for geometry comparison
2020-03-19 14:40:49 +02:00
Mikhail Pozdnyakov
6a68305e1e
[core] Add ImageManager::clear()
2020-03-18 20:14:15 +02:00
Mikhail Pozdnyakov
b48900b0a7
[core] Add RenderOrchestrator::clearData()
2020-03-18 20:14:15 +02:00
Mikhail Pozdnyakov
3536de5124
[core][tile|static mode] Introduce MapOptions::keepRenderData() flag
...
Render orchestrator stores the render data between render frames if this flag is set.
2020-03-18 20:14:15 +02:00
Dane Springmeyer
46a6932222
start using tname variable
2020-03-16 11:50:51 +02:00
Mikhail Pozdnyakov
a70b33be8b
[core] Fix crash at Placement::getSymbolPlacement()
2020-03-13 14:30:17 +02:00
Mikhail Pozdnyakov
05657e9573
[core] Binary size fixup
2020-03-12 23:35:55 +02:00
Mikhail Pozdnyakov
0bf8fdae9c
[core] Collision index uses doubled padding with the tilted view
2020-03-12 23:35:55 +02:00
Mikhail Pozdnyakov
57810759ef
[core] Variable labels stick to latest anchor if the view is tilted
...
This is done in order to improve labels stability and for the performace reasons.
2020-03-12 23:35:55 +02:00
Mikhail Pozdnyakov
f29865f31d
[core] Do not squeeze placement period if the view is tilted
...
If the view is not tilted, we want the new symbols to show up faster, so we squeeze the placement period.
On contrary, with the tilted view it's more important to make placement rarely for performance reasons and as the new symbols are normally "far away" and the user is not that interested to see them ASAP.
2020-03-12 23:35:55 +02:00
Mikhail Pozdnyakov
7a2126bebb
[core] Place already visible symbols first and hidden symbols last
2020-03-12 23:35:55 +02:00
kevin
f98cf0cd4b
[core] Not filter express in in filter.
2020-03-11 21:53:12 +02:00
Mikhail Pozdnyakov
b83de65813
[core] Adjust mapbox-gl-native for the updated debug shader semantics
2020-03-11 16:51:45 +02:00
Mikhail Pozdnyakov
6c26e141a8
Bump mapbox-gl-js
2020-03-11 16:51:45 +02:00
Mikhail Pozdnyakov
cc5e86b186
[core][tile mode] Fix assertion at line-center placement handling
...
The `symbolIntersectsTileEdges` algorithm should not be applied to the symbols with `line-center` placement
2020-03-10 20:32:34 +02:00
Mikhail Pozdnyakov
260148878c
[core] CollisionIndex::intercectsTileEdges -> intersectsTileEdges
2020-03-06 23:46:52 +02:00
Mikhail Pozdnyakov
42068691c8
[core] Tile mode placement algorithm must consider icons bounding boxes
...
Tile mode placement algorithm now checks if bounding boxes for both label text and icon are intersecting the edges of the tiles.
Before, it checked only text bounding boxes and thus label icons might have got cut off.
2020-03-06 23:46:52 +02:00
zmiao
f23599c41d
[core] Remove unnecessary intermediate PolygonFeature
2020-03-05 20:53:16 +02:00
zmiao
aa0c9c267f
[core] Fix within expression serialization + fix within expression equal operator
2020-03-05 20:53:16 +02:00
zmiao
c69d3b46b1
[core] Fix within case when point is on polygon boundary
2020-03-05 20:53:16 +02:00
zmiao
9fbcb45c89
[core] Make within expression support generic geoJSON data
2020-03-05 20:53:16 +02:00
Alexander Shalamov
81e116d41a
[core] Use weak annotation manager
...
Map and renderer / orchestrator should be able to run on a separate threads,
however, legacy AnnotationManager is shared between Map and Renderer, therefore
is not a thread safe. Until AnnotationManager is deprecated and removed from a
code-base, use it only via weak pointers.
2020-03-05 17:43:37 +02:00
Mikhail Pozdnyakov
44ac1f008a
[core] Drop BucketPlacementParameters
2020-03-03 16:13:48 +02:00
Mikhail Pozdnyakov
24fa599903
[core] Split LayerPlacementData and BucketPlacementData
2020-03-03 16:13:48 +02:00
Mikhail Pozdnyakov
f748972fe9
[core] Get rid of LayerPlacementData::firstInBucket
2020-03-03 16:13:48 +02:00
Mikhail Pozdnyakov
dea1063319
[core] Encapsulate placement code handling symbols sort ranges
2020-03-03 16:13:48 +02:00
Aleksandar Stojiljkovic
42469cdb66
Disable depth in heatmap offscreen rendering.
...
It triggers Metal depth stencil validation error since depth test is enabled with no depth attachment.
2020-03-02 12:19:58 +02:00
Mikhail Pozdnyakov
01c056f46d
[core] Fix iterators in addRegularDash()
...
Fix using of invalid iterators.
2020-02-28 21:42:03 +02:00
Thiago Marcos P. Santos
427d785848
[build] Make csscolorparser and parsedate vendors
...
They have a different license from the rest of the code
and this will make it explicit. Also the script for generating
the license will dectect them correctly.
2020-02-27 18:19:31 +02:00