Asheem Mamoowala
10a44050f4
Support TileJSON bounds property ( #10701 )
...
* [core] Parse TileJSON bounds property
* [core] Add TileRange and LatLngBounds::contains(CanonicalTileID)
Move LatLngBounds::contains impl to cpp file
* [core] Skip tile creation outside of tileset bounds
* [core] Fix TileRange for wrapped bounds and use for CustomTileLoader instead of LatLngBounds comparisons for tiles.
2018-01-05 06:35:31 -08:00
Konstantin Käfer
cbff0a972a
[core] don't generate clip IDs for buckets/layers that don't need to be clipped
2017-10-17 15:08:22 -07:00
Konstantin Käfer
f4cb3b8a4f
[core] make forcing cache/network only more explicit
...
Previously, we used the existence of a `prior*` field in the Resource object as an indication for whether we should consult the cache or not. However, this is prone to error, since a failed cache lookup won't set any prior fields. Therefore, we manually set `priorExpires` to 0. This in turn triggered another bug where generated wrong expiration timestamps when the server response we got was expired (or expired between sending and receiving).
This commit changes the flags so that we can now explicitly request CacheOnly/NetworkOnly (or All) loading methods, rather than the implicit Optional/Required naming scheme.
2017-10-12 10:41:49 +02:00
Konstantin Käfer
4dff51719b
[core] add algorithm for computing masks for raster tiles
2017-07-24 12:10:45 +02:00
Chris Loer
a432a289a3
[core] Change OverscaledTileID to also include a "wrap" value.
...
This prevents TilePyramid from sharing wrapped copies of tiles.
This is necessary because two wrapped tiles no longer share the same CollisionTile.
2017-07-11 09:10:24 -07:00
Konstantin Käfer
64a827c325
[core] rename getStencils() to getClipIDs() to better reflect what it actually does
2017-07-06 12:32:54 +02:00
Konstantin Käfer
107622a72b
[core] don't use unordered_* collections for things we need to sort anyway
2017-07-06 12:32:54 +02:00
Konstantin Käfer
6d526c7b1d
[core] refactor ClipID generation
2017-07-06 12:32:54 +02:00
Thiago Marcos P. Santos
bc868b8433
[core] Suppress "stencil mask overflow" warning
...
When it starts, we get a log warning for every frame, which is
expensive. Now we get only one warning.
2017-05-02 12:25:38 +03:00
Konstantin Käfer
9a9408e811
[core] Render parent raster tiles when ideal tile can't be loaded
2017-04-20 09:38:18 +02:00
Konstantin Käfer
e76de05402
[build] move logging to util
2016-11-22 20:58:51 +01:00
Konstantin Käfer
bcdbbbcac2
[core] don't assign clip IDs to tiles that aren't rendered
2016-11-08 18:09:58 +01:00
Bruno de Oliveira Abinader
38f536049a
[core] Moved util::log2 to its own header
...
- Added util::{MIN,MAX}_ZOOM_F to avoid consecutive conversions from
double to float
- Move util::log2 to its own header (part of mbgl/math)
2016-10-31 16:53:07 +02:00
Lucas Wojciechowski
37cb2bd756
[core] Convert uses of std::set to std::unordered_set ( #6325 )
...
* src/mbgl/annotation/annotation_manager.hpp
* src/mbgl/algorithm/update_renderables.hpp
* src/mbgl/geometry/glyph_atlas.hpp
* src/mbgl/renderer/painter.cpp and src/mbgl/renderer/render_item.hpp
* src/mbgl/renderer/symbol_bucket.hpp and src/mbgl/text/glyph_store.hpp
* src/mbgl/sprite/sprite_atlas.hpp
* include/mbgl/storage/network_status.hpp
* src/mbgl/text/collision_tile.cpp
* src/mbgl/style/update_batch.hpp
* platform/default/mbgl/storage/offline_download.hpp
* Add GlyphRangeSet typedef
* Fix whitespace & unused imports
2016-09-19 17:26:25 -07:00
Brad Leege
d0f9ba4998
[core] #3980 - Switching Core GL instances of map to unordered_map
2016-09-14 16:40:20 -07:00
John Firebaugh
a79d2afe1b
[core] Rename data ⇢ tile; use Resource::Necessity
2016-08-26 10:30:55 -07:00
John Firebaugh
6eab895bc0
[core] Use Range<uint8_t> instead of full Tileset where possible
2016-06-14 11:25:45 -07:00
John Firebaugh
5c7dfd948f
[core] *Tile ↔ *TileData
...
Tile is now the main base class; RasterTile, VectorTile, etc are its subclasses. GeometryTileData and its subclasses form the piece that's passed to the worker.
2016-06-13 10:59:33 -07:00
John Firebaugh
3ab7c1cca3
[core] Tile ⇢ RenderTile
2016-06-13 10:57:46 -07:00
Konstantin Käfer
4e5d065000
[core] load parents of missing tiles as optional
2016-06-10 12:42:14 +02:00
Konstantin Käfer
2c7f7fb566
[core] createTile callback can load optional and required tiles
2016-06-10 12:42:14 +02:00
Konstantin Käfer
1b8d280e3f
[core] refactor updateRenderables algorithm
2016-05-27 10:15:06 +02:00
Konstantin Käfer
ebff2234e4
[core] remove unused template definition
2016-05-27 10:15:02 +02:00
Konstantin Käfer
c60fd0604a
[core] TileData::isReady() => TileData::isRenderable()
2016-05-25 21:51:25 +02:00
Konstantin Käfer
e2bcea90fc
[core] use #pragma once instead of ifdef include guards
2016-05-25 21:35:37 +02:00
Konstantin Käfer
7332ae0073
[core] retain tiles differently and remove old TileID class
2016-05-10 14:50:56 +02:00
Konstantin Käfer
dde59eaf76
[core] move Painter and dependents to new *TileID classes
2016-05-10 14:50:56 +02:00
Konstantin Käfer
5b640fb446
[core] add algorithm for generating clip IDs based on the new TileID classes
2016-05-10 14:50:56 +02:00
Konstantin Käfer
ecc8e018fa
[core] add algorithm for detecting whether an ordered map contains covering children
2016-05-10 14:50:56 +02:00