1 #ifndef OSMIUM_GEOM_TILE_HPP 2 #define OSMIUM_GEOM_TILE_HPP 50 inline constexpr
const T& clamp(
const T& value,
const T& min,
const T& max) {
51 return value < min ? min : (max < value ? max : value);
78 return static_cast<uint32_t
>(detail::clamp<int32_t>(
90 return static_cast<uint32_t
>(detail::clamp<int32_t>(
118 explicit Tile(uint32_t zoom, uint32_t tx, uint32_t ty) noexcept :
138 assert(location.
valid());
169 return x < max &&
y < max;
176 return lhs.z == rhs.z && lhs.x == rhs.x && lhs.y == rhs.y;
180 return !(lhs == rhs);
199 return lhs.y < rhs.y;
206 #endif // OSMIUM_GEOM_TILE_HPP double y
Definition: coordinates.hpp:51
bool valid() const noexcept
Definition: tile.hpp:164
constexpr uint32_t num_tiles_in_zoom(uint32_t zoom) noexcept
Definition: tile.hpp:60
bool operator<(const Tile &lhs, const Tile &rhs) noexcept
Definition: tile.hpp:186
Tile(uint32_t zoom, const osmium::geom::Coordinates &coordinates)
Definition: tile.hpp:152
constexpr bool valid() const noexcept
Definition: location.hpp:347
Namespace for everything in the Osmium library.
Definition: assembler.hpp:53
constexpr uint32_t mercx_to_tilex(uint32_t zoom, double x) noexcept
Definition: tile.hpp:77
Definition: coordinates.hpp:48
uint32_t x
x coordinate
Definition: tile.hpp:102
Coordinates lonlat_to_mercator(const Coordinates &c)
Definition: mercator_projection.hpp:120
uint32_t y
y coordinate
Definition: tile.hpp:105
Definition: location.hpp:273
Tile(uint32_t zoom, uint32_t tx, uint32_t ty) noexcept
Definition: tile.hpp:118
bool operator!=(const Coordinates &lhs, const Coordinates &rhs) noexcept
Definition: coordinates.hpp:148
constexpr uint32_t mercy_to_tiley(uint32_t zoom, double y) noexcept
Definition: tile.hpp:89
double x
Definition: coordinates.hpp:50
uint32_t z
Zoom level.
Definition: tile.hpp:108
bool operator==(const Coordinates &lhs, const Coordinates &rhs) noexcept
Definition: coordinates.hpp:138
Tile(uint32_t zoom, const osmium::Location &location)
Definition: tile.hpp:135
constexpr double tile_extent_in_zoom(uint32_t zoom) noexcept
Definition: tile.hpp:68