Исходник [ImGui] Animated Circle Loading | Анимированная круговая загрузка

ставь чайник, зажигай плиту
Эксперт
Статус
Оффлайн
Регистрация
22 Май 2020
Сообщения
1,444
Реакции[?]
1,092
Поинты[?]
10K
Preview

or

Пожалуйста, авторизуйтесь для просмотра ссылки.


C++:
    // Setup
    auto front = ImGui::GetForegroundDrawList(); // also you can use GetWindowDrawList() or GetBackgroundDrawList()
    ImVec2 center = ImGui::GetIO().DisplaySize / 2.f;
    static ImColor fore_color(200, 20, 20, 255);
    static ImColor back_color(200, 20, 20, 40);
    static float arc_size = 0.45f; // 0.f < x < 2.f
    static float radius = 35.f;
    static float thickness = 4.f;
  
    // Animation
    static float position = 0.f;
    position = ImLerp(position, IM_PI * 2.f, ImGui::GetIO().DeltaTime * 2.3f);

    // Background
    front->PathClear();
    front->PathArcTo(center, radius, 0.f, 2.f * IM_PI, 40.f);
    front->PathStroke(ImGui::GetColorU32(back_color.Value), 0, thickness);

    // Foreground
    front->PathClear();
    front->PathArcTo(center, radius, IM_PI * 1.5f + position, IM_PI * (1.5f + arc_size) + position, 40.f);
    front->PathStroke(ImGui::GetColorU32(fore_color.Value), 0, thickness);

    // Reset animation
    if (position >= IM_PI * 1.90f)
        position = 0.f;
 
t.me/maj0rblog
Дизайнер
Статус
Оффлайн
Регистрация
6 Окт 2018
Сообщения
976
Реакции[?]
619
Поинты[?]
12K
Preview

or

Пожалуйста, авторизуйтесь для просмотра ссылки.


C++:
// Setup
    auto front = ImGui::GetForegroundDrawList(); // also you can use GetWindowDrawList() or GetBackgroundDrawList()
    ImVec2 center = ImGui::GetIO().DisplaySize / 2.f;
    static ImColor fore_color(200, 20, 20, 255);
    static ImColor back_color(200, 20, 20, 40);
    static float arc_size = 0.45f; // 0.f < x < 2.f
    static float radius = 35.f;
    static float thickness = 4.f;
  
    // Animation
    static float position = 0.f;
    position = ImLerp(position, IM_PI * 2.f, ImGui::GetIO().DeltaTime * 2.3f);

    // Background
    front->PathClear();
    front->PathArcTo(center, radius, 0.f, 2.f * IM_PI, 40.f);
    front->PathStroke(ImGui::GetColorU32(back_color.Value), 0, thickness);

    // Foreground
    front->PathClear();
    front->PathArcTo(center, radius, IM_PI * 1.5f + position, IM_PI * (1.5f + arc_size) + position, 40.f);
    front->PathStroke(ImGui::GetColorU32(fore_color.Value), 0, thickness);

    // Reset animation
    if (position >= IM_PI * 1.90f)
        position = 0.f;
Выглядит круто)
Но слишком медленно перед скачком
 
ставь чайник, зажигай плиту
Эксперт
Статус
Оффлайн
Регистрация
22 Май 2020
Сообщения
1,444
Реакции[?]
1,092
Поинты[?]
10K
Забаненный
Статус
Оффлайн
Регистрация
11 Май 2020
Сообщения
115
Реакции[?]
91
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Указывай кредиты.
Original :
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
ставь чайник, зажигай плиту
Эксперт
Статус
Оффлайн
Регистрация
22 Май 2020
Сообщения
1,444
Реакции[?]
1,092
Поинты[?]
10K
моргенштерн
Пользователь
Статус
Оффлайн
Регистрация
2 Дек 2017
Сообщения
288
Реакции[?]
96
Поинты[?]
0
говна поел что ли? Где ты у себя на скрине Progress cirle увидел?)0)
бож, как же вы заебали со своими "ахуенно трушными идеями ака не такие как все и такого нигде не было посмотри в код и на скрин и вапше колуна тебе на"
и так всем понятно,смотря на оригинал,что идею ты спиздил именно оттуда , имгуи мастер блять
ахуеть этот чел че кружок загрузки придумал?
 
I Want to Die in New Orleans
Участник
Статус
Оффлайн
Регистрация
10 Окт 2020
Сообщения
514
Реакции[?]
495
Поинты[?]
84K
лайк, чутка поигрался и вот что получилось :SMOrc:
upd: качество - 10 шакалов из 10
 
Сверху Снизу