Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.29;
Скачать: CL | DM;

Вниз

Точка на отрезке, ближайшая к данной.   Найти похожие ветки 

 
alxx ©   (2003-07-15 12:13) [0]

Не подскажете, как найти координаты точки на отрезке, которая ближе всех к отрезку? Через синусы я могу вывести, но хотелось бы обойтись делением и умножением.


 
MBo ©   (2003-07-15 12:23) [1]

??

http://delphimaster.net/view/9-1057755124/
MBo © (09.07.03 17:21)


 
alxx ©   (2003-07-15 12:27) [2]

Я, если честно, схалявил в тот раз. Взял просто Sapersky_ (09.07.03 22:52).

Спасибо.


 
alxx ©   (2003-07-15 12:28) [3]

Что такое "дифференцируешь квадрат расстояния до точки"?


 
alxx ©   (2003-07-15 12:29) [4]

Поторопился с вопросом. Оказывается в Sapersky_ (09.07.03 22:52) есть прямой ответ и на этот мой вопрос.


 
MBo ©   (2003-07-15 12:40) [5]

отрезок xa,ya-xb,yb
точка x0,y0

lx=xb-xa
ly=yb-ya
dx=xa-x0
dy=ya-y0
ур-е прямой
X=xa+t*lx
Y=ya+t*ly
квадрат расстояния от точки x0 до точки прямой с параметром t
R^2=(lx*t+dx)^2+(ly*t+dy)^2
производная
2t(lx^2+ly^2)+2(dx*lx+dy*ly)
очевидно, квадрат расстояния имеет только минимум, в нем производная=0

t=-(dxlx+dyly)/(lx^2+ly^2)

подставляем t в ур-е прямой, находим кооординаты.
если t<0 и >1 - берем концы


 
alxx ©   (2003-07-15 13:04) [6]

Спасибо. Объяснили двоешнику.


 
neuro ©   (2003-07-15 17:58) [7]

> если t<0 и >1 - берем концы
это конечно опечатка, но как смотрицца 8)


 
MBo ©   (2003-07-15 18:05) [8]

>neuro
не опечатка, а недописька :)

Если t<0 - ближайшей точкой является конец A,
если t>1 - конец B



Страницы: 1 вся ветка

Текущий архив: 2004.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
14-93688
hooky-mars
2004-01-06 17:27
2004.01.29
Помагите!


7-93715
Ertong
2003-11-09 09:39
2004.01.29
Программирование в двоичных кодах.


1-93530
ИМХО
2004-01-18 01:40
2004.01.29
Недопустимые символы в названии файла


14-93630
Zeon
2004-01-02 02:00
2004.01.29
Воксельный редактор


3-93387
alextov
2003-12-29 15:28
2004.01.29
При вводе ключевого поля не отображаются некоторые лукапные поля