szukanie zaawansowane
 [ Posty: 15 ] 
Autor Wiadomość
Mężczyzna Offline
PostNapisane: 1 kwi 2016, o 22:03 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Szukam równania, dzięki któremu będę mógł obliczyć współrzędne punktu przecięcia odcinka z okręgiem przy następujących założeniach:

- dany jest punkt A (x_A,y_A)
- dany jest kąt \alpha
- dany jest promień okręgu r

Z punktu A rysujemy okrąg o promieniu r. Punkt A jest też początkiem odcinka, który względem osi Y nachylony jest o kąt \alpha . Drugim końcem odcinka ma być punkt przecięcia odcinka z narysowanym okręgiem, którego współrzędne trzeba obliczyć.

Szukane są B(x_B, y_B).

Chciałem wyprowadzić wzory wychodząc od układu równań:
- prostej w postaci kierunkowej (co pozwoli wykorzystać wspomniany kąt \alpha )
- z równania okręgu w układzie współrzędnych.

Jednak rozwiązanie tego układu się komplikuje. Czy jest łatwiejszy sposób?

Pozdrawiam
Góra
Mężczyzna Offline
PostNapisane: 1 kwi 2016, o 22:40 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
Przesuń cały obrazek o wektor [-x_A,-y_A]
Góra
Mężczyzna Offline
PostNapisane: 2 kwi 2016, o 06:00 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Nie do końca rozumiem tę podpowiedź. Jakie są korzyści z rozpatrywania tego problemu w początku układu współrzędnych? Problem zostaje ten sam.

Dla mnie sprowadza się to raczej do rozwiązania takiego układu:

\begin{cases}  y = \tan \alpha  \cdot   x + y_A - \tan \alpha   \cdot  x_A\\ (x- x_A)^{2} + (y- y_A)  ^{2} = r^{2} \end{cases}

Może mając na myśli przesunięcie o wektor sugerujesz uproszczenie go?

Pozdrawiam
Góra
Mężczyzna Offline
PostNapisane: 2 kwi 2016, o 08:33 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
Po prostu jak się przesunie, to nie ma co liczyć, bo wszystko widać na obrazku
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 16:13 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Jak dokładnie sugerujesz to rozwiązać?

Obrazek

Dla dowolnego kąta \alpha (na rysunku a) i danych A (x_A,y_A) oraz znanej średnicy okręgu, chcę wyliczać współrzędne punktu B.
Góra
Kobieta Offline
PostNapisane: 3 kwi 2016, o 17:02 
Użytkownik
Avatar użytkownika

Posty: 663
Lokalizacja: Wrocław
a dolnego obrazka wylicz (x_B,y_B) i przesuń go o wektor [x_A,y_A]
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 17:38 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
Wsk. Narysuj prostokąt, którego przekątna jest odcinek AB a boki sa równoległe do osi
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 18:54 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Korzystając z Waszych sugestii i upraszczajac mój układ uzyskałem takie wzory:

\begin{cases} x_B =  \sqrt{ \frac{ r^{2} }{ 1+\tan  \alpha ^{2} } }  \\ y_B = \tan  \alpha  \cdot  x_B \end{cases}

Oczywiście należy odpowiednio dodać x_A oraz y_A.

Proszę o weryfikację.
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 19:21 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
ten pierwiastek da sie uprościc. A wzór na y_B nie powinien zależeć od x_B
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 19:36 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Oczywiście, rozumiem. Jeżeli nie ma błędu mogę to wprowadzić do programu.

Dziękuję za wskazówki, pozdrawiam.
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 19:43 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
Ale chyba coś nie tak: zobacz co sie dzieje dla \alpha=0
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 20:08 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Dla tych kilku wartości tangens kąta, które dają 0, wystarczą proste operacje arytmetyczne. Podczas pisania programu poradzę sobie z tym badając wartość kąta na początku funkcji. Jutro sprawdzę, czy to działa.

Czy można to rozwiązać matematycznie dochodząc do lepszego wzoru? Może trzeba podejść do problemu inaczej?
Góra
Mężczyzna Offline
PostNapisane: 3 kwi 2016, o 20:39 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
Wzór jest zły
Góra
Mężczyzna Offline
PostNapisane: 4 kwi 2016, o 08:03 
Użytkownik

Posty: 7
Lokalizacja: Lublin
Zmieniłem podejście...

\begin{cases} \sin  \alpha =  \frac{x_B}{r}  \\  x_B^{2} +  y_B^{2} =  r^{2}    \end{cases}

Co daje...

\begin{cases} x_B = \sin \alpha  \cdot  r \\ y_B = r ( 1 - \sin \alpha) \end{cases}

...czyli...

\begin{cases} x_B = \sin \alpha  \cdot  r + x_A\\ y_B = r ( 1 - \sin \alpha) + y_A \end{cases}

Czy teraz się zgadza?
Góra
Mężczyzna Offline
PostNapisane: 4 kwi 2016, o 08:12 
Użytkownik

Posty: 15828
Lokalizacja: Bydgoszcz
y_B jest żle. Może byś jednak zerknął na ten prostokąt?
Góra
Utwórz nowy temat Odpowiedz w temacie  [ Posty: 15 ] 


 Zobacz podobne tematy
 Tytuł tematu   Autor   Odpowiedzi 
 współrzędne punktu - zadanie 9  lbn  3
 odległość punktu od prostej - zadanie 33  niekumata9  1
 Znajdź punkt A' symetryczny do punktu  Kuset  1
 obliczanie wersora  zyraffa  1
 Obliczanie współrzędnych punktu - zadanie 2  drra  2
 
Atom [Regulamin Forum] [Instrukcja LaTeX-a] [Poradnik] [F.A.Q.] [Reklama] [Kontakt]
Copyright (C) Karpatka.pl