Commit Graph

8 Commits

Author SHA1 Message Date
Bruno de Oliveira Abinader
31cace784e [build] Bump benchmark to v1.4.1 2018-07-23 19:39:47 +03:00
Lucas Wojciechowski
5b3ebc4a24 [core] Add expression filter support (#11251)
* WIP

* WIP

* WIP

* Remove Filter::operator()(const Feature&)

* WIP

* WIP

* WIP

* WIP

* Hook up expression filter evaluator

* Replace `shared_ptr` with &reference

* Fill in implementation of `void operator()(const ExpressionFilter&)`

* Fix failing tests

* Switch back to a shared_ptr per chat with @anandthakker

* Fix benchmark compilation

* Shot in the dark to fix CI

* Shot in the dark to fix CI (part 2)

* Shot in the dark to fix CI (part 3)

* In src/mbgl/style/conversion/filter.cpp, add a port of isExpressionFilter and use it to decide in Converter<Filter>::operator() whether to parse the incoming JSON as an ExpressionFilter or one of the legacy filter types

* Remove bool Filter::operator()(const GeometryTileFeature&) const

*  Ensure the map zoom is passed into filtering operations wherever applicable

* Add expression filter tests

* Addressed PR feedback

* Implement `NSPredicate *operator()(mbgl::style::ExpressionFilter filter)`

* Fix formatting& nit
2018-03-08 15:48:08 -08:00
Thiago Marcos P. Santos
06719ae42f [benchmark] Add a benchmark for our dtoa implementation
Make sure it is faster than std::to_value(). And it is, by ~30% for
the normal use case, and much faster when close to the double limits.

util::dtoa also offers a much better precision.
2017-07-12 15:13:33 +03:00
Ivo van Dongen
ba32831260 [benchmark] add render benchmarks 2017-07-07 18:16:20 +03:00
Ivo van Dongen
6b5f8fd6ef [benchmark] update cache db and style 2017-07-07 17:18:30 +03:00
Bruno de Oliveira Abinader
e55065e62a [core] Reuse last placement data in CollisionTile::queryRenderedFeatures
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.
2016-10-25 08:12:31 +03:00
Bruno de Oliveira Abinader
214ec4e96a [build] Add support for 'benchmark' target on macOS 2016-10-05 15:34:30 +03:00
Thiago Marcos P. Santos
a38104ee22 [tests] Added benchmarks for querying for features 2016-10-05 11:12:16 +03:00