В одном из предыдущих постов под названием «Класс для генерации «механических» flash-часиков на ActionScript 3.0» я показывал, как можно написать класс на ActionScript 3.0, который будет отрисовывать простейшие механические часы. А буквально вчера в сети нашёл аналогичный по предназначению, но более сложный пример - класс AnalogClock от angelo (на самом деле это целая библиотека классов, но нам понадобиться только класс AnalogClock).
Давайте более подробно рассмотрим, как работает данный класс (сам класс прилагается к исходнику, ссылка на который в конце поста).
Код ActionScript 3.0:
/*
импортируем класс
*/
import com.nimmp.clock.analog.AnalogClock;
/*
настройки для будущих часиков
*/
var settings:Object = new Object();
/*
цвет обводки вокруг часов, а также цвет часовой и минутной стрелок
*/
settings.baseColor = 0x999999;
/*
диаметр часов
*/
settings.clockSize = 200;
/*
толщина обводки вокруг часов
*/
settings.faceThickness = 3;
/*
толщина часовой стрелки
*/
settings.hourThickness = 3;
/*
толщина минутной стрелки
*/
settings.minuteThickness = 2;
/*
толщина секундной стрелки
*/
settings.secondThickness = 1;
/*
цвет секундной стрелки
*/
settings.secondHandColor = 0x000000;
/*
создаём объект AnalogClock (это и есть наши часики) и в качестве единственного параметра передаём ему ранее сделанные настройки
*/
var analogClock:AnalogClock = new AnalogClock(settings);
/*
добавляем часики на сцену флеш-ролика
*/
addChild(analogClock);
/*
размещаем часики ровно по центру нашего флеш-ролика
*/
analogClock.x = (stage.stageWidth / 2);
analogClock.y = (stage.stageHeight / 2);
/*
запускаем работу часов
*/
analogClock.startClock();
Результат будет следующим:
Согласитесь, получились вполне симпатичные механические часики. Их можно использовать или как отдельное флеш-приложение, или как элемент сложного флеш-проекта.
Исходник (под Adobe Flash CS5.5) и саму библиотеку классов AnalogClock скачать можно по данной ссылке. На этом всё.