|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.01.2015, 00:59 | #1 |
Форумчанин
Регистрация: 12.04.2008
Сообщений: 105
|
Наименьшее расстояние между двумя точками
Здравствуйте. Подскажите пожалуйста есть ли готовый алгоритм для поиска самой ближней точки для заданной точки из массива точек?
Есть массив из точек (array of TPoint) которые расположены по эллипсу и есть какая-то условная точка. Нужно вычислить какая точка из массива лежит ближе всего к условной точке. Вот что сделал я: Код:
|
20.01.2015, 01:05 | #2 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,551
|
Проведите прямую между центром эллипса и этой точкой. Ближайшее пересечение данной прямой с эллипсом - искомая точка.
E-Mail: arigato.freelance@gmail.com
|
20.01.2015, 01:07 | #3 |
Форумчанин
Регистрация: 12.04.2008
Сообщений: 105
|
Дело в том что фигуры как таковой не существует, есть набор точек которые БЫЛИ на этой фигуре.
|
20.01.2015, 01:32 | #4 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,551
|
Тогда перебор точек и поиск минимального расстояния до нашей точки.
E-Mail: arigato.freelance@gmail.com
|
20.01.2015, 02:29 | #5 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,872
|
|
20.01.2015, 02:51 | #6 |
Форумчанин
Регистрация: 12.04.2008
Сообщений: 105
|
Не правильно рассчитывает минимальное расстояние. Т.е. в ряде случаев все ок, но иногда появляются неточности, точки имеют определенную плотность видимо по этому и возникают неточности. Если тот вариант что я представил является более-менее оптимальным, значит мне следует поработать над входящими данными.
|
20.01.2015, 03:43 | #7 |
Форумчанин
Регистрация: 27.10.2014
Сообщений: 594
|
|
20.01.2015, 06:40 | #8 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Цитата:
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
20.01.2015, 06:57 | #9 | ||
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Код похож на правду, только отвратительный. Напишите отдельную функцию для расчета расстояний между двумя точками и проходите циклом.
Ошибки могут возникать из-за разницы в системе отсчета. Как правило для строительства эллипса используют свою систему координат. Ваш игрок и эллипс отсчитываются в одном пространстве? Цитата:
Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 20.01.2015 в 07:01. |
||
20.01.2015, 07:46 | #10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Я бы наверное писал так:
Код:
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Расстояние между точками | tatiana2472 | Помощь студентам | 14 | 02.06.2013 23:22 |
Создать класс, содержающий методы вычисления расстояние между двумя точками (C# решения нужно оч!) | JoyStar | Помощь студентам | 6 | 10.12.2012 15:09 |
Расстояние между точками | bumer7721 | Помощь студентам | 0 | 22.03.2012 19:16 |
Рассчитать налог, принадлежность Х к промежутку,расстояние между двумя точками на плоскости,свой возраст на сегодняшний | Levon123 | Microsoft Office Excel | 2 | 14.06.2011 15:14 |
СИ Найти наименьшее расстояние между точками | savra | Помощь студентам | 2 | 19.04.2011 10:16 |