Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Vadim Meshkov                        2:5020/400     08 Jan 2002  19:26:10
 To : Andrew Simontsev
 Subject : Re: расстояние до отрезка
 -------------------------------------------------------------------------------- 
 
 Alexander Zeberg <zaccer@altavista.net> спрашивает:
 
 AZ> дано: отрезок (x1,y1,z1)-(x2,y2,z2)
 AZ> точка x,y,z
 AZ> найти: L - расстояние от точки до отрезка
 
 Вот алгоритм, не претендующий на оптимальность (написан 
 только что, поэтому нуждается в проверке). Обозначения: 
 (X1,Y1,Z1),(X2,Y2,Z2) --- концы отрезка, (x,y,z) --- 
 точка, L --- искомое расстояние.
 
 DX=X2-X1; DY=Y2-Y1; DZ=Z2-Z1;
 dx1=x-X1; dy1=y-Y1; dz1=z-Z1;
 dx2=X2-x; dy2=Y2-y; dz2=Z2-z;
 
 P=dx*DX+dy*DY+dz*DZ;
 D=DX*DX+DY*DY+DZ*DZ;
 
 if P <= 0, L=dx1*dx1+dy1*dy1+dz1*dz1;
 elseif P >= sqrt(D), L=dx2*dx2+dy2*dy2+dz2*dz2;
 else L=((dx1*DY-dy1*DX)^2+(dy1*DZ-dz1*DY)^2+(dz1*DX-
 dx1*DZ)^2)/D;
 end
 
 L=sqrt(L);
 
 Основная идея: если проекция точки на прямую, содержащую 
 отрезок, лежит вне отрезка, то кратчайшим является 
 расстояние до одного из концов. В алгоритме сначала 
 вычисляется расстояние (P) от точки 1 до проекции. Если 
 оно <= 0, то точка 1 --- ближайшая, если расстояние 
 больше длины отрезка (sqrt(D)), то проекция лежит за 
 точкой 2, и ближайшая точка --- 2. В противном случае
 проекция попала внутрь отрезка, и используется 
 стандартная формула для расстояния до прямой.
 
 Есть хорошие книги по геометрическим алгоритмам, 
 например такая:
 Препарата (фамилия такая),Шеймос "Вычислительная 
 геометрия".
 
 С уважением к собравшимся, В.М.
 -- 
 Отправлено через сервер Talk.Ru - http://www.talk.ru
 --- ifmail v.2.15dev5
  * Origin: Talk.ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Строки...   Andrew Simontsev   04 Jan 2002 05:11:18 
 Строки...   Serge Nozhenko   04 Jan 2002 16:55:32 
 Re: Строки...   Sergey Politov   05 Jan 2002 07:16:03 
 Строки...   Andrew Simontsev   05 Jan 2002 04:03:46 
 Строки...   Serge Nozhenko   05 Jan 2002 17:04:58 
 Re: Строки...   Sergey Politov   06 Jan 2002 05:53:38 
 Строки...   Serge Nozhenko   06 Jan 2002 17:09:26 
 Re: Строки...   Sergey Politov   07 Jan 2002 07:08:12 
 Суффиксное деpево   Ilia Kantor   12 Jan 2002 21:42:30 
 Re: Суффиксное деpево   Sergey Politov   14 Jan 2002 05:12:41 
 Re: Строки...   Vadim Meshkov   05 Jan 2002 14:38:29 
 Строки...   Andrew Simontsev   05 Jan 2002 20:02:33 
 RE:Строки...   Vitaly Slobodskoy   06 Jan 2002 01:20:50 
 Строки...   Andrew Simontsev   06 Jan 2002 15:01:49 
 Re: Строки...   Vadim Meshkov   08 Jan 2002 19:22:05 
 Re: Строки...   Vadim Meshkov   08 Jan 2002 19:22:06 
 Re: расстояние до отрезка   Vadim Meshkov   08 Jan 2002 19:26:10 
 Re: Аттрактор Лоренца   Vadim Meshkov   08 Jan 2002 19:30:28 
 Аттрактор Лоренца   Eugene Zagidullin   10 Jan 2002 03:13:09 
 Re: Аттpактоp Лоpенца   Vlad Bespalov   13 Jan 2002 20:50:51 
Архивное /ru.algorithms/6488c908937f.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional