Springen naar inhoud

Hoe de afstand bepalen in 3d ruimte van een snijpunt


  • Dit onderwerp is gesloten Dit onderwerp is gesloten

#1

Fuwisu

    Fuwisu


  • >25 berichten
  • 32 berichten
  • Gebruiker

Geplaatst op 16 april 2008 - 18:41

Goededag, voor onze 3D engine moeten wij het hidden line algoritme implementeren (http://en.wikipedia....e_determination). Dit houd in dat je een rechte hebt (zijde van een driehoek) en dat je voor alle overige zijden van het object gaat nagaan of het snijdt. Als het bvb de rechterhoek van een driehoek afsnijdt (dus 2 snijpunten op de 2 driehoekszijden) dan mag deze niet getoond worden.
Nu ben ik er al achtergekomen hoe na te gaan of 2 rechten in 2D elkaar snijden, dankzij de vergelijking van de 2 rechten aan elkaar gelijk te stellen. Dus ik heb de x en de y coordinaat van het snijpunt. Ik kan ook nagaan of deze op beide rechten ligt (en niet erbuiten) en zodoende dat deze zou snijden in 2D.
MAAR....de z-coordinaat wordt achterwege gelaten. Dus als je een driehoek hebt kan de rechte ervoor of erachter liggen.
Nu zou ik graag willen nagaan welk van de 2 het dichtste bijligt.

Bvb. We hebben 4 punten (Px,Py), (Qx,Qy) (de eerste rechte), (Ax,Ay) en (Bx,By) (de tweede rechte). Het snijpunt is 5, 6.
We zijn erachter gekomen dat deze op de 2 rechten ligt. Nu is de vraag of dat punt op rechte PQ verder ligt dan dat op AB.
Aangezien de coordinaten een window to viewport en perspectieftransformatie achter de rug hebben heeft de z-coordinaat zijn oorspronkelijke waarde niet meer, maar hier kan ik eventueel nog achterkomen (van P, Q, A en B weliswaar). Maar wat is de z-waarde van het snijpunt op de 2 rechten?

Dank bij voorbaat

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

TD

    TD


  • >5k berichten
  • 24049 berichten
  • VIP

Geplaatst op 16 april 2008 - 18:55

Het is niet nodig je bericht meerdere keren te plaatsen.
Ik zal de topic in het huiswerkforum openlaten, ga daar verder.
"Malgré moi, l'infini me tourmente." (Alfred de Musset)





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures