mehrdimensionale Listen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Herzdame2608
User
Beiträge: 62
Registriert: Donnerstag 18. Juni 2020, 12:04

Hallo meine Lieben,

wenn ich meinen Code durchlaufen lassen, erhalte ich das Ergebnis unter dem folgenden Link:
]https://drive.google.com/file/d/1BtPcOi ... sp=sharing

Der erste Teil der jeweiligen Listen ist die Ebenengleichung und der zweite Teil sind Koordinaten von Punkten.
Ich möchte für alle 16 Listen die Abstände zueinander (also der Punkte, nicht der Ebenengleichung) berechnen.
Wie sieht denn dann ein Code aus, der nur den zweiten Teil der 16 Listen verwendet?
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Bitte poste Text als Text und nicht als Bilder.
Du hast keine mehrdimensionale Listen, sondern eine Liste mit jeweils Zwei-Tupeln, die numpy-Arrays enthalten.
Bei Tupeln benutzt man am besten Tuple-Unpacking:

Code: Alles auswählen

for ebene, punkte in liste_mit_ebenen_und_punkten:
    tu_irgendwas_mit_den_punkten(punkte)
Herzdame2608
User
Beiträge: 62
Registriert: Donnerstag 18. Juni 2020, 12:04

Ah okay, vielen Dank.
Wenn ich jetzt den Abstand mithilfe der Ebenengleichungen berechnen möchte und dann die zwei Ebenen, die parallel zueinander sind UND den geringsten Abstand zueinander haben, wie könnte ich das machen?
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Was hast Du denn versucht? Wo kommst Du nicht weiter?
Wie sehen denn die mathematischen Formeln aus, die Du brauchst?
Herzdame2608
User
Beiträge: 62
Registriert: Donnerstag 18. Juni 2020, 12:04

Code: Alles auswählen

from sympy import Plane, Point3D

a = Plane(Point3D(1,4,6), normal_vector=(2, 4, 6))

b = Plane(Point3D(3,1,3), normal_vector=(4, 8, 12))

a.is_parallel(b)
True
Das war mein erster Gedanke. Dafür bräuchte ich für normal_vector die ersten drei Elemente aus dem jeweils ersten Tuple und für den Point kann ich ja einfach irgendeinen Punkt als dem jeweils zweiten Tuple nehmen. oder? Wenn ich dann weiß, ob die beiden Ebenen parallel sind, kann ich mit Hilfe der HNF den Abstand bestimmen. Ich hab einfach keine Ahnung wie ich das in Python schreiben soll...
Antworten