Commit Graph

771 Commits

Author SHA1 Message Date
John Firebaugh
5c7dfd948f [core] *Tile ↔ *TileData
Tile is now the main base class; RasterTile, VectorTile, etc are its subclasses. GeometryTileData and its subclasses form the piece that's passed to the worker.
2016-06-13 10:59:33 -07:00
Konstantin Käfer
2bdecdf9f9 [core] fix pedantic warning messages 2016-06-13 11:16:19 +02:00
Bruno de Oliveira Abinader
9b6c2e6940 [test] Added Projection tests 2016-06-13 10:11:20 +03:00
Bruno de Oliveira Abinader
80960b3939 [test] Added style layer properties tests 2016-06-10 17:35:02 +03:00
Konstantin Käfer
4e5d065000 [core] load parents of missing tiles as optional 2016-06-10 12:42:14 +02:00
Konstantin Käfer
fce5dd5f6a [core] TileData objects now store whether an optional load attempt was performed 2016-06-10 12:42:14 +02:00
Konstantin Käfer
8a8f828e41 [core] rename onPlacementRedone -> onNeedsRepaint 2016-06-10 12:42:14 +02:00
Konstantin Käfer
2c7f7fb566 [core] createTile callback can load optional and required tiles 2016-06-10 12:42:14 +02:00
Thiago Marcos P. Santos
40211abd9a [test] Rename Stress test to Load
Too slow to run on valgrind.
2016-06-09 19:56:35 +03:00
Bruno de Oliveira Abinader
cfac924606 [core] s/SharedTexture/PooledTexture/ 2016-06-07 22:42:18 +03:00
Konstantin Käfer
aa88ca4757 [core] remove unused code 2016-06-07 13:55:35 +02:00
Bruno de Oliveira Abinader
83d349ee16 [core] Use RAII for TexturePool textures
TexturePool now disposes acquirable ids via SharedTexture, which
guarantees that these are going back to TexturePool once released.
2016-06-07 13:01:58 +03:00
Bruno de Oliveira Abinader
623da8bfeb [test] Added mbgl::gl::TexturePool tests 2016-06-03 11:03:16 +03:00
John Firebaugh
e802aedb8c [core, node, android] Remove used "base" parameter from setStyleJSON 2016-06-02 16:33:56 -07:00
John Firebaugh
c902f9098b [core] Rationalize naming for style-related code 2016-06-02 14:51:39 -07:00
John Firebaugh
cadc617c76 [core] Introduce PropertyValue<T>
PropertyValue<T> represents the three possible types of style property value: undefined, constant, or function.
2016-06-02 14:51:39 -07:00
John Firebaugh
ba4a8a9731 [tests] Add basic tests for Map::{add,remove}Layer 2016-06-02 14:51:39 -07:00
John Firebaugh
d7e1ecd19e [core] Generalize Map::{add,remove}CustomLayer 2016-06-02 14:51:39 -07:00
John Firebaugh
a43940afb2 [core] Runtime style layer API 2016-06-02 14:51:39 -07:00
John Firebaugh
1fb96d38a0 [tests] Tweak LineAnnotation test so that it reveals a bug; fix the bug 2016-06-02 14:47:35 -07:00
John Firebaugh
2c8d225cf2 [tests] Clean up annotation tests 2016-06-02 14:45:30 -07:00
John Firebaugh
0fba70d5a8 [all] Rationalize annotation API 2016-06-01 17:37:01 -07:00
John Firebaugh
8985b1311b [core] Use geometry.hpp types for shape annotations 2016-06-01 17:36:50 -07:00
Bruno de Oliveira Abinader
31753583da [test] Added GL objects tests 2016-06-01 15:28:59 +03:00
Young Hahn
a800d33dd8 [core] Don't earcut more than 500 inner rings 2016-05-31 10:15:18 -07:00
John Firebaugh
faaafb8387 [core] Replace clipper and libtess with earcut.hpp 2016-05-31 10:15:18 -07:00
Konstantin Käfer
1b8d280e3f [core] refactor updateRenderables algorithm 2016-05-27 10:15:06 +02:00
Konstantin Käfer
ebff2234e4 [core] remove unused template definition 2016-05-27 10:15:02 +02:00
Minh Nguyễn
8ace0d37d1 [core] AnnotationTileLayer vends its own name (#5163)
Fixes #5159.
2016-05-26 13:12:23 -07:00
Konstantin Käfer
c60fd0604a [core] TileData::isReady() => TileData::isRenderable() 2016-05-25 21:51:25 +02:00
Konstantin Käfer
e2bcea90fc [core] use #pragma once instead of ifdef include guards 2016-05-25 21:35:37 +02:00
Konstantin Käfer
7272d7c84c [core] move *Observers to their own files 2016-05-23 18:04:31 +02:00
Bruno de Oliveira Abinader
f751d2c465 [core] Avoid NaNs in TransformState unit conversions
Fix cases where e.g. state has either zero width or height, causing the
unit convertion functions would return NaNs.
2016-05-20 16:18:07 +03:00
Konstantin Käfer
8ee222c45e [core] allow creating optional requests
Introduces "optional" requests. These should be fulfilled by the FileSource only there's a low-cost/easy way to obtain the data (e.g. from a local cache). If the data for an optional request cannot be found, it *must* return a Response object with a NotFound error.

Traditional "required" requests still work the same way, with one change: If you set any prior* field in the Resource (i.e. priorModified, priorEtag, or priorExpires), the DefaultFileSource assumes that you already have the cache value and will not consult the cache before performing the request. If a prior cache lookup didn't turn up any data, and you therefore don't have an Etag or Modified value, you can still skip the cache by setting priorExpires. This will of course always result in a non-conditional HTTP request.
2016-05-18 12:40:22 +02:00
Konstantin Käfer
c5fc7f1980 [core] use rapidjson's dtoa implementation to stringify floating point numbers 2016-05-18 12:26:51 +02:00
Konstantin Käfer
002393bdea [core] remove MockView and View dependency in Transform 2016-05-18 12:07:21 +02:00
Konstantin Käfer
cd65a43855 [core] move from microsecond precision timestamp to integer second precision 2016-05-13 17:24:22 +02:00
Bruno de Oliveira Abinader
c13dd32242 [core] Added Viewport mode
Satisfies embedding platforms that requires the viewport coordinate
systems to be set according to its standards e.g. viewport mirrored
vertically.
2016-05-11 15:48:51 +03:00
Konstantin Käfer
7332ae0073 [core] retain tiles differently and remove old TileID class 2016-05-10 14:50:56 +02:00
Konstantin Käfer
ec70125e41 [core] move TileData and dependents to new *TileID classes 2016-05-10 14:50:56 +02:00
Konstantin Käfer
dde59eaf76 [core] move Painter and dependents to new *TileID classes 2016-05-10 14:50:56 +02:00
Konstantin Käfer
5b640fb446 [core] add algorithm for generating clip IDs based on the new TileID classes 2016-05-10 14:50:56 +02:00
Konstantin Käfer
ecc8e018fa [core] add algorithm for detecting whether an ordered map contains covering children 2016-05-10 14:50:56 +02:00
Konstantin Käfer
82ebcfa14e [core] introduce three distinct TileID types
* CanonicalTileID has z, x, and y, with x/y being within the bounds z defines. z can be anything from 0-32.
* OverscaledTileID is composed of a z value, and a canonical tile. The z value indicates the zoom level the tile is intended for. It is primarily used for indexing overscaled data tiles.
* UnwrappedTileID is composed of a wrap value, and a canonical tile. The wrap value is used for representing tiles to the left and right of the main (0/0/0 based) tile pyramid. It is primarily used for indicating the position a tile should be rendered at.
2016-05-10 14:50:56 +02:00
John Firebaugh
59a7fbf8e4 [core] Implement has/!has filters (#4952) 2016-05-05 14:30:37 -07:00
John Firebaugh
9330d674a9 [core] Use geometry.hpp's point 2016-05-05 11:30:53 -07:00
John Firebaugh
ce2a06e677 [core] Privatize math.hpp and vec.hpp 2016-05-05 11:16:57 -07:00
Thiago Marcos P. Santos
a818917714 [Qt] Make it possible to disable libwebp and libjpeg-turbo at build time
Pull less dependencies.
2016-05-05 18:47:14 +03:00
John Firebaugh
a64fe5062f [core] Simplify FilterEvaluator and fix crash
Previous implementation was assigning a temporary to FilterEvaluator<T>::extractor.
2016-05-04 09:56:34 +03:00
Dane Springmeyer
c82b02c508 [core] port to protozero (#4906) 2016-05-03 13:57:17 -07:00