Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Найти функции прямых по точкам. Добавлено: 30.06.11 16:56  

Автор вопроса:  AWP | Web-сайт: xawp.narod.ru | ICQ: 345685652 
Привет, нужна ваша помощь.

Есть массив из точек:
http://xawp.narod.ru/Ex.png

Нужно найти функции всех прямых, как можно с большей точностью.
Координаты точек имеют тип Double.

Как это можно сделать?

Была мысль найти все функции, всех пересечений, через каждые две точки, а потом отсеять повторные, но в таком случаи он находит кучу прямых, состоящих из двух(или трех) точек соседних прямых...

Жду ваших рассуждений!

Спасибо.

Ответить

  Ответы Всего ответов: 11  

Номер ответа: 1
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #1
Добавлено: 01.07.11 02:49
значит нужно отсеять также и те, у которых нет повторов:)

Ответить

Номер ответа: 2
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #2
Добавлено: 03.07.11 20:59
Тогда все уберутся))

Есть еще идеи?

Ответить

Номер ответа: 3
Автор ответа:
 Ким Чен Ир



Вопросов: 0
Ответов: 140
 Профиль | | #3 Добавлено: 04.07.11 01:18
У тебя ведь это не точки, а окружности с малым радиусом.
Надо бы строить линию попадающую в окрестности.

Ответить

Номер ответа: 4
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #4
Добавлено: 04.07.11 15:26
А точки, принадлежащие к одной прямой, точно на _ней_ лежат, или надо делать лучший подгон? Если на ней, можно провести линию между любыми двумя, потом пройтись по остальным и добавить в группу все те, что лежат на этой прямой. Потом выбрать ещё две из тех, что при первом повторе добавлены не были. Недостатиок - может получиться что линия пройдёт через какие-то 3 вообще не относящиеся друг к другу точки

Ответить

Номер ответа: 5
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #5
Добавлено: 04.07.11 15:27
А точки, принадлежащие к одной прямой, точно на _ней_ лежат, или надо делать лучший подгон? Если на ней, можно провести линию между любыми двумя, потом пройтись по остальным и добавить в группу все те, что лежат на этой прямой. Потом выбрать ещё две из тех, что при первом повторе добавлены не были и повторить весь процесс пока все не добавятся. Недостатиок - может получиться что линия пройдёт через какие-то 3 вообще не относящиеся друг к другу точки

Ответить

Номер ответа: 6
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #6
Добавлено: 04.07.11 22:55
Каддафи М
Это просто графическое представление.

Morpheus
Точки лежат с какой-то погрешностью(+- 1).

Ответить

Номер ответа: 7
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #7
Добавлено: 07.07.11 06:35
Может криво, но вдруг?

-берём любую точку
-находим ближайщую к ней
-получаем уравнения прямой
-расширяем радиус от 0 до бесконечности от первой точки и добавляем постепенно все точки, которые ближе всего к прямой
-пересчитываем уравнение прямой после каждого добавления (алгоритм может быть либо лучший подгон по всем, либо первая с последней. у первого проблема что может тормозить, а второй может косячить если последняя точка принадлежит другой (пересекающей) прямой
-как только точки кончатся (увеличиваем радиус на +10 пикселей и на расстоянии в 10 пикселей от прямой нет точек), заканчиваем цикл и больше из этой группы точки в расчёт не берём.
-повторяем процесс с другими точками

Ответить

Номер ответа: 8
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #8
Добавлено: 07.07.11 09:12
Проблема в том, что если прямые пересекаются, то алгоритм будет захватывать точки соседних прямых(есть погрешность).

На прямой расстояние между точками примерно одинаковое.

Ответить

Номер ответа: 9
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #9
Добавлено: 08.07.11 01:10
Ога, есь такая вероятность, но можно сделать чтоб он не только брал точки, которые ближе всего к воображаемой прямой, но и ближе всего к ожидаемой дистанции от предыдущей. проблема будет если сразу напорешься на центральную точку в Х-пересечении, ведь вторая точки (ближайшая к ней) может принадлежать к другой прямой.

Ответить

Номер ответа: 10
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #10
Добавлено: 08.07.11 01:11
странная задача.. капчу штоли ломаемч? =)

Ответить

Номер ответа: 11
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #11
Добавлено: 08.07.11 09:30
вот такая...
да не, капчу так не сломать=)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам