summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [core] make padding optional when camera position is requested.Łukasz Paczos2019-08-295-6/+6
| | | | When padding is not provided, the current one that's cached in the TransformState is going to be returned.
* [core] Remove programCacheDir parameter from ProgramParametersAnder Conselvan de Oliveira2019-08-277-35/+9
| | | | | | Binary shader support has been removed in commit c2f974f2a573 ([core] Remove binary shader support). This left-over parameter is not used anywhere anymore.
* [core] fix mixed sdf + non-sdf icon rendering in one layer (#15456)zmiao2019-08-269-105/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [core] fix icon symbol rendring when sdf and non-sdf icon in the same symbol layer * fix build error * fix typo * revert renderableSegment change * simplify codes * fix build error * refine sdf icon flag * [core] fix mixed sdf + non-sdf icon rendering in one layer * remove iconstatus getter in stymbol bucket * fix review findings * provide bitwise operator for SymbolContent enum * use MBGL_MBGL_CONSTEXPR * add one missing update for sdfIcon * make renderer symbol type as enum
* [core] Fix tileCover / TileCoordinate fromScreenCoordinate(#15442)Aleksandar Stojiljkovic2019-08-235-16/+27
| | | | | | | Remove unecessary tile coordinate unproject -> project step. Unproject+project isn't always a noop and this was the issue leading to wrong cover calculation in high pitch values. Fixes: https://github.com/mapbox/mapbox-gl-native/issues/15442
* [core] Export symbol placement update status from MapObserverMikhail Pozdnyakov2019-08-235-9/+11
|
* [core] Fill layer pattern change must cause re-layoutMikhail Pozdnyakov2019-08-221-0/+1
| | | | | | Otherwise, pattern properties update is not taken in action. This caused the following render tests failure: `build/mbgl-render-test runtime-styling/layer-add-fill regressions/mapbox-gl-js#3107 --recycle-map`
* [core] Fix GeoJSON tiles updateMikhail Pozdnyakov2019-08-227-9/+10
| | | | | | | | | | | | | Before this change, GeoJSON tiles data were updated before the corresponding layers were applied, therefore `GeometryTileWorker` parsed new data with the outdated layers. It caused the following render test failure: `mbgl-render-test text-max-width/unlimited regressions/mapbox-gl-native#9976 --recycle-map` Now a GeoJSON tile, which needs relayout, is not parsed until the valid layers are set.
* [core] Don't overwrite locally renderable glyphs with remote glyphsAsheem Mamoowala2019-08-211-2/+4
|
* 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
|