программа для аппроксимации окружности по точкам

aldo63

Посоветуйте, на чем можно сделать следующее:
по координатам некоторого количества точек (от 10 до 20) нужно восстановить окружность, на которой они лежат. На выходе желательно получить координаты центра и радиус с указанием погрешностей.

k11122nu

когда-то этот вопрос задавался то ли в Стади, то ли в Программинге. Вероятно, ключевые слова - МНК для окружности. Если я правильно помню, аналитически задача все-таки не решается или решается жутко громоздко. Численно ее можно легко решить, например, в ехеле, благо параметров минимизации всего три. Хочешь - по МНК, хочешь - по наименьшим модулям, хочешь - по чему угодно.

iri3955

А что значит лежат?
Если более менее близко и надо получить "примерно", то инверсия с центром в одной из точек должна спасти...
И тогда задача сводится к построению прямой, что попроще...
Или надо строго минимум отклонения получить?

aldo63

Ясно, спасибо :)

aldo63

Значит известно, что они должны лежать на этой окружности, но в измерениях есть погрешности.
Насчет инверсии - не совсем понял; ни центр, ни радиус не известны, относительно чего ее делать?

aldo63

А, понял. Да, идея интересная, можно попробовать. :)

k11122nu

это неважно, вроде бы. Если сделать инверсию отн любой окружности с центром в данной точке, то:
- любая окружность (а значит, и искомая) перейдет в окружность или прямую
- данная точка переходит в беск. удаленную
=> искомая окружность перейдет в прямую.
Типа, усё :)

aldo63

Да, так :)
Оставить комментарий
Имя или ник:
Комментарий: