prosta przechodzaca przez 2 punkty

0

Witam
Jesli mam dwa punkty P1(x1,y1), P2(x2,y2) to w jaki sposob moge znaleźć równanie prostej przechodzącej przez nie.
Rownanie powinno być postaci px+qy+r=0.

0

Chyba pomyliłeś działy. Tutaj zadaje się pytania na temat problematyki z programowania, a nie matematyki.

0

Podstaw sobie współrzędne obu punktów do wzoru y=ax+b. Wyjdzie ci układ równań, który należy obliczyć, wtedy wyjdzie a oraz b.

0

W tablicach matematycznych masz jeden wzór...

0

y=ax+b - pisalem ze musze miec w postaci px+qy+r=0

w tablicach matematycznych- <ort>na pewno</ort> nie w moich :)

jak ktos ma wzor to prosze zeby podal

0

y = ax + b
ax - y + b = 0 / *(-q)
px + qy + r = 0
p = -aq
r = -bq

Czy to tak trudno zamienić?

0

Po prostu zrób bardzo grubą prostą ;-) :d [cya]

0

Endrju: [ browar] :-D

0

Napiszę to, zanim odeślą Cie do podstawówki, albo zaleja się fundowanym sobie na wzajem piwem.

y-y0=(dy/dx)*(x-x0) ... (to na prawdę podstawówka)

y=((y2-y1)/(x2-x1))*(x-x1)+y1...

Potrafisz sam to przyrównać do zera, prawda? Poradzisz sobie? Na pewno? Na wszelki wypadek:

((y2-y1)/(x2-x1))*(x-x1)+y1-y=0 ...

A w po rozwinięciu masz postac kanoniczną:

((y2-y1)/(x2-x1))*x-y+y1-((y2-y1)/(x2-x1))*x1=0

Tylko i tak musisz zadbać aby x2-x1 nie było równe 0, bo inaczej div by 0 i mogiła.

0

Dzieki wszystkim za trafne (i te mniej) odpowiedzi
Chyba nikt nie zauwazyl, ale y=ax+b nie dziala jesli mam punkty
P1(1,1), P2(1,2) - czyli prosta rownolegla do osi Y
no ale juz ten problem rozwiazalem...

0

Hmmm... Tak jak napisałem nieazleżnie od wzoru potrzebujesz mieć nachylenie prostej w stosunku do osi x. Czyli dy/dx=tg(alpha). Masz tablice, bo się wygadałeś (wyżej), więc wiesz że dla 90 i 270 stopni (czyli gdy dx=0) tg dąży do nieskończoności. Chyba, że będziesz sprawdzał który z przyrostów jest wiekszy dx, czy dy i odpowiednio gdy dy>dx będziesz rysował prostą wg wzoru x= ay+b.

// Do postu poniżej:
Cofam i przepraszam.

0

Tak jak napisałem nieazleżnie od wzoru potrzebujesz mieć nachylenie prostej w stosunku do osi x.

Arctus Tangens.
Najlepiej funkcją ArcTan2 z unitu math. (tylko uwaga! zwraca wynik w radianach)

//

         a := X1 - X2;
         b := Y1 - Y2;
         katNachylenia := ArcTan2(a,b)*57,2958;

właśnie tak.. następnie :

for i := 1 to dlugoscLinii do begin
       x := x + sin(katNachylenia)*i;
       y := y - cos(katNachylenia)*i;
       rysujPunkt(x,y);
end;
0
<font color="green"> Arctus Tangens. Najlepiej funkcją ArcTan2 z unitu math. (tylko uwaga! zwraca wynik w radianach)</span>

Ludzie [glowa] [glowa] jaki arcus tangens.... - weźcie pomyślcie zanim coś napiszenie [glowa] [glowa]

Proponuje zablokować topic...

PS: aha.. no chyba ze tak Andrew.. wtedy cofam - nie wiem tylko, czy wtedy wyjdzie ładna prosta jeśli w postaci parametrycznej z sinusem itd... trzeba by to sprawdzić

0

Jak dla mnie, to może nie podstawówka - gimnazjum (nie w każdej podstawówce uczą o układach równań), ale jak byś do mojej klasy chodził i zadał na matmie takie pytanie, to byś wyleciał ze szkoły z kosą z matmy na koniec roku... Nie wspominając o tym, co zrobiłby z tobą mój fizyk... Po prostu pytanie na poziomie... No comment... i doleję trochę [browar], ale pić nie będę, bo nie lubię...

0

LUDZIEEEEEEEEEEEEE
Czy nikt nie zauwazyl ze pisalem "problem rozwiazany"?
niektorych to zaskoczy, ale wiem jak liczyc uklady rownan
chodzilo mi tylo o to ze y=ax+b nie obejmuje przypadku kiedy prosta jest rownolegla do osi Y (no i jeszcze miala byc postac px+qy+r=0), ale problem ROZWIĄZAŁEM

chyba skasuje ten temat...

1 użytkowników online, w tym zalogowanych: 0, gości: 1