|
@@ -377,7 +377,7 @@ void ImDrawListSharedData::SetCircleSegmentMaxError(float max_error)
|
|
|
CircleSegmentMaxError = max_error;
|
|
|
for (int i = 0; i < IM_ARRAYSIZE(CircleSegmentCounts); i++)
|
|
|
{
|
|
|
- const float radius = i + 1.0f;
|
|
|
+ const float radius = (float)i;
|
|
|
const int segment_count = IM_DRAWLIST_CIRCLE_AUTO_SEGMENT_CALC(radius, CircleSegmentMaxError);
|
|
|
CircleSegmentCounts[i] = (ImU8)ImMin(segment_count, 255);
|
|
|
}
|
|
@@ -1278,7 +1278,7 @@ void ImDrawList::AddCircle(const ImVec2& center, float radius, ImU32 col, int nu
|
|
|
if (num_segments <= 0)
|
|
|
{
|
|
|
// Automatic segment count
|
|
|
- const int radius_idx = (int)radius - 1;
|
|
|
+ const int radius_idx = (int)radius;
|
|
|
if (radius_idx < IM_ARRAYSIZE(_Data->CircleSegmentCounts))
|
|
|
num_segments = _Data->CircleSegmentCounts[radius_idx]; // Use cached value
|
|
|
else
|
|
@@ -1308,7 +1308,7 @@ void ImDrawList::AddCircleFilled(const ImVec2& center, float radius, ImU32 col,
|
|
|
if (num_segments <= 0)
|
|
|
{
|
|
|
// Automatic segment count
|
|
|
- const int radius_idx = (int)radius - 1;
|
|
|
+ const int radius_idx = (int)radius;
|
|
|
if (radius_idx < IM_ARRAYSIZE(_Data->CircleSegmentCounts))
|
|
|
num_segments = _Data->CircleSegmentCounts[radius_idx]; // Use cached value
|
|
|
else
|