Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 11.01.2008, 03:26
goarcade вне форума Посмотреть профиль Отправить личное сообщение для goarcade Найти все сообщения от goarcade
  № 5  
Ответить с цитированием
goarcade

Регистрация: Sep 2006
Сообщений: 32
Цитата:
Сообщение от Сандра
Спасибо! А теперь немного посложнее задача, есть переменные a и b:

Код:
var a = _root._xmouse;
var b = _root._ymouse;
Как найти координаты x3 и y3, таким образом, чтобы они лежали на заданном отрезке (который, как следует из самого первого условия задан координатами x1, y1 и x2, y2) и чтобы курсор мышки был максимально приближен к этой точке?
Код:
onEnterFrame = function () {
	var dx:Number = b._x-a._x;
	var dy:Number = b._y-a._y;
	var t:Number = (_xmouse*dx-a._x*dx+_ymouse*dy-a._y*dy)/(dx*dx+dy*dy);
	if(t>1)t=1;
	if(t<0)t=0;
	c._x = a._x+(b._x-a._x)*t;
	c._y = a._y+(b._y-a._y)*t;
};

mcDrag("a");a._x = 50; a._y = 50;
mcDrag("b");b._x = 150; b._y = 150;
mcDrag("c");delete c.onPress;

function mcDrag(name:String)
{
	var mc:MovieClip = _root.createEmptyMovieClip(name,_root.getNextHighestDepth());
	mc.beginFill(0xcccccc*Math.random());
	var r:Number = 5;
	mc.moveTo(-r,-r);
	mc.lineTo( r,-r);
	mc.lineTo( r, r);
	mc.lineTo(-r, r);
	mc.endFill();
	mc.onPress=function(){this.startDrag()}
	mc.onMouseUp=function(){this.stopDrag()}	
}
Если непонятна математика - могу объяснить

Создать новую тему   Часовой пояс GMT +4, время: 09:56.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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