Ich versuche, eine erweiterte Raycaster zu erstellen. Wie würde ich eine Funktion schreiben, die zwei grids (image here) basierend auf 3 Punkten erstellen würde? Ich möchte, dass die Ausgabe zwei Arrays ist, die mit {x: 0, y: 0, z: 0} -Objekten für jeden im Bild gezeigten Schnittpunkt gefüllt sind. Hoffentlich ist das nicht zu schwer zu verstehen. Der Grund, warum ich das möchte, ist, dass ich aus jedem Pixel auf dem Bildschirm einen Raycast machen kann.Erstellen Sie eine zwei parallele Ebenen mit drei Punkten (Javascript)
Antwort
Lassen Sie uns Vektor c = CB, Vektor a = AB. Sie können die zweite Basisvektor für Flugzeuge als
d = c X a (cross product)
get Einheit Basisvektoren
ua = Normalized(a) = a/Length(a)
ud = Normalized(d)
und bauen erhalten Gitter (Zellgrße ist Asize x DSIZE) Punkte
P[i,j] = B + ua * i * ASize + ud * j * DSize
for the first plane
Q[i,j] = C + ua * i * ASize + ud * j * DSize
for the second plane
Können Sie den letzten Codeblock genauer erklären? In JavaScript ist P (i, j) zwei Schleifen ineinander? –
Ja, 2d Array mit Gitterscheitelpunkten könnte in zwei Schleifen gefüllt sein ('für i ... für j .... P [i, j] = ...') – MBo
Wenn ich wollte, dass die Ausgabe ein Array von {x: 0, y: 0, z: 0}, was würde ich anstelle von 'B + ua * i * ASize + ud * j * DSize' setzen –
- 1. Javascript drei Ebenen kollabierbares Menü
- 2. Wie berechnen Ebenengleichung mit drei Punkten und zwei Vektoren?
- 3. Erstellen Sie eine Spirale zwischen zwei kartesischen Punkten in MATLAB
- 4. Select Drei Ebenen tief
- 5. Drei Ebenen von Routing
- 6. ListView auf drei Ebenen mit dynamischen Daten
- 7. Erstellen Sie eine parallele "for" -Schleife?
- 8. Ein #define in C mit drei Punkten
- 9. Dynamisch erstellen drei Ebenen tief geschachtelte Formulare in Rails
- 10. Erstellen von drei Ebenen verschachtelter Wörterbuch in C#
- 11. Firebase - Erstellen von zwei Ebenen von Benutzern
- 12. drei Ebenen der Pan Geste Recogniser Verwirrung
- 13. Mischen Sie zwei MultiIndex Ebenen in Pandas
- 14. Zwei parallele Liniensegmente Kreuzung
- 15. Text Überlauf mit drei Punkten auf der linken Seite
- 16. drei Ebenen SELECT-Anweisung in LINQ?
- 17. Drei Ebenen verschachtelte Formulare in Schienen mit acces_nested_attributes_for
- 18. Erstellen Sie eine Liste mit zwei Ajaxaufrufen
- 19. Automatisieren Sie eine Betriebssystemprüfung, drei Installationsprogramme und zwei Registrierungsanfügungen.
- 20. Drei-Ebenen-Architektur: Alle Daten und Validierungen
- 21. Wordpress-Portfolio - zwei Ebenen Sortierung?
- 22. Wie berechnet man den Eckpunkt einer Parabel mit drei Punkten
- 23. eine Linie zwischen zwei Punkten in gnuplot
- 24. WPF autofill Textblock mit drei Punkten innerhalb Listenansicht
- 25. Leaflet: Erstellen Sie Ebenen aus Geojson "Eigenschaften"?
- 26. Erstellen Sie eine Linie mit zwei CGPoints SpriteKit Swift
- 27. Zeichnen Sie eine parallele Linie
- 28. ersetzt drei Wagenrücklauf mit zwei
- 29. Zwei parallele TransactionScope mit jeweils eigener Verbindung
- 30. Position zwischen zwei Punkten?
dotproduct und Kreuzprodukt sind deine Freunde. – CascadeCoder