Anand Thakker
b8654b3b04
[core] Move SourceType to the 'style' namespace
2017-10-16 16:32:53 -07:00
Konstantin Käfer
8fae8a1645
[core] Add minzoom to GeoJSONOptions
2017-09-28 15:47:21 -07:00
Ivo van Dongen
97a010cc9b
[core] custom layer - add contextLost callback
...
- optional callback method that can be used to do cleanup when the context has been lost before re-initialisation
2017-09-22 23:33:56 +03:00
Asheem Mamoowala
69b52367d3
[core][ios][macos][android]DDS-ify text-letter-spacing and text-max-width
2017-08-30 10:59:08 -07:00
Lauren Budorick
2de89a99bc
Implement icon-anchor property
2017-08-28 13:32:56 -07:00
Bruno de Oliveira Abinader
6179e0f9c0
[core] Added Style::getDefaultCamera()
2017-08-11 22:04:52 +03:00
Lauren Budorick
a8ef2af353
[core][android][macos][ios] Implement property functions for line-join, text-justify, text-anchor ( #9583 )
2017-07-26 13:18:47 -07:00
Bruno de Oliveira Abinader
5d4ed27068
[core] Bracket init works for optional<T> in GCC 4.9
2017-07-19 19:24:30 +03:00
Asheem Mamoowala
8ae7010546
[core][ios][android][macos] Use premultiplied image directly for RasterTile and ImageSource, un-premultiply in the shader for blending
2017-07-17 12:20:03 -07:00
Chris Loer
e8657becc5
[core] Update shaders.
...
Implements 'icon-pitch-alignment' (issue #9345 )
Fixes issue #9456 (map-aligned point label regression)
2017-07-12 14:14:09 -07:00
Bruno de Oliveira Abinader
4014aa6721
[core] GCC 4.9 bracket initialization issues
2017-07-12 20:42:29 +03:00
Bruno de Oliveira Abinader
2fae373fc9
[core] GCC 4.9 is unable to deduce ctors when using bracket init
2017-07-12 20:42:29 +03:00
Bruno de Oliveira Abinader
f1ac757bd2
[core] GCC 4.9 does not fully support custom variable templates
2017-07-12 20:42:29 +03:00
Chris Loer
d5fbcb242a
[core] Implement circle-pitch-alignment property
...
Closes issue #9349 .
2017-07-06 09:39:26 -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
Lauren Budorick
87a70c4793
[core] Enable property functions for line-width ( #9250 )
2017-06-19 14:27:43 -07:00
John Firebaugh
e361bcf668
[core] Fix composite function approximation for non-integer stops
2017-06-16 12:46:12 -07:00
Anand Thakker
f59eb822e1
Fix undefined memory access in getCoveringRanges() ( #9227 )
...
* Add simple unit tests for SymbolSizeBinder
* Fix bug in symbol size uniform value calculation
For camera functions we were setting the zoom levels in "covering ranges" to
`[(zoom stop <= tile zoom), (zoom stop >= 1 + tile zoom)]`, but then evaluating
the function at `[tile_zoom, tile_zoom + 1]`.
* Check for it != end() before accessing it->first
2017-06-09 06:28:14 -04:00
John Firebaugh
9dfc2d924d
[core] Collection-level immutability
...
Introduce a second level of immutability, over each of the collections held by a style: sources, images, and layers. Tracking immutability at this level allows us to short-circuit significant portions of the RenderStyle update logic via a simple equality check, greatly improving performance.
2017-06-05 19:38:08 -07:00
John Firebaugh
591af0021b
[core] Refactor RenderSource updates
...
* Eliminate updateBatch in favor of diffing layers and detecting changes to properties upon which layout depends.
* Replace RenderSource::{update,remove,invalidate,reload}Tiles with a single update method
* Replace TilePyramid::{update,remove,invalidate,reload}Tiles with a single update method
* Remove Style& dependency TODO from GeometryTile and TileParameters
2017-06-05 19:38:08 -07:00
Asheem Mamoowala
8b37a0704c
[core] Use fixed-size std::array for ImageSource coordinates
2017-06-01 15:38:01 -07:00
Asheem Mamoowala
1b86bf16b2
[core] Render Image Source
2017-06-01 15:38:01 -07:00
Asheem Mamoowala
c0c1028dcf
[core] Add toDouble Conversion method for correctly parsing Lat Lng coordinates
2017-06-01 15:38:01 -07:00
Asheem Mamoowala
7a010df956
[core] Add ImageSource support to style parsers
2017-06-01 15:38:01 -07:00
Ivo van Dongen
ff3dc29ffd
[core] ensure layer::accept works with non-void return values on gcc
2017-05-30 13:07:03 +03: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
Ivo van Dongen
2dd8553096
[core] forward visitor in layer::accept
2017-05-23 10:06:56 +03:00
John Firebaugh
1f921299b0
[core] Make ExponentialStops behavior consistent; add tests
2017-05-19 11:48:45 -07:00
John Firebaugh
bdff99c853
[core] Eliminate round-trip through Value in CameraFunction::evaluate
2017-05-19 11:48:45 -07:00
John Firebaugh
786707649a
[core] Remove ambiguous get{Width,Height} accessors from style::Image
2017-05-17 11:23:47 -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
John Firebaugh
da4d735e2c
[core] Unify {Paint,Layout,Light}Properties
2017-05-15 09:45:55 -07:00
John Firebaugh
8fb1a81c46
[core] Immutable<Impl> for Image
2017-05-15 08:20:18 -07:00
Ivo van Dongen
cc9f040a2d
[core] Split style image collection from SpriteAtlas
2017-05-12 13:19:00 -07:00
John Firebaugh
afead4e749
[core] Return {Source,Layer}::getID by value
...
Avoid dangling references in the following sequence:
auto& id = layer->getID();
layer->setMaxZoom(2);
std::cout << id;
The reference would be dangling because mutating the layer allocates a new Immutable impl, and there may be no references to the prior impl, which held the id.
2017-05-12 11:26:27 -07:00
John Firebaugh
c2a5894f2d
[core] Immutable Impls
2017-05-12 11:26:27 -07:00
Bruno de Oliveira Abinader
37046938da
[tidy] modernize-raw-string-literal
2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
fa36110dfb
[tidy] modernize-use-auto
2017-05-12 18:07:36 +03:00
John Firebaugh
baaae99a03
[core, android] Factor JSON string conversions
...
This adds a `convertJSON` template, to be used like:
Error error
optional<Foo> foo = convertJSON<Foo>(string, error);
Internally, it parses the string with RapidJSON and then calls `convert<Foo>(parsed, error)`.
While here, rationalize GeoJSON converters and fix error handling for Tileset conversion in OfflineDownload.
2017-05-08 13:48:57 -07:00
Ivo van Dongen
6fd40867d6
[core] delegate light changes to render light
2017-05-08 19:39:55 +03:00
Ivo van Dongen
feae5e22ee
[core] generated accessor methods on light
2017-05-08 19:39:55 +03:00
John Firebaugh
54b7684baa
[core] Remove unused declaration
2017-05-05 08:57:30 -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
Ivo van Dongen
3c175adf30
[core] split off render layers
2017-04-25 17:23:54 -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
John Firebaugh
3c23faf65a
[core] More complete fix for composite function interpolation edge case
...
b5b4549 / #8613 handled the edge case for layout properties, but not paint properties. Move the check for a degenerate range to interpolationFactor in order to handle both correctly.
2017-04-20 16:11:57 -07:00