Commit Graph

383 Commits

Author SHA1 Message Date
Asheem Mamoowala
df20b0cbec [core] Add cameraForLatLngs() method with modified bearing 2017-10-09 13:58:11 -07:00
Ivo van Dongen
be859427a9 [core] remove map update enum 2017-08-31 18:45:28 +03:00
Ivo van Dongen
4c96603eb6 [core] move annotation tile updates to renderer
- AnnotationData.updateData() was not completely thread safe. Calling it from the renderer thread instead of the main thread fixes this
- Since we moved the coalescing of updates out of the map and into the renderer frontend implementations, the updateData was called too much, resulting in degraded performance. Moving it into the renderer makes sure it gets coalesced again.
2017-08-31 18:45:28 +03:00
Ivo van Dongen
377faaf4f8 [core] annotation manager - manage dirty state internally 2017-08-31 18:45:28 +03:00
Bruno de Oliveira Abinader
d43757271e [node] Cleanup NodeMap::Render 2017-08-31 10:17:21 +03:00
John Firebaugh
9c02e4d7dd [core] Inline Renderer::Impl::doRender 2017-08-24 13:06:23 -07:00
John Firebaugh
d05486391a [core] Remove unnecessary members from UpdateParameters 2017-08-24 13:06:23 -07:00
Bruno de Oliveira Abinader
6179e0f9c0 [core] Added Style::getDefaultCamera() 2017-08-11 22:04:52 +03:00
Ivo van Dongen
3832f8d0d8 [core] renderer interface 2017-07-18 10:45:12 +02:00
Ivo van Dongen
57351c068b [core] split backend from mapobserver 2017-07-18 10:45:12 +02:00
Ivo van Dongen
e35cbbae55 [core] mutate style on annotation mutations immediately 2017-07-18 10:45:12 +02:00
Bruno de Oliveira Abinader
4014aa6721 [core] GCC 4.9 bracket initialization issues 2017-07-12 20:42:29 +03:00
Thiago Marcos P. Santos
407fbc70b1 [core] Prefetch low resolution tiles 2017-07-07 14:28:52 +03:00
Bruno de Oliveira Abinader
60eae41549 [core] Factor timePoint initialization: take 2 2017-07-04 15:50:50 +03:00
Ivo van Dongen
20189db67f [core] remove tile cache size setter 2017-06-27 17:02:40 -07:00
Ivo van Dongen
24a00231f3 [core] fix render doesn’t flag style mutation 2017-06-26 16:19:06 -07:00
John Firebaugh
40e4755621 [core] Move setStyleJSON/URL to Style; add Map::setStyle 2017-06-22 08:04:39 -07:00
John Firebaugh
1520a56813 [all] Promote Style to public API 2017-06-22 08:04:39 -07:00
John Firebaugh
be7e9bbb8d [core] Refactor CustomLayer internals
Move the responsibility for initialization/deinitialization/rendering to RenderCustomLayer. This eliminates special case code from Map and Style.
2017-06-22 08:04:39 -07:00
John Firebaugh
fe024bbdf6 [core] Implement "smart setStyle" 2017-06-15 07:43:51 -07:00
John Firebaugh
9d276f3b0f [core] Dynamic program compilation for data-driven properties 2017-06-13 12:21:50 -07:00
John Firebaugh
97eb62fe7c [core] Don't share TransformState reference 2017-06-05 19:38:08 -07:00
John Firebaugh
74af076d40 [core] Split RenderStyle from Style 2017-06-05 19:38:08 -07:00
Bruno de Oliveira Abinader
99cfbacdfb [core] Make TransformState LatLngBounds optional 2017-06-01 17:04:09 +03:00
Bruno de Oliveira Abinader
b83dfb7eb5 Revert "[core] Factor timePoint initialization"
This reverts commit 3790caafa3.
2017-05-30 13:03:07 +03:00
John Firebaugh
2e0ceeb9c1 [core] Don't need unique_ptr for AnnotationManager 2017-05-26 11:21:56 -07:00
John Firebaugh
aa216d0025 [core] Don't use a separate SpriteAtlas for annotation images
Instead, just add them to the Style as needed. Includes changes from #8905 and takes care to avoid regressing #3817.
2017-05-26 11:21:56 -07:00
John Firebaugh
d766af44c8 [core] Auto-growable SpriteAtlas using shelf-pack 2017-05-26 11:21:56 -07:00
John Firebaugh
cc1ea759a6 [core, node, darwin, android, qt] Make image ID part of Image
More like Source and Layer.
2017-05-16 12:26:35 -07:00
John Firebaugh
9eba2a66d1 [core, node, darwin, qt] Remove support for paint classes 2017-05-15 09:45:55 -07:00
Ivo van Dongen
cc9f040a2d [core] Split style image collection from SpriteAtlas 2017-05-12 13:19:00 -07:00
John Firebaugh
c2a5894f2d [core] Immutable Impls 2017-05-12 11:26:27 -07:00
Bruno de Oliveira Abinader
870067360f [tidy] modernize-pass-by-value 2017-05-12 18:07:36 +03:00
Ivo van Dongen
20810f988a [core] render light 2017-05-08 19:39:55 +03:00
John Firebaugh
66da759426 [core] Reduce use of RecalculateStyle
* Don't use it to track zoom changes. Instead, Style::update can use the zoom history to check for a change in zoom from the previous frame.
* Don't use it to track active property transitions. Style already knows which layers/light have an active transition, and can re-evaluate only those that do.

