1 #pragma once 2 3 #include <mbgl/util/chrono.hpp> 4 #include <mbgl/util/unitbezier.hpp> 5 6 #include <cmath> 7 #include <string> 8 #include <vector> 9 10 namespace mbgl { 11 12 namespace util { 13 14 constexpr double tileSize = 512; 15 16 /* 17 * The maximum extent of a feature that can be safely stored in the buffer. 18 * In practice, all features are converted to this extent before being added. 19 * 20 * Positions are stored as signed 16bit integers. 21 * One bit is lost for signedness to support features extending past the left edge of the tile. 22 * One bit is lost because the line vertex buffer used to pack 1 bit of other data into the int. 23 * This is no longer the case but we're reserving this bit anyway. 24 * One bit is lost to support features extending past the extent on the right edge of the tile. 25 * This leaves us with 2^13 = 8192 26 */ 27 constexpr int32_t EXTENT = 8192; 28 29 constexpr double DEG2RAD = M_PI / 180.0; 30 constexpr double RAD2DEG = 180.0 / M_PI; 31 constexpr double M2PI = M_PI * 2; 32 constexpr double EARTH_RADIUS_M = 6378137; 33 constexpr double LATITUDE_MAX = 85.051128779806604; 34 constexpr double LONGITUDE_MAX = 180; 35 constexpr double DEGREES_MAX = 360; 36 constexpr double PITCH_MAX = M_PI / 3; 37 constexpr double MIN_ZOOM = 0.0; 38 constexpr double MAX_ZOOM = 25.5; 39 constexpr float MIN_ZOOM_F = MIN_ZOOM; 40 constexpr float MAX_ZOOM_F = MAX_ZOOM; 41 constexpr uint8_t DEFAULT_MAX_ZOOM = 22; 42 43 constexpr uint8_t DEFAULT_PREFETCH_ZOOM_DELTA = 4; 44 45 constexpr uint64_t DEFAULT_MAX_CACHE_SIZE = 50 * 1024 * 1024; 46 47 constexpr Duration DEFAULT_TRANSITION_DURATION = Milliseconds(300); 48 constexpr Seconds CLOCK_SKEW_RETRY_TIMEOUT { 30 }; 49 50 constexpr UnitBezier DEFAULT_TRANSITION_EASE = { 0, 0, 0.25, 1 }; 51 52 constexpr int DEFAULT_RATE_LIMIT_TIMEOUT = 5; 53 54 constexpr const char* API_BASE_URL = "https://api.mapbox.com"; 55 56 } // namespace util 57 58 namespace debug { 59 60 extern const bool tileParseWarnings; 61 extern const bool styleParseWarnings; 62 extern const bool spriteWarnings; 63 extern const bool renderWarnings; 64 extern const bool labelTextMissingWarning; 65 extern const bool missingFontStackWarning; 66 extern const bool missingFontFaceWarning; 67 extern const bool glyphWarning; 68 extern const bool shapingWarning; 69 70 } // namespace debug 71 72 } // namespace mbgl 73