2
0
Эх сурвалжийг харах

Address code review: Add named constants for magic numbers

Co-authored-by: djeada <[email protected]>
copilot-swe-agent[bot] 5 өдөр өмнө
parent
commit
b961df3850

+ 2 - 1
app/core/minimap_manager.cpp

@@ -5,6 +5,7 @@
 #include "game/map/map_loader.h"
 #include "game/map/minimap/camera_viewport_layer.h"
 #include "game/map/minimap/minimap_generator.h"
+#include "game/map/minimap/minimap_utils.h"
 #include "game/map/minimap/unit_layer.h"
 #include "game/map/visibility_service.h"
 #include "game/systems/selection_system.h"
@@ -254,7 +255,7 @@ void MinimapManager::update_camera_viewport(const Render::GL::Camera *camera,
   // Estimate the visible world area based on camera distance and FOV
   const float distance = camera->get_distance();
   const float fov_rad =
-      static_cast<float>(camera->get_fov() * M_PI / 180.0);
+      camera->get_fov() * Game::Map::Minimap::Constants::k_degrees_to_radians;
   const float aspect = screen_width / std::max(screen_height, 1.0F);
 
   // Calculate approximate viewport dimensions in world space

+ 10 - 4
game/map/minimap/camera_viewport_layer.cpp

@@ -8,6 +8,12 @@
 
 namespace Game::Map::Minimap {
 
+namespace {
+constexpr float k_corner_size_ratio = 0.15F;
+constexpr float k_min_corner_size = 4.0F;
+constexpr float k_corner_pen_offset = 1.0F;
+} // namespace
+
 void CameraViewportLayer::init(int width, int height, float world_width,
                                float world_height) {
   m_width = width;
@@ -83,13 +89,13 @@ void CameraViewportLayer::draw_viewport_rect(QPainter &painter, float px,
   painter.drawRect(rect);
 
   // Draw corner markers for better visibility
-  const float corner_size = std::min(pixel_width, pixel_height) * 0.15F;
-  const float corner_min = 4.0F;
-  const float actual_corner = std::max(corner_size, corner_min);
+  const float corner_size =
+      std::min(pixel_width, pixel_height) * k_corner_size_ratio;
+  const float actual_corner = std::max(corner_size, k_min_corner_size);
 
   QColor corner_color(m_border_r, m_border_g, m_border_b, 255);
   QPen corner_pen(corner_color);
-  corner_pen.setWidthF(static_cast<qreal>(m_border_width) + 1.0);
+  corner_pen.setWidthF(static_cast<qreal>(m_border_width) + k_corner_pen_offset);
   painter.setPen(corner_pen);
 
   // Top-left corner

+ 3 - 1
game/map/minimap/minimap_utils.h

@@ -11,6 +11,8 @@ namespace Constants {
 
 constexpr float k_camera_yaw_cos = -0.70710678118F;
 constexpr float k_camera_yaw_sin = -0.70710678118F;
+constexpr float k_min_tile_size = 0.0001F;
+constexpr float k_degrees_to_radians = 3.14159265358979323846F / 180.0F;
 
 } // namespace Constants
 
@@ -21,7 +23,7 @@ inline auto grid_to_world_coords(float grid_x, float grid_z,
   float world_z = grid_z;
 
   if (map_def.coordSystem == CoordSystem::Grid) {
-    const float tile = std::max(0.0001F, map_def.grid.tile_size);
+    const float tile = std::max(Constants::k_min_tile_size, map_def.grid.tile_size);
     world_x = (grid_x - (map_def.grid.width * 0.5F - 0.5F)) * tile;
     world_z = (grid_z - (map_def.grid.height * 0.5F - 0.5F)) * tile;
   }