This leaves layer property changes as the only use of RecalculateStyle.
2017-05-05 08:56:36 -07:00
John Firebaugh
e7d2796762 [core] Omnibus Style::update method
Combine Style::cascade, recalculate, relayout, and updateTiles into a single method. This allows multiple loops over sources and layers to be consolidated and prepares for additional Style-Map decoupling: rather than tracking pending updates via a set of Update flags held by the Map and passed to the Style, the Style can use its own data to determine what to update.
2017-05-04 09:59:56 -07:00
John Firebaugh
89f1ffc6d2 [core] UpdateParameters ⇢ TileParameters 2017-05-04 07:29:08 -07:00
John Firebaugh
3790caafa3 [core] Factor timePoint initialization 2017-05-03 11:20:01 -07:00
John Firebaugh
d5f4d0f05f [core] Move render-related sources out of style directory/namespace
Moves the following to the renderer directory and out of the style namespace:

* CascadeParameters
* PropertyEvaluationParameters
* UpdateParameters
* PropertyEvaluator
* DataDrivenPropertyEvaluator
* CrossFadedPropertyEvaluator
* PaintPropertyBinder
* PaintProperyStatistics
* PossiblyEvaluatedPropertyValue
* TransitioningLight
* EvaluatedLight
2017-05-03 08:30:17 -07:00
John Firebaugh
6c7730ee7c [core] No need to Update::Classes after removing a layer 2017-05-03 08:30:02 -07:00
John Firebaugh
b8b9978b69 [core] No need to manually set Update::Classes flag after annotation update
Since the advent of the runtime styling APIs, the APIs used by AnnotationManager::updateStyle will automatically set this flag as needed.
2017-05-03 08:30:02 -07:00
John Firebaugh
1e26d99e1e [core] Remove forced style cascade
This should happen automatically during rendering. After removing, I can no longer replicate the original issue (#1889).
2017-05-03 08:29:46 -07:00
John Firebaugh
e9872b4ed0 Revert "[node] Temporary: exit(0) on exception in Painter::render"
This reverts commit f0d4411871.
2017-05-02 16:13:21 -07:00
John Firebaugh
3f0c89d633 [core] Refactor Source::*Impls into RenderSources and TilePyramid 2017-05-02 08:45:09 -07:00
John Firebaugh
c2b00378b7 [all] Push querySourceFeatures back out to Map
Once Source and RendererSource are split, Source will no longer have access to tiles.
2017-05-02 08:45:09 -07:00
Lauren Budorick
f6e79d7073 [core] Render fill-extrusion layers (#8431) 2017-04-27 15:56:55 -07:00
John Firebaugh
5dd98df50b [all] Rationalize style::Image
A style has a collection of images, just as it has collections of sources and layers.

* Name things appropriately
* Use std::unique_ptr
2017-04-24 15:52:28 -07:00
Konstantin Käfer
59055cf403 [core] Move Sprite parsing to thread pool 2017-04-24 10:42:47 +02:00
John Firebaugh
092da9c956 [core] Remove non-Map-dependent projection methods from Map 2017-04-18 14:43:31 +03:00
Bruno de Oliveira Abinader
09a2271576 [core] Ignore shortest path in Map::pixelForLatLng 2017-04-14 12:52:20 -07:00