Вниз
Скачать: CL | DM;

Точка находится на линии   Найти похожие ветки 

← →
alxx ©   (2003-07-09 16:52) [0]

Дано: начальная и конечная точки и ширина линии.
Как бы побыстрее узнать, находится ли точка на линии или нет.
(можно таблицу синусов использовать + операции с фиксированной запятой, но может быть можно проще?)


← →
MBo ©   (2003-07-09 16:56) [1]

Что из себя представляет твоя "линия"?


← →
alxx ©   (2003-07-09 16:58) [2]

Толстая линия.


← →
miek   (2003-07-09 16:59) [3]

Еще надо знать, с какой точностью считать, что точка на линии или все-таки нет.

Тогда просто подставить значения в формулу расстояния и сравнить


← →
alxx ©   (2003-07-09 16:59) [4]

Просто отрезок с шириной. Даны две точки и ширина.


← →
alxx ©   (2003-07-09 16:59) [5]

Расстояние точки до линии? Звучит вкусно. Щаз попробую вывести.


← →
MBo ©   (2003-07-09 17:00) [6]

прямоугольник? где "начальная и конечная точки" находятся?
завершения плоские или закругленные?


← →
alxx ©   (2003-07-09 17:05) [7]

Завершения закругленные. Но ими можно пожертвовать. Т.е. на концах формула может не работать (можно считать прямоугольником). А начальная и конечная точки находятся на плоскости (в середине линии-прямоугольника). В этой же плоскости находится и точка.


← →
alxx ©   (2003-07-09 17:07) [8]

Простите меня, линейную алгебру подзабыл. Сейчас буду вспоминать.


← →
MBo ©   (2003-07-09 17:21) [9]

записываешь уравнение прямой в параметрическом виде X=x0+t(x1-x0), так же для Y, дифференцируешь квадрат расстояния до точки - находишь параметр ближайшей к точке точки прямой. Если он в пределах 0..1 - то лежит, где надо


← →
Sapersky_   (2003-07-09 22:52) [10]

Расстояние от точки до отрезка:

http://geometryalgorithms.com/Archive/algorithm_0102/algorithm_0102.htm

См. Distance to a Ray or a Segment и последний исходник (dist_Point_to_Segment). Кстати, как раз закруглённые завершения будут учитываться.


← →
alxx ©   (2003-07-10 12:42) [11]

Круто! Работает, спасибо.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.013 c
3-83104
gestern
2003-12-28 16:51
2004.01.26
---|Ветка была без названия|---


8-83215
UltraFreak
2003-09-19 11:53
2004.01.26
Алгоритм цветового круга


1-83187
Grinder
2004-01-14 18:48
2004.01.26
Сохранение TreeView в файл


4-83303
User_OKA
2003-11-21 09:29
2004.01.26
Получение информации о выполняющихся в системе процессах


4-83305
Prince Alex
2003-11-21 01:32
2004.01.26
Как получить ROP код по формуле




   Наверх