LINUX.ORG.RU

Qml


31

0

Всего сообщений: 1

Часы на кривых Безье для рабочего стола KDE Plasma 5

Всем привет.

В плане изучения технологии Qt Quick и языка программирования QML захотелось мне реализовать какую-нибудь забавную вещицу для рабочего стола KDE Plasma 5. Это мой первый pet-проект на этом стеке технологий.

Два года назад на Хабрахабре я увидел интересный пост про часы на кривых Безье. Jack Frigaard, разработчик этого забавного скетча, использовал реализацию языка программирования Processing на JavaScript — Processing.js и поделился с общественностью своим кодом.

Я решил сделать из этого скетча анимированую «живую» обоину для KDE Plasma 5 и в итоге вот что получилось:

GIF-анимация
Демонстрация на YouTube (записывал на слабом ноутбуке с i3 первого поколения, так что во время записи были подлагивания и проседания FPS).

Репозиторий с исходным кодом:
https://github.com/EXL/BezierClock

Я немного увеличил функциональность, добавил возможность регулировки множества опций и параметров:

Скриншот настройки в KDE Plasma 5

Вышло довольно занимательно. Для тех, кто хочет попробовать поиграться с кривыми Безье сам, я приготовил пакеты:

[Пакет для Arch Linux] | [Зеркало]

Ставить командой pacman -U bezier-clock-v1.0-1-any.pkg.tar.xz или yaourt -U bezier-clock-v1.0-1-any.pkg.tar.xz, если кто не знает.

[Общий пакет для остальных дистрибутивов GNU/Linux] | [Зеркало]

Устанавливается он в пользовательскую директорию ~/.local/share/plasma/wallpapers/ выполнением скрипта package.sh. Удалить пакет можно либо ручками, либо выполнив ./package.sh -u.

После установки в настройках рабочего стола появляется новый тип обоев: Bezier Clock, выбираете его и активируете обоину.
Чтобы экономнее расходовать ресурсы CPU, я советую выставить FPS Limit в район 25, а Animation Duration примерно на 30.
В общем, колдовство с этими параметрами поможет добиться плавной анимации и на низких FPS.

Спасибо за внимание! Чуть не забыл:
На скриншоте Arch Linux со старой KDE Plasma 5.5.3, всё дефолтное
Шрифты: Nokia Standard, Ubuntu Condensed, Consolas; сглажены Infinality
Везде использую замечательную тему Breeze
В плане приложений KDE-стека активно использую Dolphin, Okular, Kate и Yakuake, в качестве плеера Clementine, видео смотрю vlc или mpv.
Браузер — Chrome, почтовик — Thunderbid.
Повседневная IDE — Qt Creator, но имеется и тяжёлая артиллерия на подхвате: Eclipse и Android Studio.

Скриншот с Qt Creator в процессе создания Bezier Clock.

Ещё варианты оформлений: [1], [2], [3].

>>> Просмотр (1366x768, 48 Kb)

 , , ,

EXL
()