реклама на сайте
подробности

 
 
> Точки пересечения двух окружностей, Формулы в общем виде для процессора
stepserg
сообщение Aug 5 2008, 05:44
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 99
Регистрация: 6-06-07
Пользователь №: 28 237



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

Решить эту задачу на листе бумаги с известными числовыми значениями
радиусов и центров - не проблема. Решается система квадратных уравнений.

Более громоздкая задача получается, когда нужно представить решение в общем виде,
т.е. чтобы по этим формулам можно было вычислять точки пересечения в DSP-процессоре.

Может кто-нибудь это уже проделал?
А может есть численный метод под такую задачу?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Tanya
сообщение Aug 5 2008, 09:00
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(stepserg @ Aug 5 2008, 09:44) *
Задача: Есть две окружности в плоскости.
Радиусы, координаты центров известны.
Необходимо найти точки пересечения этих окружностей
(естественно, если эти окружности пересекаются).

Решить эту задачу на листе бумаги с известными числовыми значениями
радиусов и центров - не проблема. Решается система квадратных уравнений.

Более громоздкая задача получается, когда нужно представить решение в общем виде,
т.е. чтобы по этим формулам можно было вычислять точки пересечения в DSP-процессоре.

Может кто-нибудь это уже проделал?
А может есть численный метод под такую задачу?

Квадратное уравнение, говорите... Рассмотрим случай, когда центр второй окружности лежит вне первой...
Сведем преобразованием координат (для простоты) центры на ось x, так, чтобы центр первой окружности радиуса R был в точке (0, 0), тогда центр второй с радиусом r будет в известной точке (A, 0)...
Напишем для точек пересечения...
x*x+y*y = R*R
(A-x)^2 + y*y= r*r
вычтем из первого уравнения второе...
Получим:
(2x-A)*A=(R-r)(R+r)
Дальше просто?
Go to the top of the page
 
+Quote Post



Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 13:44
Рейтинг@Mail.ru


Страница сгенерированна за 1.01671 секунд с 7
ELECTRONIX ©2004-2016