summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* speed up fading when zooming even moreAnsis Brammanis2019-08-201-1/+1
| | | | And a linear adjustment seems to make more sense.
* [core] make symbols fade out faster while zooming outAnsis Brammanis2019-08-203-13/+24
| | | | | | | | | | | Zooming outcan make symbols overlap quickly. The area previously covered by the viewport is covered by a lot of colliding labels while the surrounding area has no labels. This difference produces an unwanted effect. This reduces that effect by: - reducing the fade duration while zooming out - doing placement more frequently while zooming out
* [core] Fix combination of icon-text-fit with text-variable-anchors and ↵Alexander Shalamov2019-08-2013-112/+254
| | | | text-writing-mode
* [core] also remove version info in ImageManager when removing an image (#15397)Konstantin Käfer2019-08-191-0/+1
|
* [core] Fix use after std::move detected by clang-tidyThiago Marcos P. Santos2019-08-193-3/+5
| | | | | Detected by the bot being setup at https://github.com/mapbox/mapbox-gl-native/pull/15385.
* [core] Fix layer impl cast in render layer implementationsMikhail Pozdnyakov2019-08-1610-0/+46
| | | | | | This PR puts `impl()` functions definitions into a nameless namespace to provide internal linkage and to make sure that appropriate cast function is invoked.
* Indroduce clusterProperty option for aggregation (#15287)zmiao2019-08-168-27/+162
| | | | | | | | | | * indroduce clusterProperty option for aggregation * remove unnecessary codes * update geojson_option conversion * fix reviewing findings
* [core] Check type of a convertible value when constructing legacy filterupstream/node-releaseAlexander Shalamov2019-08-161-1/+6
|
* [core][node] Serialize formatted expression's text-color optionAlexander Shalamov2019-08-151-0/+7
| | | | This enables proper round-tripping for serialized format expression.
* [core] Clear collision text boxes between symbol placement iterationsAlexander Shalamov2019-08-141-0/+1
|
* [core] Enable variable placement with allowed text overlapMikhail Pozdnyakov2019-08-131-2/+6
|
* [core] Simplifications to variable text placement code pathMikhail Pozdnyakov2019-08-132-12/+10
|
* [core] Render half-width glyphs in upright orientationAlexander Shalamov2019-08-136-8/+31
| | | | | | | | | | This change forces glyphs whose natural orientation in vertical writing mode is 'sideways' to be rendered in upright orientation (only for non complex text layouts). This is different compared to W3C / browser behavior that is by default, renders glyphs in their respective natural orientation. In the future, there might need to add a new layout property that would control glyph orientation separately (e.g., text-glyph-orientation: natural | upright).
* [core] Use constexpr map for verticalized punctiationAlexander Shalamov2019-08-131-2/+4
|
* [core] Break lines for vertical writing modeAlexander Shalamov2019-08-131-4/+3
|
* [core] Rotate text collision box based on text-rotation valueAlexander Shalamov2019-08-132-5/+7
|
* [core] Implement support for "text-writing-mode" layout propertyAlexander Shalamov2019-08-1316-107/+343
|
* [core] Add style bindings for "text-writing-mode" layout propertyAlexander Shalamov2019-08-137-2/+50
|
* Changelog entries and a nit for #15281Aleksandar Stojiljkovic2019-08-081-1/+1
|
* [core] Reuse flyTo constant screen velocity calculation for easeTo ↵Aleksandar Stojiljkovic2019-08-082-18/+26
| | | | | | | | | | | | | implementation. When using flyTo for easeTo: Limit zoom out to min(startZoom, targetZoom). Reduce cinematic zoom in animation at the end of transition, Linear zoom interpolation. The patch also sets linear interpolation for flyTo edgeInsets animation, as it looks more appropriate to follow the approach taken for pitch and bearing. Fixes: #15144
* [core] easeTo: linear interpolation over zoom instead of scaleAleksandar Stojiljkovic2019-08-081-6/+5
| | | | Fixes: 15144
* [core] Enable opaque pass for background layer. fix heatmap+background test.Aleksandar Stojiljkovic2019-08-052-12/+21
| | | | | | Follow the approach from mapbox-gl-js for enabling opaque pass for background layer (same as for fill layer). Fix combinations/heatmap-translucent--background-opaque render test.
* [core] Remove ProjectedCollisionBox from CollisionBoxMikhail Pozdnyakov2019-08-057-64/+91
| | | | | - Minus 20 bytes from CollisionBox size. - Fix constness at Placement::placeBucket
* [core] Introduce ProjectedCollisionBox typeMikhail Pozdnyakov2019-08-055-60/+83
| | | | | | ProjectedCollisionBox encapsulates geometry of the projected collision box, it is using union and thus provides memory save - 12 bytes per collision box instance.
* [core] Remove unused CollisionBox::offsetMikhail Pozdnyakov2019-08-052-8/+9
|
* [core] Fix using of uninitialized circle in collision indexMikhail Pozdnyakov2019-08-051-3/+6
| | | | | In `CollisionIndex::placeLineFeature()` check that previous circle was initialized before asking its center coordinates.
* [core] Increase round join approximation precisionAlexander Shalamov2019-08-051-1/+1
|
* [core] A more accurate algorithm for approximating round line joinsAlexander Shalamov2019-08-051-17/+25
| | | | Port for https://github.com/mapbox/mapbox-gl-js/pull/8275
* [core] Fix render tile set source updateMikhail Pozdnyakov2019-08-011-1/+1
| | | | | | Before this change, the `RenderTileSetSource` implementation ignored update calls for the sources whose description was not yet loaded and it lead to missing of relayout requests.
* [core] Limit pitch based on edge insets. Fix max Z calculation in getProjMatrix.Aleksandar Stojiljkovic2019-08-013-16/+38
| | | | | | | | | | | | | Patch partly fixes #15163 in a way that it doesn't allow loading tens of thousands of tiles and attempt to show area above horizon: Limit pitch based on edge insets. It is not too bad - current limit of 60 degrees stays active until center of perspective is moved towards the bottom, to 84% of screen height. The plan is to split removal of 60 degrees limit to follow up patch. Fix max Z calculation in getProjMatrix. TransformState::getProjMatrix calculation of farZ was complex with possibility to lead to negative z values. Replacing it with simpler, precise calculation: furthestDistance = cameraToCenterDistance / (1 - tanFovAboveCenter * std::tan(getPitch())); TransformState::getProjMatrix calculation of farZ was an aproximation. Replacing it with simpler, but precise calculation. Related to: #15163
* [core] Fix int overflow issue in GridIndexAlexander Shalamov2019-07-302-16/+18
|
* [build] Use mapbox-base optionalBruno de Oliveira Abinader2019-07-292-6/+4
|
* [core] Shrink RenderOrchestrator::filteredLayersForSource in reduceMemoryUse()Mikhail Pozdnyakov2019-07-291-3/+1
| | | | | Before this change, `RenderOrchestrator::filteredLayersForSource` shrank inside `createRenderTree()`, which potentially might have affected rendering performance.
* [core] Fix assertion at RenderRasterLayer::prepare()Mikhail Pozdnyakov2019-07-262-2/+5
| | | | | It shall consider that image data might not be available until the source loads it.
* [core] Avoid copying feature propertiesMikhail Pozdnyakov2019-07-258-8/+18
|
* [core] Simplfy ToGeometryCollectionMikhail Pozdnyakov2019-07-251-32/+7
|
* [core] Optimize Query Rendered Features APIMikhail Pozdnyakov2019-07-252-7/+9
| | | | | | | | This PR filters out invisible layers before quering features (rather than after, like it happened before). With this change `API_queryRenderedFeaturesAll` performance test passes almost two times faster.
* [core] GeometryCollection must not be implicitly copiedMikhail Pozdnyakov2019-07-245-15/+21
|
* [core] Optimize RenderLineLayer::queryIntersectsFeatureMikhail Pozdnyakov2019-07-241-11/+24
|
* [core] Default GeometryTileFeature::getGeometries() implementationMikhail Pozdnyakov2019-07-243-4/+6
|
* [core] Force getGeometries() return const refAlexander Shalamov2019-07-2412-24/+32
|
* [core] Introduce VertexVector::extend() and use it in placement code.Mikhail Pozdnyakov2019-07-232-46/+44
|
* [core] Remove unused field from icon bufferAlexander Shalamov2019-07-231-1/+0
|
* [core] Release quad data after vertex buffers are createdAlexander Shalamov2019-07-235-97/+180
|
* [core] SymbolBacket creates collision buffers optionallyMikhail Pozdnyakov2019-07-225-40/+52
| | | | sizeof(SymbolBucket) : 1024 -> 704
* [core] Symbol bucket uses shared layoutMikhail Pozdnyakov2019-07-226-91/+93
| | | | sizeof(SymbolBucket): 2296 -> 1024
* [core] sizeof(SymbolBucket) 2312 -> 2296Mikhail Pozdnyakov2019-07-222-15/+22
|
* [core] Introduce RenderTileSetSource classMikhail Pozdnyakov2019-07-228-125/+132
| | | | Encapsulates the tiles update logic based on the given tile set.
* [core] Avoid unneeded tile sets copying at sources codeMikhail Pozdnyakov2019-07-229-33/+22
|
* [core] Render sources keep the existing tiles until the new tileset is readyMikhail Pozdnyakov2019-07-223-12/+24
| | | | | In Continuous map mode, keep the existing tiles if the new tileset is not yet available, thus providing smart style transitions without flickering.