|
Тема
|
Координати на точка от допирателната към окръжност
|
|
Автор |
Kontra () |
Публикувано | 24.06.08 08:34 |
|
Съжалявам ако задачката е прекалено проста, но ножът е опрял до кокъл и трябва да си свърша работа.
Дадена е окръжност с център О ( x1 , y1 ) и радиус r. Дадена е точка A ( x2, y2 ), външна за окръжността. Интересува ме как мога да намеря координатите на двете точки T1 и T2, такива че AT1 и AT2 са допирателни към окръжността с център O ( т.Т1 и T2 принадлежат на окръжността ).
Ясно е, че АOT1 и AOT2 са правоъгълни -> AT1 и AT2 се намират по Питагор. Възможно решение е система от 2 уравнения с 2 неизвестни - уравнението на окръжността през O с радиус r и уравнението на окръжността през T с радиус дължината на AT. Но ми трябва да пиша програма, която намира координатите и се чудя дали няма някой по-хитър / по-ефективно изчислим начин.
Имам бегъл спомен, че имаше неква теоремета за тия допирателни. Дали някой се сеща ?
| |
Тема
|
Re: Координати на точка от допирателната към окръж
[re: Kontra]
|
|
Автор |
Orнeдишaщ (змей) |
Публикувано | 24.06.08 12:33 |
|
Не се сещам за кой знае колко по-лесен начин. Може би формулите стават малко по-прости, ако използваш уравнението на правата, върху която лежат двете точки Т1 и Т2, което е
(x-x1)*(x2-x1)+(y-y1)*(y2-y1)=r^2
Второто уравнение би могло да бъде
(x-x1)^2+(y-y1)^2=r^2
Решаваш системата (най-лесно спрямо (x-x1) и (y-y1)) и намираш двата комплекта координати. Свежда се до едно квадратно уравнение.
| |
Тема
|
Re: Координати на точка от допирателната към окръжност
[re: Kontra]
|
|
Автор | L (Нерегистриран) |
Публикувано | 24.06.08 15:07 |
|
Използвам java.lang.Math и пресмятам
1. Math.atan2(y2-y1, x2-x1) връща ъгъл \psi в диапазона от -\pi до +\pi,
представляващ ъгълът в полярните координати на радиус-вектора
(x2-x1, y2-y1).
Нека d е дължината на този вектор.
2. Math.acos(R/d) връща ъгъл \fi в диапазона от 0 до +\pi,
такъв, че cos(\fi)=R/d.
3. Търсените допирни точки "T+" и "T-" са с координати
x=x1+R cos(\psi + - \fi )
y=y1+R sin(\psi + - \fi )
| |
Тема
|
Re: Координати на точка от допирателната към окръжност
[re: Kontra]
|
|
Автор | пoтeн нerъp (Нерегистриран) |
Публикувано | 24.06.08 22:42 |
|
частен случай:
центъра на кръга е (0,0), точката от която строиш допирателната се намира върху абцисата на разстояние а от центъра, a>r.
веднага се вижда от подобни тригълници, че координатите на Т1 и Т2 са
r/a*(r, +/- Sqrt(a^2-r^2))
ся трябва да вкараш няква ротация/транслация на координатната система че да си пасне
| |
Тема
|
Re: Координати на точка от допирателната към окръж
[re: Kontra]
|
|
Автор |
Kontra () |
Публикувано | 25.06.08 08:23 |
|
свърших работа с решението на L
благодаря на всички
| |
Тема
|
Re: Координати на точка от допирателната към окръж
[re: L]
|
|
Автор |
Kontra () |
Публикувано | 25.06.08 08:26 |
|
пробвах го - хем смята точно, хем са буквално 5 реда код
благодаря ти много
| |
|
|
|
|