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);
187 if (lhs.
z < rhs.
z)
return true;
188 if (lhs.
z > rhs.
z)
return false;
189 if (lhs.
x < rhs.
x)
return true;
190 if (lhs.
x > rhs.
x)
return false;
191 return lhs.
y < rhs.
y;
198 #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
Tile(uint32_t zoom, const osmium::geom::Coordinates &coordinates)
Definition: tile.hpp:152
constexpr bool valid() const noexcept
Definition: location.hpp:341
Namespace for everything in the Osmium library.
Definition: assembler.hpp:73
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
bool operator<(const Tile &lhs, const Tile &rhs)
Definition: tile.hpp:186
uint32_t y
y coordinate
Definition: tile.hpp:105
Definition: location.hpp:266
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:145
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:135
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