Показать сообщение отдельно
Старый 21.11.2010, 19:45
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 2  
Ответить с цитированием
goodguy
Banned

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
если нужно знать только в каком направлении копать, то:
Я бы для начала создал две переменные с типом данных Point одну для хранения начального положения мувика (как бы точки отсчета), другую в качестве указателя куда должна двигаться линия. Затем, слушатель MOUSE_DOWN и обработчик этого события. Внутри функции обработчика бы добавил ENTER_FRAME который будет рисовать линию покадрово. Так же назначил бы координаты первой точки равные координатам мувика.

Внутри энтер фрейма, применив немного тригонометрии расчитал бы угол от начальной точки до курсора

Код AS3:
var angle:Number = Math.atan2(point1.y - container.mouseY, point1.x - container.mouseX);
и уже начал рисовать линию к координатам которые бы расчитывал так:

Код AS3:
point2.x = Math.cos(angle) * 2;
point2.y = Math.sin(angle) * 2;
Ну а там бы уже с помощью graphics.lineTo рисовал линию к этим координатам.

А остановил бы рисование чем то вроде этого:

Код AS3:
if (Math.abs(container.mouseX - point2.x) <= 5 && Math.abs(container.mouseY - point2.y) <= 5)
{
     stage.removeEventListener(Event.ENTER_FRAME, blabla);
}


Последний раз редактировалось goodguy; 21.11.2010 в 19:48.