suche Funktion Schnittpunkt Gerade mit Ebene aus 3 Punkten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Was genau willst du ? Wissen ob sich eine Ebene und eine Gerade Schneiden? Das sollte mit simpelster MAthematik gehen, dafür braucht es keine Bibliothek. Oder willst Du die Formal die alle Geraden darstellt welche sich in einem bestimmten Punkt mit einer Ebene schneiden? Oder willst du alles Geraden die sich überhaupt bilden lassen die sich mit einer Ebene schneiden? Bei den letzteren kommst du mit 1000 übrigens nicht weit. Das dürften jeweils unendlich viele sein.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • Ich hätte auch etwas Angst davor, dafür eine Bibliothek zu benutzen - weil ich eine bestimmte Vorstellung von Programmierern habe, die sowas in Bibliotheken packen. Ebene in Normalenform, Geradengleichung einsetzen und nach Parameter auflösen, Parameter in Geradengleichung, fertig. Warum sollte man das von Hand machen? Dafür hast du doch einen Computer.
    Multigrad - 360°-Produktfotografie für den Mac
  • Du hast deine Gleichung für die Gerade, du hast deine Gleichung für die Ebene und das sollte schön zum Lösen sein. Wenn's hakt, dann zeig doch mal deine beiden Gleichungen her. So bissl Vektorrechnen macht ja Spaß!!!

    Bzw., Du musst aus deiner Ebene mit 3 Punkten die Normalform bekommen. Dann hast Du die Ebene in Normalform und die Geradengleichung. Zwei Gleichungen, zwei Unbekannte : Vektor X und die Steigung der Gerade m. Dann setzt Du den Vektor X gleich und erhältst die Steigung m. Die setzt Du dann in die Geradengleichung ein und schon hast Du deinen Punkt.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von manoh ()

  • Ich habe folgende Aufgabenstellung:
    Zwei Zylinder, die ich mit Paul Bourkes "Rotation about an arbitrary axis" realisiere. Die Achsen der Zylinder treffen sich im 3D-Raum und die Zylinder überschneiden sich. Diese Überschneidung möchte ich verhindern, indem ich die zusammen treffenden Ebenen ermittle und eine dritte symmetrischeEbene berechne. Jetzt brauche ich den Durchstosspunkt der radialen Achsparallelen mit dieser Ebene. Auf dem Papier kann ich das lösen, wie ich den Rechengang in eine Funktion packen kann, keine Ahnung :(

    ???
    How come I can't see me in my mirror ?
  • SoOo ganz kann ich dir jetzt nicht folgen. Also zu erkenne, ob sich zwei Zylinder schneiden, sollte einfach zu berechnen sein. Bzw. Scene Kit kann das z.B. ja schon von haus aus. Aber eigentlich egal. Wenn Du das schon auf Papier gelöst hast, dann sollte sich das doch umsetzten lassen. Wenn eigentlich nur + - * / vorkommt, dann sollte das ned so schwer sein. Zeig mal die Lösung her.
  • Aufgabe gelöst :)

    To whom it concerns:

    Quellcode

    1. void linePlaneIntercept(float C[3], float M[3], float N[3], float E[3], float X[3] )
    2. {
    3. /* line: X = C + my * M
    4. plane: N dot (X - E) = 0
    5. line of two points : M = P1 - P0
    6. (C + my * M) dot N
    7. my * M = E dot N - C dot N
    8. my = (E dot N - C dot N) / M dot N
    9. */
    10. float dotEN, dotCN, dotMN;
    11. dotEN = dotProduct(E, N);
    12. dotCN = dotProduct(C, N);
    13. dotMN = dotProduct(M, N);
    14. float my = (dotEN - dotCN) / dotMN;
    15. for (unsigned kk = 0; kk < 3; kk++) X[kk] = C[kk] + my * M[kk];
    16. }
    Alles anzeigen
    How come I can't see me in my mirror ?