co-maps/libs/drape/utils/projection.hpp
2025-11-22 13:58:55 +01:00

19 lines
648 B
C++

#pragma once
#include "drape/drape_global.hpp"
#include "indexer/drawing_rule_def.hpp"
#include <array>
namespace dp
{
/// @todo: asymmetric values lead to in-range polygons being clipped still, might be a bug in projection matrix?
float constexpr kMinDepth = -25000.0f;
float constexpr kMaxDepth = 25000.0f;
static_assert(kMinDepth <= drule::kMinLayeredDepthBg && drule::kMaxLayeredDepthFg <= kMaxDepth);
static_assert(kMinDepth <= -drule::kOverlaysMaxPriority && drule::kOverlaysMaxPriority <= kMaxDepth);
std::array<float, 16> MakeProjection(dp::ApiVersion apiVersion, float left, float right, float bottom, float top);
} // namespace dp