summaryrefslogtreecommitdiff
path: root/src/mbgl/text/collision_tile.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [core] Remove dead codeChris Loer2017-11-171-267/+0
| | | | | | - CollisionTile - FrameHistory - PlacementConfig
* [core] fix undefined behavior for division through 0Konstantin Käfer2017-07-171-9/+16
|
* [core] port pitch-label collision hackAnsis Brammanis2017-07-111-12/+17
| | | | https://github.com/mapbox/mapbox-gl-js/pull/4781/commits/81363951ed56c54f331ffc8d88e4e5079226a224
* [core] Improved label pitch-scaling: approximate collision box shapes based ↵Chris Loer2017-07-111-15/+35
| | | | on tile distance from camera.
* [core] Replace FeatureIndex::collisionTile with a method parameterJohn Firebaugh2017-01-101-1/+1
| | | | This reduces state and simplifies the test added in the prior commit.
* [core] Moved util::log2 to its own headerBruno de Oliveira Abinader2016-10-311-0/+1
| | | | | | - Added util::{MIN,MAX}_ZOOM_F to avoid consecutive conversions from double to float - Move util::log2 to its own header (part of mbgl/math)
* [core] Reuse last placement data in CollisionTile::queryRenderedFeaturesBruno de Oliveira Abinader2016-10-251-32/+68
| | | | | | | | | | | To obtain precise results, we: 1. Round scale value to obtain same results from symbol shader. 2. Generate a boost geometry polygon to check if it intersects() against all feature boxes. 3. Check if current scale is within each feature's minimum and maximum placement scales. 4. De-scale feature boxes when intersecting to account for the fractional zoom scaling.
* [core] Simplify CollisionTile::findPlacementScaleBruno de Oliveira Abinader2016-10-251-7/+5
| | | | | | Improve findPlacementScale semantics by moving the check if the placement scale result is bigger than minimum scale out of the function scope.
* [core] Avoid duplicating edges for CollisionTileBruno de Oliveira Abinader2016-10-251-22/+16
| | | | | Make 'edges' static to avoid every instance of CollisionTile having its own copy of it.
* [core] Cleanup function signatures in CollisionTileBruno de Oliveira Abinader2016-10-251-4/+4
| | | | | - Prefer pass-by-value for primitive types. - Use floating point precision for yStretch to match receiving type.
* [core] Cleanup SymbolLayoutBruno de Oliveira Abinader2016-10-131-5/+6
| | | | | Reuse reverse rotation matrix from CollisionTile when populating the collision boxes.
* [core] Use query geometry from FeatureIndex into ↵Bruno de Oliveira Abinader2016-10-111-2/+13
| | | | CollisionTile::queryRenderedSymbols
* [core] Skip placement scale for features that ignore placementBruno de Oliveira Abinader2016-10-111-7/+13
|
* [core] Convert uses of std::set to std::unordered_set (#6325)Lucas Wojciechowski2016-09-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * src/mbgl/annotation/annotation_manager.hpp * src/mbgl/algorithm/update_renderables.hpp * src/mbgl/geometry/glyph_atlas.hpp * src/mbgl/renderer/painter.cpp and src/mbgl/renderer/render_item.hpp * src/mbgl/renderer/symbol_bucket.hpp and src/mbgl/text/glyph_store.hpp * src/mbgl/sprite/sprite_atlas.hpp * include/mbgl/storage/network_status.hpp * src/mbgl/text/collision_tile.cpp * src/mbgl/style/update_batch.hpp * platform/default/mbgl/storage/offline_download.hpp * Add GlyphRangeSet typedef * Fix whitespace & unused imports
* [tidy] Check modernize-pass-by-valueBruno de Oliveira Abinader2016-06-131-1/+1
| | | | Ref: http://clang.llvm.org/extra/clang-tidy/checks/modernize-pass-by-value.html
* [core] Use mapbox::geometry::{box,envelope}John Firebaugh2016-05-131-3/+3
|
* [core] Avoid instantiating temporary vectorJohn Firebaugh2016-05-121-19/+20
|
* [core] CollisionBox::indexedFeature to CollisionFeature::indexedFeatureJohn Firebaugh2016-05-121-3/+2
| | | | This eliminates the CollisionBox constructor that instantiates an "empty" IndexedSubfeature.
* [core] Replace auto with actual typesJohn Firebaugh2016-05-121-2/+2
|
* [core] Avoid instantiating temporary vectorJohn Firebaugh2016-05-121-5/+2
|
* [core] Code formattingJohn Firebaugh2016-05-121-3/+3
|
* [core] Use geometry.hpp's pointJohn Firebaugh2016-05-051-20/+22
|
* [core] implement queryRenderedFeaturesAnsis Brammanis2016-04-291-7/+44
|
* [core] support tiles with non-4096 extentsAnsis Brammanis2016-02-021-2/+3
| | | | | Convert all geometries to the maximum extent supported by our buffers and then use that constant extent everywhere else.
* [core] implement symbol-avoid-edgesAnsis Brammanis2016-01-201-36/+83
| | | | | | | ref #3582 if `symbol-avoid-edges` is true, this prevents symbols from colliding with tile edges.
* [core] add namespace comment to closing braceKonstantin Käfer2015-12-031-1/+1
|
* [core] always reparse with the freshest possible placement configKonstantin Käfer2015-10-261-7/+6
| | | | Fixes an issue where updates to stale tiles would remove labels altogether until the map was rotated.
* port minor collision code cleanup, fix #1705Ansis Brammanis2015-08-241-4/+4
| | | | https://github.com/mapbox/mapbox-gl-js/pull/1261
* fix symbol collision detection in perspective viewAnsis Brammanis2015-08-241-1/+1
|
* don't use certain STL functionsKonstantin Käfer2015-08-041-1/+1
| | | | 
some functions defined in <cmath>, as well as std::to_string aren't available on GNU's STL for some platforms, e.g. Android
* Fix name shadowingJohn Firebaugh2015-07-011-2/+2
|
* port bboxifyLabel from -jsAnsis Brammanis2015-04-011-3/+3
|
* port SymbolBucket::placeFeaturesAnsis Brammanis2015-04-011-5/+2
|
* port the remained of CollisionTileAnsis Brammanis2015-04-011-5/+82
|
* start porting CollisionTile and CollisionFeatureAnsis Brammanis2015-04-011-0/+31