Ich suche eine gute und gut entwickelte Bibliothek für geometrische Manipulationen und Auswertungen in Python, wie:
- Bewerten Sie den Schnittpunkt zwischen zwei Linien in 2D und 3D (falls vorhanden).
- Bewerten Sie den Schnittpunkt zwischen einer Ebene und einer Linie oder die Schnittlinie zwischen zwei Ebenen
- Bewerten Sie den Mindestabstand zwischen einer Linie und einem Punkt
- Finden Sie das Orthonormale zu einer Ebene, die durch einen Punkt verläuft
- drehen, übersetzen, eine Reihe von Punkten spiegeln
- Finden Sie den Diederwinkel, der durch vier Punkte definiert ist
Ich habe ein Kompendium für all diese Operationen und könnte es implementieren, aber leider habe ich keine Zeit, so dass ich mich über eine Bibliothek freuen würde, die dies tut. Die meisten Vorgänge sind für Spielzwecke nützlich, daher bin ich sicher, dass einige dieser Funktionen in Spielbibliotheken enthalten sind, aber ich würde es vorziehen, keine Funktionen (wie Grafiken) einzuschließen, die ich nicht benötige.
Irgendwelche Vorschläge ? Vielen Dank
Antworten:
Vielleicht werfen Sie einen Blick auf SymPy .
quelle
Shapely ist ein netter Python-Wrapper um die beliebte GEOS- Bibliothek.
quelle
Ich fand, dass Pyeuclid ein großartiges einfaches euklidisches Allzweck-Mathematikpaket ist. Obwohl die Bibliothek möglicherweise nicht genau die von Ihnen erwähnten Probleme enthält, ist ihre Infrastruktur gut genug, um es einfach zu machen, diese selbst zu schreiben.
quelle
CGAL hat auch Python-Bindungen .
quelle
Geometrie-einfach hat Klassen Punkt Linie Ebene Bewegung in ~ 300 Linien, wobei nur numpy verwendet wird; Schau mal.
quelle
Ich möchte wirklich eine gute Antwort auf diese Frage, und die oben genannten haben mich unzufrieden gemacht. Ich bin jedoch gerade auf Pythonocc gestoßen, das großartig aussieht, abgesehen davon, dass es keine guten Dokumente gibt und ich immer noch Probleme mit der Installation habe (noch nicht pypi-kompatibel). Das letzte Update war vor 4 Tagen (19. Juni 2011). Es umfasst OpenCascade mit einer Vielzahl von Geometrie- und Modellierungsfunktionen. Von der Pythonocc-Website:
[BEARBEITEN: Ich habe jetzt Pythonocc heruntergeladen und einige Beispiele durchgearbeitet]
Ich glaube, dass es alle genannten Aufgaben ausführen kann, aber ich fand es nicht intuitiv zu bedienen. Es wird fast ausschließlich aus SWIG-Wrappern erstellt, und infolgedessen wird die Selbstbeobachtung der Befehle schwierig.
quelle
Möglicherweise interessieren Sie sich für das Python-Modul SpaceFuncs aus dem OpenOpt-Projekt. http://openopt.org
SpaceFuncs ist ein Werkzeug für die geometrische 2D-, 3D- und N-dimensionale Modellierung mit Möglichkeiten für parametrisierte Berechnungen, numerische Optimierung und Lösungssysteme für geometrische Gleichungen
quelle
Python Wild Magic ist ein weiterer SWIG-Code. Es ist jedoch eine Spielebibliothek, aber Sie können die SWIG-Bibliotheksdatei so bearbeiten, dass unerwünschte Grafiken von der Python-API ausgeschlossen werden.
quelle