22#include "../../third_party/imgui/imgui.h"
23#include "../../third_party/imnodes/imnodes.h"
147 const std::vector<std::tuple<int, float, float, float, float>>& nodes,
ComponentTypeID GetComponentTypeID_Static()
Unified minimap renderer for standardized appearance.
void SetPosition(MinimapPosition pos)
Set minimap corner position.
virtual ~CanvasMinimapRenderer()=default
void SetViewportColor(ImU32 color)
Set minimap viewport rectangle color (RGBA)
MinimapViewportData m_normalisedViewport
MinimapPosition m_position
void RenderImNodes() const
Render minimap using ImNodes native API.
void SetNodeColor(ImU32 color)
Set minimap node color (RGBA)
void SetBackgroundColor(ImU32 color)
Set minimap background color (RGBA)
float GetSize() const
Get current size ratio.
std::vector< MinimapNodeData > m_normalisedNodes
void RenderCustom(const ImVec2 &canvasScreenPos, const ImVec2 &canvasSize) const
Render minimap using custom ImGui drawing.
MinimapPosition GetPosition() const
Get current position.
bool IsVisible() const
Check if minimap should be rendered.
static float NormaliseCoord(float value, float minVal, float maxVal)
float m_sizeRatio
0.05 - 0.5 ratio of canvas
void SetSize(float ratio)
Set minimap size as ratio of canvas (0.05 - 0.5)
const MinimapViewportData & GetNormalisedViewport() const
Get normalised viewport rectangle for custom rendering.
static constexpr float DEFAULT_WIDTH
const std::vector< MinimapNodeData > & GetNormalisedNodes() const
Get normalised node positions for custom rendering.
void SetVisible(bool visible)
Set minimap visibility.
void UpdateViewport(float viewMinX, float viewMaxX, float viewMinY, float viewMaxY, float graphMinX, float graphMaxX, float graphMinY, float graphMaxY)
Update visible viewport.
void UpdateNodes(const std::vector< std::tuple< int, float, float, float, float > > &nodes, float graphMinX, float graphMaxX, float graphMinY, float graphMaxY)
Update node positions from raw graph data.
static constexpr float DEFAULT_HEIGHT
< Provides AssetID and INVALID_ASSET_ID
MinimapPosition
Screen corner positions for minimap overlay.
float normW
Normalised width [0..1].
float normX
Normalised X position [0..1].
float normH
Normalised height [0..1].
float normY
Normalised Y position [0..1].
int nodeId
Original graph node ID.
Viewport region in normalised coordinates.