Ich habe mich spontan dazu entschlossen, einen Raytracer in Python zu schreiben. Ich habe als erste Literatur eine Projektbeschreibung zu Rate gezogen.
Ich bin mir nun nicht sicher, wie man am tatsächlich geschicktesten eine Gerade implementiert. Die oben beschriebene Variante finde ich eigentlich etwas unglücklich, weil es mich zu sehr an die Multiplikation eines Skalars mit einem Vektor erinnert, was meiner Meinung nach im Code irreführend ist.Eine Strahl-Klasse, Operatoren hat geschrieben:Damit die Strahl-Klasse verwendbar ist, brauchen wir eine Möglichkeit, um für einen bestimmten Geradenparameter einen Ortsvektor zu erhalten. Es bietet sich an, analog zur Skalierung von Vektoren dafür den Multiplikationsoperator zu missbrauchen [..]
Meine erste Überlegung war, __getitem__ zu überschreiben, um die Ortsvektoren an den einzelnen Stellen via g[x] zu bestimmen.
Welche der beiden Möglichkeiten gefällt euch besser bzw. welche findet ihr intuitiver zu benutzen? Oder habt ihr einen schöneren Vorschlag?
Danke im voraus!