Форум программистов, компьютерный форум, киберфорум
Наши страницы

ActionScript

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
(I_P)
0 / 0 / 0
Регистрация: 13.08.2011
Сообщений: 4
#1

Рисование стрелки - ActionScript/AS 3.0

15.08.2011, 23:04. Просмотров 1655. Ответов 3
Метки нет (Все метки)

Здравствуйте.Написал небольшой скрипт который рисует линии, что нужно дописать что б на конце линии рисовалась стрелка по направлению линии.Заранее спасибо.

ActionScript 3
1
2
3
4
5
6
7
8
9
10
graphics.lineStyle(2);
stage.addEventListener(MouseEvent.MOUSE_DOWN, startF);
function startF(e:MouseEvent):void {
 graphics.moveTo(mouseX, mouseY);
}
 
stage.addEventListener(MouseEvent.MOUSE_UP, stopF);
function stopF(e:MouseEvent):void {
 graphics.lineTo(mouseX,mouseY);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2011, 23:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос AS 3.0 Рисование стрелки (ActionScript):

Создание стрелки на AS3 - ActionScript
Кликом мыши создаю начало для стрелки, потом перетаскиваю мышь и стрелка едет за мышью Картинка: Но если сделать стрелку под углом...

Создание крутящейся стрелки, время вращения которой можно изменять в PHP файле - Flash
Здравствуйте. Необходимо реализовать плавное вращение стрелки в кольце, при этом время вращения должно находится в PHP файле, после того...

Рисование во Flash - Flash
Всем привет... Народ, кто может знает, или подкинет идею, как можно осуществить рисование во Флэш подобно тому как это сделанно...

AS 3.0 Рисование на созданном MovieClip - ActionScript
Я создал MovieClip и назвал его «canvas». При клике на данный MovieClip происходит "рисование". Но когда я нажимаю на нарисованный...

Рисование пользователем во Flash - ActionScript
Необходимо реализовать, что бы при нажатии на левую кнопку мыши и перетаскивании курсора проводилась линия. Вообщем аналог карандаша в...

Рисование на сайте: выбор ЯП - Flash
На каком языке можно организовать что-то типа создания онлайн mindmap (интеллектуальных карт). То есть нужно создание графических...

3
TanaTiX
Модератор
2792 / 1644 / 168
Регистрация: 19.02.2011
Сообщений: 5,948
15.08.2011, 23:59 #2
Нет опции, рисующей какие-либо фигуры на конце линий. Хотите стрелку - рисуйте ее полноценно таким же образом, как нарисовали линию.
0
(I_P)
0 / 0 / 0
Регистрация: 13.08.2011
Сообщений: 4
18.08.2011, 13:52  [ТС] #3
Если нет опции то можно её сделать

ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import gs.*;//бибилиотека TweenLite 
stage.addEventListener(MouseEvent.MOUSE_DOWN, startF);
stage.addEventListener(MouseEvent.MOUSE_UP, stopF);
 
var line:Sprite = new Sprite();
var line2:Sprite = new Sprite();
var cord:Sprite = new Sprite();
line.graphics.lineStyle(2);
 
var coord : Sprite =  new Sprite();//координатный спрайт
graphics.lineStyle(4);//стиль линии
var objects:Array = [];//масив для создания объектов стрелки 
var k:int = 0;
 
//при нажатии кнопки мышки создаётся новый эль.,выставляется начальная позиция для линии
function startF(e:MouseEvent):void {
    //создаёт новую стрелку при нажатой клавиши мышки
    k++;
    var eye1_mc:MovieClip= new eye();
    eye1_mc.x=mouseX;
    eye1_mc.y=mouseY;
    objects[k]=eye1_mc;
    addChild(objects[k]);
    //----------------
    stage.addEventListener(MouseEvent.MOUSE_MOVE, followCursor);
    //передаём статические координаты moveTo
    coord.x=mouseX;
    coord.y=mouseY;
    line.graphics.moveTo(mouseX, mouseY);
        
    }
//--------------------------------
 
//при отжатой кнопки мышки удаляется слушатель событий EnterFrame, Mouse_Move
function stopF(e:MouseEvent):void {
    line.graphics.lineTo(mouseX,mouseY);
    addChild(line);
    stage.removeEventListener(MouseEvent.MOUSE_MOVE, followCursor);
    }
//-------------
 
//поворот стрелки относительно начальной точки координат передаёт метод moveTo
    function followCursor(event:MouseEvent):void {  
    line2.graphics.clear();
    line2.graphics.lineStyle(4);
    line2.graphics.moveTo(coord.x,coord.y);
    line2.graphics.lineTo(mouseX,mouseY);
    
    TweenLite.to(objects[k], 0, {x:mouseX, y:mouseY});//курсор бегает за мышкой
    var coordy1 : Number =  coord.y-mouseY;
    var coordx1 : Number = coord.x-mouseX;
    trace(coord.y,coord.x)
    var angleRadians1 : Number  = Math.atan2(coordy1,coordx1);
    var angleDegrees1 : Number  = angleRadians1 * 180 / Math.PI;
    objects[k].rotation = angleDegrees1;
    addChild(line2);
        }
//--------------------------------
Для работы нужна библиотека TweenLite можно скачать тут.Потом создаём move_clip называем его eye это будет наша стрелка на конце которая будет прорисовывается на конце линии, направление стрелки должна смотреть ровно в левую сторону так как с правой стороны будет рисоватся хвост(в принципе на конце может быть любая фигура). НУ вот и всё стрелкаготова
0
TanaTiX
Модератор
2792 / 1644 / 168
Регистрация: 19.02.2011
Сообщений: 5,948
18.08.2011, 21:01 #4
Ужас. Но я вас поздравляю с достигнутым желаемым результатом.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2011, 21:01
Привет! Вот еще темы с ответами:

Рисование части прямоугольника кодом - ActionScript
Доброго времени суток всем! У меня появилась необходимость нарисовать с помощью кода сегмент прямоугольника (как сегмент круга, только...

AS 3.0 Как можно сделать более плавное рисование? - ActionScript
Сделал рисовалку, но быстро передвигая мышку, получается такая ситуация, как на картинке. Рисование происходит через событие движения мыши....

Рисование стрелки - OpenGL
Всем добрый день. Есть ли у кого опыт в рисовании самой обычной стрелки? Программирую на C#. Видел код на С++ но ничего там не понял :(...

Рисование стрелки - Delphi
Помогите пожалуйста, никак не могу придумать как нарисовать стрелку с изменением направления, в зависимости от предыдущей координаты,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru