|
|
|
@ -4440,9 +4440,11 @@ static void ShowExampleAppCustomRendering(bool* p_open)
|
|
|
|
|
{
|
|
|
|
|
static float sz = 36.0f;
|
|
|
|
|
static float thickness = 3.0f;
|
|
|
|
|
static int ngon_sides = 6;
|
|
|
|
|
static ImVec4 colf = ImVec4(1.0f, 1.0f, 0.4f, 1.0f);
|
|
|
|
|
ImGui::DragFloat("Size", &sz, 0.2f, 2.0f, 72.0f, "%.0f");
|
|
|
|
|
ImGui::DragFloat("Thickness", &thickness, 0.05f, 1.0f, 8.0f, "%.02f");
|
|
|
|
|
ImGui::SliderInt("n-gon sides", &ngon_sides, 3, 12);
|
|
|
|
|
ImGui::ColorEdit4("Color", &colf.x);
|
|
|
|
|
const ImVec2 p = ImGui::GetCursorScreenPos();
|
|
|
|
|
const ImU32 col = ImColor(colf);
|
|
|
|
@ -4455,7 +4457,7 @@ static void ShowExampleAppCustomRendering(bool* p_open)
|
|
|
|
|
{
|
|
|
|
|
// First line uses a thickness of 1.0f, second line uses the configurable thickness
|
|
|
|
|
float th = (n == 0) ? 1.0f : thickness;
|
|
|
|
|
draw_list->AddCircle(ImVec2(x + sz*0.5f, y + sz*0.5f), sz*0.5f, col, 6, th); x += sz + spacing; // Hexagon
|
|
|
|
|
draw_list->AddNgon(ImVec2(x + sz*0.5f, y + sz*0.5f), sz*0.5f, col, ngon_sides, th); x += sz + spacing; // n-gon
|
|
|
|
|
draw_list->AddCircle(ImVec2(x + sz*0.5f, y + sz*0.5f), sz*0.5f, col, 20, th); x += sz + spacing; // Circle
|
|
|
|
|
draw_list->AddRect(ImVec2(x, y), ImVec2(x + sz, y + sz), col, 0.0f, corners_none, th); x += sz + spacing; // Square
|
|
|
|
|
draw_list->AddRect(ImVec2(x, y), ImVec2(x + sz, y + sz), col, 10.0f, corners_all, th); x += sz + spacing; // Square with all rounded corners
|
|
|
|
@ -4469,7 +4471,7 @@ static void ShowExampleAppCustomRendering(bool* p_open)
|
|
|
|
|
x = p.x + 4;
|
|
|
|
|
y += sz + spacing;
|
|
|
|
|
}
|
|
|
|
|
draw_list->AddCircleFilled(ImVec2(x + sz*0.5f, y + sz*0.5f), sz*0.5f, col, 6); x += sz + spacing; // Hexagon
|
|
|
|
|
draw_list->AddNgonFilled(ImVec2(x + sz * 0.5f, y + sz * 0.5f), sz*0.5f, col, ngon_sides); x += sz + spacing; // n-gon
|
|
|
|
|
draw_list->AddCircleFilled(ImVec2(x + sz*0.5f, y + sz*0.5f), sz*0.5f, col, 32); x += sz + spacing; // Circle
|
|
|
|
|
draw_list->AddRectFilled(ImVec2(x, y), ImVec2(x + sz, y + sz), col); x += sz + spacing; // Square
|
|
|
|
|
draw_list->AddRectFilled(ImVec2(x, y), ImVec2(x + sz, y + sz), col, 10.0f); x += sz + spacing; // Square with all rounded corners
|
|
|
|
|