Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Flash > Прямоугольник растёт в размерах.


Автор: Lebedev 18.11.2006, 13:01
Здравствуйте.

Как сделать, чтобы прямоугольник начал увеличиваться в размерах следующим образом. Основания прямоугольника оставались бы неизменны, а боковые стороны бы увеличивались.

Подскажите, пожалуйста как это сделать. Уроки к флешу посмотрел, но не разобрался как такое реализовать.

Спасибо.

Автор: AlDev 18.11.2006, 13:24
посмотри help на тему scale

Автор: Lebedev 18.11.2006, 16:25
Я чуточку разобрался. Но есть вопросы. 

1) Когда я в конечном ключевом кадре меняю размеры прямоугольника, то смещается его все стороны, а я хочу чтобы одна сторона оставалась неподвижна. Как-то можно сделать одну из сторон неподвижной? Или как потом вернуть эту сторону точно на прежнее место (не руками)?
2) При увеличении размеров утолщаются боковые линии прямоугольника. Хочется чтобы они оставались той же толщины. 

Я работаю в flash 4.

Автор: GZep 18.11.2006, 16:34
Цитата(Lebedev @  18.11.2006,  16:25 Найти цитируемый пост)
Я работаю в flash 4.

Такого и в музее наверное не найти smile 
Цитата(Lebedev @  18.11.2006,  16:25 Найти цитируемый пост)
2) При увеличении размеров утолщаются боковые линии прямоугольника. Хочется чтобы они оставались той же толщины. 

А нельзя просто программно все это на место возвращать, циклично выполняющейся функцией?
Цитата(AlDev @  18.11.2006,  13:24 Найти цитируемый пост)
посмотри help на тему scale 

Ты не исправим... smile 

Автор: Lebedev 18.11.2006, 20:21
Цитата(GZep @ 18.11.2006,  16:34)
А нельзя просто программно все это на место возвращать, циклично выполняющейся функцией?

Можно подробнее.

Я реально не понимаю, и самостоятельно пытаюсь разобраться, просто не получается.

Автор: AlDev 19.11.2006, 09:02
Цитата(Lebedev @  18.11.2006,  21:25 Найти цитируемый пост)
Я работаю в flash 4.

Убей его об стенку и поставь 8-й.

Цитата(GZep @  18.11.2006,  21:34 Найти цитируемый пост)
А нельзя просто программно все это на место возвращать, циклично выполняющейся функцией?

А зачем, если в 8-ке можно сделать проще:

Цитата(GZep @  18.11.2006,  21:34 Найти цитируемый пост)
Цитата(AlDev @  18.11.2006,  13:24 Найти цитируемый пост)
посмотри help на тему scale 

Ты не исправим... smile  

Йопрст, там ВСЕ (почти smile ) есть!
MovieClip.scale9grid property


Вот код оттуда:
Код

import flash.geom.Rectangle;
import flash.geom.Matrix;

this.createEmptyMovieClip("my_mc", this.getNextHighestDepth());

var grid:Rectangle = new Rectangle(20, 20, 260, 260);
my_mc.scale9Grid = grid ;

my_mc._x = 50;
my_mc._y = 50;

function onMouseMove() 
{
    my_mc._width = _xmouse;
    my_mc._height = _ymouse;
}

my_mc.lineStyle(20, 0xff3333, 100);
var gradient_matrix:Matrix = new Matrix();
gradient_matrix.createGradientBox(15, 15, Math.PI, 10, 10);
my_mc.beginGradientFill("radial", [0xffff00, 0x0000ff], 
            [100, 100], [0, 0xFF], gradient_matrix, 
            "reflect", "RGB", 0.9);
my_mc.moveTo(0, 0);
my_mc.lineTo(0, 300);
my_mc.lineTo(300, 300);
my_mc.lineTo(300, 0);
my_mc.lineTo(0, 0);
my_mc.endFill();


Добавлено @ 09:08 
в четвертом Flash-е даже функции нельзя писать. Убей его!

Автор: Maksys 21.11.2006, 06:18
 smile       user posted image
Сорри за | Flash 4 is Dead... 
Офтопик |

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)