Chris Loer
b7e2b11a75
[core] Support for excluding ideographic glyphs from offline downloads.
2018-12-21 15:13:48 -08:00
Mikhail Pozdnyakov
cf6c97ad68
[core] Remove fnv_hash.hpp
2018-12-20 09:50:14 +02:00
Mikhail Pozdnyakov
d4d12fb8a5
[core] Use eternal::hash_map in style::Layers
2018-12-19 19:09:19 +02:00
Alexander Shalamov
a1ca06e304
[core] Introduce Renderer::queryFeatureExtension API
...
New interface allows it's users to query additional information about
feature that was provided by qRF interface. This is particularly
useful for clustered features.
2018-12-12 15:08:18 +02:00
Alexander Shalamov
664ceb4398
[core] Share GeoJSONData pointer as weak_ptr instead of raw ptr
2018-12-12 15:08:18 +02:00
Alexander Shalamov
8a03d16990
[core] Expose getChildren, getLeaves, getClusterExpansionZoom on SuperclusterData
2018-12-12 15:08:18 +02:00
Chris Loer
d812babecd
[core] Avoid divide-by-zero when transition duration is 0..
...
Fixes issue #13506 -- transition duration of 0 would cause symbol flickering.
2018-12-11 14:03:34 -08:00
Chris Loer
662a495561
[docs] EnterIdle -> BecomeIdle
2018-12-11 11:46:16 -08:00
Chris Loer
70c2d5a4ca
[core, darwin, android] Add onDidEnterIdle to MapObserver.
...
didEnterIdle fires whenever render completes and no repaint is scheduled.
2018-12-11 11:46:16 -08:00
Mikhail Pozdnyakov
c043d01e14
[core]Disable RenderAnnotationSource when annotations are disabled
...
This patch disables creation of `RenderAnnotationSource` instances
and thus saves extra 4Ki on Android when `LayerManager::annotationsEnabled`
is `false`.
2018-12-11 15:09:34 +02:00
Mikhail Pozdnyakov
ebd87a5442
[core, android, darwin] Move layer factories to separate files
2018-12-10 18:20:32 +02:00
Łukasz Paczos
794b851f02
[android] expose Formatted text-field setter
2018-12-04 17:22:38 +01:00
Konstantin Käfer
64559a255b
[core] convert CompoundExpressionRegistry to constexpr hash map
2018-12-04 16:20:51 +02:00
Konstantin Käfer
2b9f3aad9a
[core] use constexpr map using eternal for expression lookups
2018-12-04 16:20:51 +02:00
Vladimir Agafonkin
c89daf6bf1
Add basic shader minification ( #13500 )
...
* add basic shader minification (same GL JS does)
* don't remove line break at shader end
2018-12-04 16:09:43 +02:00
Mikhail Pozdnyakov
92352de87d
[core] layermanager folder
...
Move `LayerManager` and `LayerFactory` abstract classes to a dedicated folder.
2018-11-30 19:09:17 +02:00
Bruno de Oliveira Abinader
369d1f005b
[core] Do not consider X axis when constraining scale
2018-11-29 14:23:55 +02:00
Bruno de Oliveira Abinader
e64c28613a
[core] Support fill-extrusion-vertical-gradient
2018-11-29 14:23:55 +02:00
Mikhail Pozdnyakov
ad03e42b28
[core] LayerManager can disable annotations
...
At the moment, the annotations implementation in the `mapbox-gl-native`
core is creating concrete layer instances apart from `LayerManager/LayerFactory`
code path.
So, annotations must be disabled if the `LayerManager` implementation does
not provide line, fill or symbol layers (those, used by the annotations).
Note: in future, annotations implementation will be moved from the core to the
platform SDK level(see https://github.com/mapbox/mapbox-plugins-android/tree/master/plugin-annotation )
and `LayerManager` won't need to disable it.
2018-11-28 17:18:38 +02:00
Bruno de Oliveira Abinader
20ca1a0418
[core] Cleanup Transform, use {jump,ease}To() instead
2018-11-27 21:38:36 +02:00
Bruno de Oliveira Abinader
e8f7866e9e
[core] Remove error-prone setlatLng overload
2018-11-27 21:38:36 +02:00
Mikhail Pozdnyakov
361982fef8
[core][Android][Darwin] LayerManager creates RenderLayer instances
...
`LayerManager` is now responsible for `RenderLayer` instances creation,
so that there is a single entry point for creating of objects, which
correspond to a certain layer type.
The `LayerType type` field is dropped from `Layer::Impl`.
2018-11-27 18:10:21 +02:00
Bruno de Oliveira Abinader
52cce7925d
[core] Camera center and anchor points are mutually exclusive
2018-11-26 17:15:51 +02:00
Bruno de Oliveira Abinader
82be3104cd
[core] Fix VectorTileFeature::getValue() semantics after geometry@v1.0.0
2018-11-26 12:43:13 +02:00
Minh Nguyễn
7d5be980e2
[core] Fixed {prefix} evaluation
...
This appears to have been an attempt to use the std::string fill constructor, but it ended up creating a one-character-long string and attempting to overwrite the null terminator.
2018-11-21 09:54:05 -08:00
Bruno de Oliveira Abinader
594d2074a3
[core] Let placement transitions use the transition duration, if set, and allow disabling them entirely
2018-11-21 16:43:20 +02:00
Bruno de Oliveira Abinader
5fb0b0c1bc
[core] Let property evaluation transitions use the transition duration, if set
2018-11-21 16:43:20 +02:00
Mikhail Pozdnyakov
8ac87ec5cb
Refactor util::fontStacks()
...
So that it does not downcast `Layer::Impl` instances.
Also, an unneeded `std::vector` construction was removed from
`Parser::fontStacks()`.
2018-11-19 17:16:54 +02:00
Alexander Shalamov
9592e61288
[core] Construct RenderItem objects in-place and remove unused headers
2018-11-19 14:06:21 +02:00
Alexander Shalamov
e59110d586
[core] Remove RenderLayer's is<> as<> methods
2018-11-19 14:06:21 +02:00
Alexander Shalamov
77911f1cc9
[core] Replace RenderSymbolLayer downcast with symbol interface
2018-11-19 14:06:21 +02:00
Alexander Shalamov
20c471669c
[core] Remove casts in buckets
2018-11-19 14:06:21 +02:00
Alexander Shalamov
eb170b250a
[core] Add use LayerTypeInfo::Layout for the layers that require Layout
2018-11-19 14:06:21 +02:00
Alexander Shalamov
05d5edfa74
[core] Remove casts where expected type is part of the contract
2018-11-19 14:06:21 +02:00
Alexander Shalamov
767745e8b8
[core] Remove casts for Custom and Background render layers
2018-11-19 14:06:21 +02:00
Alexander Shalamov
a7274f66d0
[core] Move layer specific color ramp updates behind common update() method
2018-11-19 14:06:21 +02:00
Alexander Shalamov
f6ad5f378e
[core] Move RenderTile filtering / sorting logic to render layers
2018-11-19 14:06:21 +02:00
Alexander Shalamov
006ee8b003
[core] Move markContextDestroyed() to the RenderLayer
2018-11-19 14:06:21 +02:00
Alexander Shalamov
44906b1ff3
[core] Remove downcasts for layers that require 3D render pass
2018-11-19 14:06:21 +02:00
Alexander Shalamov
527851e2aa
[core] Add static layer properties to mbgl::style::LayerTypeInfo
2018-11-19 14:06:21 +02:00
Huyen Chau Nguyen
9a606caf0b
[core] define number of concurrent downloads in online file source variable
2018-11-15 12:19:48 -08:00
Mikhail Pozdnyakov
33818233cf
[core][android] Introduce mbgl::style::LayerTypeInfo
...
The `LayerTypeInfo` contains static meta data about certain layer type.
Each layer module should have a single immutable `LayerTypeInfo` instance
for the represented layer type. Both `LayerImpl` and `LayerFactory` from the
module always refer to the same `LayerTypeInfo` instance, so address of this
instance can be used as a layer module Id during the process life time.
2018-11-15 18:32:31 +02:00
Bruno de Oliveira Abinader
db2e1b2e5f
[core] Add RendererState::{pixelForLatLng,latLngForPixel}
2018-11-14 12:22:22 +02:00
Bruno de Oliveira Abinader
bf8b24fa8d
[build] Update to geometry v1.0.0
2018-11-13 17:28:26 +02:00
Mikhail Pozdnyakov
5a70f2b150
noexcept specifier for layer factory methods
2018-11-07 16:34:20 +02:00
Mikhail Pozdnyakov
ffdeef3a26
Refer corresponding LayerFactory instance from the Layer::Impl
2018-11-07 16:34:20 +02:00
Alexander Shalamov
f2d9d92d26
[core] Change toLowerHex to produce lower hex sequences
2018-11-07 11:29:40 +02:00
Thiago Marcos P. Santos
7ff85374a7
[build] Remove #pragma diagnostic for boost
...
Boost is now included as a system header and the compiler
should ignore it when issuing warnings.
2018-11-01 16:29:37 +02:00
Mikhail Pozdnyakov
cfcb53128b
Introduce the style::Layer factory classes
...
This patch introduces the initial implementation of
- A `LayerFactory` abstract class that creates `style::Layer` instances of
a certain layer type (line, hillshade, round, ..)
- A singleton `LayerManager` class, which is responsible for initializing
the `LayerFactory` instances and forwarding the `create()` calls to the
corresponding factory.
2018-10-31 18:05:01 +02:00
Mikhail Pozdnyakov
56808731b6
Remove style::Layer::is()/as()
2018-10-31 11:22:46 +02:00