Commit Graph

3672 Commits

Author SHA1 Message Date
Chris Loer
b0fcca5879 [core, node] Re-implement "avoid edges" behavior for MapMode::Tile
- Fixes issue #12461.
 - Only implement "avoid edges" in MapMode::Tile since it's no longer relevant in Static or Continuous mode.
 - New: Force "avoid edges" to "true" for line labels, since in tile mode they'll always clip poorly at tile boundaries.
 - Remove unused "withinPlus0/inside" logic.
2018-08-20 10:50:05 -07:00
Konstantin Käfer
1b4398f7aa [core] downgrade event severity for erroneous DDS rendering to Warning 2018-08-20 18:05:33 +02:00
Konstantin Käfer
112bbc7ab2 [core] make style/conversion.hpp implementation private 2018-08-19 13:09:16 +02:00
John Firebaugh
8ca419fb2e [core] Evict unused font stacks from GlyphManager 2018-08-17 09:38:39 -07:00
Chris Loer
20f880ebec [core] Fix querying for annotations near tile boundaries at high zoom.
Fixes issue #12472.
This commit doesn't address the underlying issues that come from symbolAnnotationTree using a slightly lower precision coordinate system than the annotations themselves.
Instead, it just puts a small padding around each tile when it queries for tile data, so that symbols right at the tile boundary will be included in both tiles.
The rendering/querying code will take care of only displaying one instance.
The padding is in global coordinates, so at higher zoom the padding will be larger in tile units -- this is consistent with precision loss also being greater at higher zoom.
2018-08-14 12:35:50 -07:00
Vladimir Kondrashov
9ecb0997ef [core] Fix out of range exception for string compare 2018-08-14 11:16:10 -07:00
Chris Loer
41d5768f58 [core] Don't default-show text/icons that depend on the placement of a paired icon/text
Fixes issue #12483.
2018-08-13 14:31:30 -07:00
John Firebaugh
d886d3e4c0 [core] Factor out setVisibility conversion 2018-08-13 12:39:44 -07:00
John Firebaugh
58202eaf80 [core] Optimize generated set{Paint,Layout}Property code 2018-08-13 12:39:44 -07:00
John Firebaugh
b2f60a4bf2 [core] Eliminate setProperty & co. 2018-08-13 12:39:44 -07:00
Sudarsana Babu Nagineni
fc0745a699 [core] Fix build when building Qt Location plugin for Android
- log2 is not available on Android before API 18.
- Android doesn't have 'round' on the std:: namespace when using g++.

