mirror of
https://github.com/orange-cpp/omath.git
synced 2026-04-19 05:23:28 +00:00
added realization
This commit is contained in:
@@ -2,8 +2,52 @@
|
||||
// Created by orange on 13.03.2026.
|
||||
//
|
||||
#include "omath/hud/renderer_realizations/imgui_renderer.hpp"
|
||||
#include <imgui.h>
|
||||
|
||||
namespace omath::hud
|
||||
{
|
||||
ImguiHudRenderer::~ImguiHudRenderer() = default;
|
||||
|
||||
}
|
||||
void ImguiHudRenderer::add_line(const Vector2<float>& line_start, const Vector2<float>& line_end,
|
||||
const Color& color, const float thickness)
|
||||
{
|
||||
ImGui::GetBackgroundDrawList()->AddLine(line_start.to_im_vec2(), line_end.to_im_vec2(),
|
||||
color.to_im_color(), thickness);
|
||||
}
|
||||
|
||||
void ImguiHudRenderer::add_polyline(const std::span<const Vector2<float>>& vertexes, const Color& color,
|
||||
const float thickness)
|
||||
{
|
||||
ImGui::GetBackgroundDrawList()->AddPolyline(
|
||||
reinterpret_cast<const ImVec2*>(vertexes.data()),
|
||||
static_cast<int>(vertexes.size()),
|
||||
color.to_im_color(), ImDrawFlags_None, thickness);
|
||||
}
|
||||
|
||||
void ImguiHudRenderer::add_filled_polyline(const std::span<const Vector2<float>>& vertexes, const Color& color,
|
||||
const float thickness)
|
||||
{
|
||||
ImGui::GetBackgroundDrawList()->AddPolyline(
|
||||
reinterpret_cast<const ImVec2*>(vertexes.data()),
|
||||
static_cast<int>(vertexes.size()),
|
||||
color.to_im_color(), ImDrawFlags_Closed, thickness);
|
||||
}
|
||||
|
||||
void ImguiHudRenderer::add_rectangle(const Vector2<float>& min, const Vector2<float>& max, const Color& color)
|
||||
{
|
||||
ImGui::GetBackgroundDrawList()->AddRect(min.to_im_vec2(), max.to_im_vec2(), color.to_im_color());
|
||||
}
|
||||
|
||||
void ImguiHudRenderer::add_filled_rectangle(const Vector2<float>& min, const Vector2<float>& max,
|
||||
const Color& color)
|
||||
{
|
||||
ImGui::GetBackgroundDrawList()->AddRectFilled(min.to_im_vec2(), max.to_im_vec2(), color.to_im_color());
|
||||
}
|
||||
|
||||
void ImguiHudRenderer::add_text(const Vector2<float>& position, const Color& color,
|
||||
const std::string_view& text)
|
||||
{
|
||||
ImGui::GetBackgroundDrawList()->AddText(position.to_im_vec2(), color.to_im_color(), text.data(),
|
||||
text.data() + text.size());
|
||||
}
|
||||
} // namespace omath::hud
|
||||
|
||||
Reference in New Issue
Block a user