Witam. Staram się napisać prymitywną grę w 3d i mam mały problem z kamerą. Nie bardzo wiem jak wyznaczyć ogólne równanie prostej w układzie x, y, z. Otóż posiadam dwa punkty A i B oraz wektor AB łatwa sprawa :) I teraz jak wyznaczyć tą prostą? Pytanie może i łatwe ale nie mogę sobie z tym poradzić. W układzie XY to pestka. Szukałem trochę na necie ale nie mogłem nic znaleźć ;/ Proszę o pomoc z góry dziękuje :)
ogólny wzór na prostą w przestrzeni o dowolnym wymiarze to:
gdzie to wektor wskazujący na punkt na prostej, a wektory i to stałe parametry opisujące prostą.
Na wiki można to znaleźć.
Prościej wygląda równanie w postaci parametrycznej. f(t) = A + t(B-A)
Punkty A i B leżą na prostej, t jest liczbą rzeczywistą.
Może przedstawie mój problem graficznie. Muszę znaleźć punkt C. Posiadam punkty A i B.
sqrt(x*x+y*y+z*z)
?
Strasznie w tym paincie bazgrolisz :I
Może to Ci pomorze
Ax + By + Cz = D
(x - x1)/(x2 - x1) = (y - y1)/(y2 - y1) = (z - z1)/(z2 - z1)
Często przedstawia się to w formie:
(x - x1)/a = (y - y1)/b = (z - z1)/c = t
x = at + x1
y = bt + y1
z = ct + z1
Pisane z pociągu, w domu mogę rozpisać się bardziej. Mam nadzieję, że choć troszkę pomogłem.
http://bit.ly/Tfe3Ck pierwsze 3 linki opisują krok po kroku.
Okej dzięki wielkie wszystkim za pomoc już to troszeczkę ogarniam :)
SharpShooter napisał(a):
Witam. Staram się napisać prymitywną grę w 3d i mam mały problem z kamerą. Nie bardzo wiem jak wyznaczyć ogólne równanie prostej w układzie x, y, z. Otóż posiadam dwa punkty A i B oraz wektor AB łatwa sprawa :) I teraz jak wyznaczyć tą prostą? Pytanie może i łatwe ale nie mogę sobie z tym poradzić. W układzie XY to pestka. Szukałem trochę na necie ale nie mogłem nic znaleźć ;/ Proszę o pomoc z góry dziękuje :)
masz: A, B i u = AB, zatem prosta to:
r = r0 + u.t, t - dowolna liczba
r0 = A, albo B.
r = (x,y,z); oczywista.