Co-authored-by: Thiago Marcos P. Santos <thiago@mapbox.com>
2018-08-10 11:19:24 +03:00
Bruno de Oliveira Abinader
20d21cb7bc Revert "[core] Replace Boost.Spirit with std::regex in CacheControl::parse()"
This reverts commit 990b3b11b9.
2018-08-08 19:03:55 +03:00
Chris Loer
4291688b86 [core] Use correct Log::record overload. (#12571) 2018-08-08 10:53:01 -04:00
Bruno de Oliveira Abinader
990b3b11b9 [core] Replace Boost.Spirit with std::regex in CacheControl::parse() 2018-08-08 14:14:34 +03:00
Bruno de Oliveira Abinader
83bd4c2135 [core] Replace remaining dynamic_cast with static_cast 2018-08-08 14:14:34 +03:00
Mikhail Pozdnyakov
15a2623147 [core] Add lineMetrics to GeoJSONOptions
This patch also bumps geojson-vt-cpp version to 6.6.0,
which enables the `lineMetrics` option.
2018-08-08 12:53:32 +03:00
Mikhail Pozdnyakov
0ec4a84c31 Rename EvaluationContext::heatmapDensity to colorRampParameter
More generic name as the same class member is to be used by the
linear gradient properties.
2018-08-07 18:31:59 +03:00
Ivo van Dongen
946db666b9 [core] support windows compilation with msvc2017 and clang 6 2018-08-07 10:13:19 +03:00
Asheem Mamoowala
a5fea5febf Fix TileJSON conversion to allow single point bounds 2018-08-02 12:16:37 -07:00
Molly Lloyd
1a840281b5 [core] don't prefetch tiles for geojson sources (#12529) 2018-08-02 11:43:34 -07:00
Anand Thakker
d25e1a1e7f Relax typing for comparison operators (#12537)
* Relax typing for comparison operators

Ports https://github.com/mapbox/mapbox-gl-js/pull/6961

* Review comments

* Lint fixes
2018-08-02 13:48:47 -04:00
John Firebaugh
9bdd765a02 [core] Merge DataDrivenPropertyValue into PropertyValue (#12513) 2018-07-31 14:21:47 -07:00
Konstantin Käfer
c77aa79f51 [core] update parse_date from cURL 7.61.0 2018-07-31 20:57:09 +02:00
John Firebaugh
9a1bb1ad14 [core] Tweak conversions to reduce binary size
* return {} → return nullopt
* error = { "..." } → error.message = "..."
2018-07-30 17:17:38 -07:00
John Firebaugh
bf7785618a [core] Simplify CompoundExpression implementation 2018-07-30 14:08:27 -07:00
John Firebaugh
85742b908d [core] Avoid unnecessary template instantiations 2018-07-30 14:08:27 -07:00
Sudarsana Babu Nagineni
91ace9d465 Remove use of noncopyable in Context 2018-07-30 12:38:24 +03:00
Sudarsana Babu Nagineni
15a1c7b71f Fix compilation errors with libc++ on QNX 7
This patch fixes the compilation errors on QNX 7:
1) QNX 7 compiler (i.e qcc based GCC 5.4.0 with libc++ from LLVM) has a
limited c++11 feature support and causing the compilation
errors with the inheriting constructors. This fixes the issues by
providing the required constructors explicitly.

2) Resolves an ambiguous overload error with optional<T>
2018-07-30 12:38:24 +03:00
John Firebaugh
10e4ea0f28 [core] Compress all shader source as a single corpus 2018-07-25 11:39:05 -07:00
John Firebaugh
888a516f1f [core] Compress shader source code 2018-07-25 11:39:05 -07:00
John Firebaugh
f6659c729f [core] Use hand-rolled RTTI 2018-07-24 11:08:40 -07:00
John Firebaugh
2bbc792060 [core] Check all bucket dynamic_casts
A mismatch can occur when a layer changes from one type to another.
2018-07-24 11:08:40 -07:00
Bruno de Oliveira Abinader
cb714d57c5 [core] Replace expressions RTTI with enums + static cast 2018-07-24 10:06:18 +03:00
Bruno de Oliveira Abinader
1683da3225 [core] coveredByChildren is false if at least one child is uncovered 2018-07-24 09:18:19 +03:00
Chris Loer
f9b36f9f5b [core] Add symbol-placement: line-center
- Remove unused/vestigial 'maxCameraDistance'
- Create a single collision circle for line labels that are less than half the width of a collision circle
2018-07-23 13:33:27 -07:00
Asheem Mamoowala
1d8664a2ae Keep original input for filters using legacy syntax. 2018-07-23 09:12:26 -07:00
John Firebaugh
af89318b1d [core] Convert token strings to expressions 2018-07-20 12:35:00 -07:00
John Firebaugh
a3d988ab85 [core] Move expression.cpp to expression directory 2018-07-20 11:56:30 -07:00
John Firebaugh
c8edbb0500 [core] Replace {Source,Camera,Composite}Function with PropertyExpression 2018-07-20 11:56:30 -07:00
Justyna Janczyszyn
e94c623e03 fixed typo in error message 2018-07-19 15:36:48 -07:00
Asheem Mamoowala
07b0021ce3 Add fuzz tests for TileCover and fix out of bounds access crash. 2018-07-16 17:11:03 -07:00
Asheem Mamoowala
15019425be Better describe the streaming tilecover algorithm in comments 2018-07-16 17:11:03 -07:00
Asheem Mamoowala
b2ff57c09c Fix TileCover asserts. The create_bounds_towards_* methods were treating
all point arrays as rings. Simplify the logic to only compare against
the next pt in the bound.
2018-07-16 17:11:03 -07:00
Konstantin Käfer
77894f0586 [core] treat parsedate as C++ file to remove C build rules
It is already wrapped with #ifdef __cplusplus extern "C", so we can safely compile it as C++ but retain C linkage
2018-07-16 18:25:09 +02:00
John Firebaugh
a6727921fc [core] Convert legacy functions directly to expressions 2018-07-13 13:37:27 -07:00
John Firebaugh
f7e2fe5e38 [core] Simplify Value conversions
Use a single template function for each of {to,from}ExpressionValue, always dispatching to ValueConverter.

Remove unused ValueConverter::ExpressionType typedefs.
2018-07-12 09:42:55 -07:00
Minh Nguyễn
d6a454ba8e [core] Comparison expressions can have 4th member
When detecting an expression used as a filter, relax the check for expressions to allow comparison expressions to contain a fourth member for the collator.
2018-07-09 16:02:40 -07:00
Chris Loer
c9924ae9d5 [core] Only update collision debug data if debug mode is on
Fixes issue #12294: unused debug vertices would pile up in buckets over course of tile's lifetime.
2018-07-05 11:56:38 -07:00
Mikhail Pozdnyakov
514485502d Rename HeatmapColorPropertyValue to ColorRampPropertyValue
Based on patch from @lbud (Lauren Budorick).

Give `HeatmapColorPropertyValue` a more generic name,
since the same value type will be used for both `heatmap-color`
and `line-gradient` properties.
2018-07-05 15:11:14 +03:00
Chris Loer
d734f670e8 [core] Fix sort order for queryRenderedFeatures when features are filtered.
Fixes issue #12104.
2018-07-03 15:28:00 -07:00