Весьма не сложный, коротенький урок по созданию сферы. Думаю результат вам должен понравиться.
Вот, что вы сможете сотворить, подключив немного фантазии, и конечно же наш любимый метод почитаемого профессора ТЫка.
Итак, приступим:
1. Создаем новый Флэш файл AS3.
2. Делаем новый мувиклип Ctrl+F8, как-то называем его, ставим галочки напротив строк "Export for Action sript" и "Export in frame 1", а в строке "Class:" пишем pict.
Жмем ОК, если выскочило окошко - еще раз нажимаем на кнопочку ОК.
3. Теперь, находясь внутри мувиклипа, рисуем небольшой кружочек , а затем еще две окружности, с маленькой непрозрачностью заливки и обводки (это важно, так как они будут накладываться), начиная от центра сцены (обозначен небольшим крестиком) и удерживая Alt и Shift (круг будет ровным, и растягиваться будет от центра). Вобщем, постарайтесь нарисовать что-то похожее на это: по форме
цвету
непрозрачности
4.Идем на главную сцену и в первый фрейм вставляем внимательно прочитанный вами скрипт
Code
var container:MovieClip=new MovieClip();//создаем контейнер addChild(container);//добавляем его на сцену
function spherize(_x:Number,_y:Number,quantity:Number,_X:Boolean,_Y:Boolean,_Z:Boolean,speed:Number) { //та функция, которой будем создавать нашу сферу (значения параметров распишу ниже) for (var i:Number=0; i<=quantity; i++) { // запускаем цикл, добавляющий наш мувиклип каждый раз с новыми параметрами var element:MovieClip=new pict();// объявляем новый экземпляр нашего мувиклипа with (element) {// меняем координаты мувиклипа x=_x; //по иксу y=_y; //по игрику name="element"+i;//даем каждому экземпляру оригинальное имя rotationZ=(360/quantity)*i;//поворачиваем по оси Z rotationY=(360/quantity)*i;//поворачиваем по оси Y rotationX=(360/quantity)*i;//поворачиваем по оси X addEventListener(Event.ADDED,onEnter);// добавляем слушатель на событие Добавления экземпляра на сцену cacheAsBitmap;//немного разгрузим процессор } container.addChild(element);//добавляем "деток" в контейнер container.cacheAsBitmap; } function onEnter(e:Event) {//запускаем функцию вращения e.target.addEventListener(Event.ENTER_FRAME,spin); } function spin(e:Event) { if (_X) {e.target.rotationX+=speed;}// if (_Y) {e.target.rotationY+=speed;}//вращаем по осях, отмеченных как true, и упускаем - false. if (_Z) {e.target.rotationZ+=speed;}// } }
//sperize(координата по оси абсцыс : число, координата по оси ординат: число, количество элементов, вращение по оси X: булевое значение(true/false),вращение по оси Y: булевое значение(true/false),вращение по оси Z: булевое значение(true/false),скорость вращения: число)