Просмотр полной версии : Динамичекая графика в клипе
Вопросы к знатокам.
Как с помощью ActionScript менять местами слои?
И второй вопрос. Как нарисовать правильную
окружность? Кроме оператора Curve больше ничего нет?
Спасибо!
По первому вопросу:
Слои так таковые существуют только во время авторинга (создания), а когда создается swf - слои теряются. Flash упорядочивает мувиклипы по глубине в так называемый z-order, в котором 1 - самый нижний уровень.
Вот так можно менять местами два мувиклипа:
mc1_mc.swapDepth(mc2_mc);
По второму вопросу:
Программно - можно еще попиксельно через BitmapData окружность рисовать :) (только во Флеш 8).
А еще окружность можно инструментом нарисовать (чтоб окружность была как ты сказал "правильная", при рисовании нужно Shift нажатым держать), и как мувиклип в библиотеку записать с линкаджем, а затем где надо аттачить и масштабировать до нужных размеров.
PS Привиди пример "неправильной окружности".
to breez38
Первый не самый нижний уровень, самый нижний -16384 и называется он _root
trace(getDepth());
Ну блин... Вот сэмпл из хелпа по АС, как окружности рисовать:
this.createEmptyMovieClip("circle2_mc", 2);
circle2_mc.lineStyle(0, 0x000000);
drawCircle(circle2_mc, 100, 100, 100);
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
mc.moveTo(x+r, y);
mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x,
-Math.sin(Math.PI/4)*r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x,
-Math.sin(Math.PI/4)*r+y);
mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
функцию написать и курвами, курвами... %)
to Kuzen
эт я знаю, но все что меньше нуля - зарезервировано системой, у меня при использовании отрицательного числа при аттачи приколы те еще бывали :),
а для обычного человека 0 - самый нижний (но 0 тоже глючит переодически).
to AxelRB
Тегом CODE слабо пользоваться - нифига же нечитабельно.
Спасибо, за дельные советы. А для дуги
такой функции нет, как для окружности?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.