Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Рисование rectangle с помощью actionscript (http://www.flasher.ru/forum/showthread.php?t=74122)

Rit 12.01.2006 15:35

Рисование rectangle с помощью actionscript
 
Подскажите, как нарисовать прямоугольник по двум заданным точкам: верхней левой и нижней правой?

В хелпе написан пример рисования линии
this.createEmptyMovieClip("line_mc", 10);
line_mc.lineStyle(1, 0x000000, 100);
line_mc.moveTo(0, 0);
line_mc.lineTo(200, 100);
line_mc._x = 100;
line_mc._y = 100;

А как нарисовать прямоугольник я сам не соображу.

Sh@man 12.01.2006 16:02

Код:

MovieClip.prototype.drawRectangle = function(x, y, width, height, color, alpha) {
        this.beginFill(color, alpha);
        this.moveTo(x, y);
        this.lineTo(x+width, y);
        this.lineTo(x+width, y+height);
        this.lineTo(x, y+height);
        this.lineTo(x, y);
        this.endFill();
};


__i 12.01.2006 16:03

Вложений: 1
для начала думаем!!!

потом смотрим каритинку, опять думаем и пишем скрипт

silin 12.01.2006 16:03

тяжелый, однако, случай..
Код:

var tl={x:10,y:10}, br={x:100,y:100};
this.createEmptyMovieClip("qwad_mc", 10);
with(qwad_mc){
        beginFill(0xFF0000);//если нужна
        lineStyle(1, 0x000000, 100);
        moveTo(tl.x, tl.y);
        lineTo(br.x, tl.y);
        lineTo(br.x, br.y);
        lineTo(tl.x, br.y);
        lineTo(tl.x, tl.y);
        endFill();
}


__i 12.01.2006 16:06

2Sh@man, эх все испортил, нужно чтоб они подумали, а потом скрипт давать, так они вообще думать перестанут

Rit 12.01.2006 16:15

спасибо, до этого я и сам дошел уже

Есть видимо класс прямоугольников (rectangle) с помощью которого можно, соответственно, их рисовать.

Ну как в паскале было. ...rectangle(x1,x2,y1,y2)
А тут по-любому вы используете все четыре точки прямоугольника

Вот я и не пойму как по двум точкам нарисовать во flash прямоугольник

Sh@man 12.01.2006 16:19

Нет, это силин всё испортил. Его код вставишь - и работает. А у меня еще надо знать что такое прототипы

KUZEN 12.01.2006 16:20

Цитата:

Сообщение от Rit
спасибо, до этого я и сам дошел уже

Есть видимо класс прямоугольников (rectangle) с помощью которого можно, соответственно, их рисовать.

Ну как в паскале было. ...rectangle(x1,x2,y1,y2)
А тут по-любому вы используете все четыре точки прямоугольника

Вот я и не пойму как по двум точкам нарисовать во flash прямоугольник

Так тебе же силин дал пример как это сделать ...

Sh@man 12.01.2006 16:24

Код:

MovieClip.prototype.drawRectangle = function(x1, y1, x2 ,y2, color, alpha) {
        this.beginFill(color, alpha);
        this.moveTo(x1, y1);
        this.lineTo(x2, y1);
        this.lineTo(x2, y2);
        this.lineTo(x1, y2);
        this.lineTo(x1, y1);
        this.endFill();
};


__i 12.01.2006 16:25

Цитата:

Сообщение от Sh@man
Нет, это силин всё испортил. Его код вставишь - и работает. А у меня еще надо знать что такое прототипы

Вы на пару все испортили %)), просто я его поста не видел когда про тебя гововорил %))


Часовой пояс GMT +4, время: 23:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.