94 votes

Bonne bibliothèque de géométrie en python?

Je suis à la recherche d'un bon et bien développé de la bibliothèque pour les manipulations géométriques et des évaluations en python, comme:

  • évaluer l'intersection entre les deux lignes en 2D et en 3D (si présent)
  • évaluer le point d'intersection entre un plan et une droite, ou sur la ligne d'intersection entre les deux plans
  • évaluer la distance minimale entre une droite et un point
  • trouver le orthogonale à un plan passant par un point
  • faire pivoter, de traduire, d'un miroir, d'un ensemble de points
  • trouver l'angle dièdre définie par quatre points

J'ai un recueil de livre pour toutes ces opérations, et j'ai pu mettre en œuvre, mais malheureusement je n'ai pas le temps, je voudrais donc profiter d'une bibliothèque qui n'. La plupart des opérations sont utiles pour les jeux, donc je suis sûr que certaines de ces fonctionnalités peuvent être trouvés dans les jeux de bibliothèques, mais je préfère ne pas inclure les fonctionnalités (comme des images) je n'ai pas besoin.

Toutes les suggestions ? Merci

34voto

John Y Points 5475

Peut-être jetez un oeil à SymPy .

27voto

Coady Points 11374

Shapely est une jolie enveloppe en python entourant la célèbre bibliothèque GEOS .

14voto

Dov Grobgeld Points 1673

J'ai trouvé que pyeuclid était un très bon paquet mathématique euclidien à usage général. Bien que la bibliothèque puisse ne pas contenir exactement les problèmes que vous avez mentionnés, son infrastructure est suffisamment performante pour pouvoir les écrire facilement par vous-même.

10voto

Agnel Kurian Points 14231

6voto

BenjaminGolder Points 668

Je veux vraiment une bonne réponse à cette question, et ceux ci-dessus m'a laissé insatisfait. Cependant, je viens de tomber sur pythonocc qui ressemble beaucoup, en dehors de l'absence de bonne docs et encore quelques soucis avec l'installation (pas encore pypi compatible). La dernière mise à jour a été de 4 jours (le 19 juin 2011). Il s'enroule OpenCascade qui a une tonne de la géométrie et de la fonctionnalité de modélisation. À partir de la pythonocc site web:

pythonOCC est un logiciel 3D de CAO/CAE/PLM cadre de développement pour le langage de programmation Python. Il offre des fonctionnalités telles que des fonctions avancées de topologiques et géométriques des opérations d'échange de données (STEP, IGES, STL import/export), 2D et 3D, de maillage, de corps rigide de la simulation, de la modélisation paramétrique.

[EDIT: j'ai téléchargé pythonocc et a commencé à travailler à travers les exemples]

Je crois qu'il peut effectuer toutes les tâches mentionnées, mais je l'ai trouvé pas intuitif à utiliser. Il est presque entièrement créée à partir de SWIG wrappers, et comme un résultat, l'introspection des commandes devient difficile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X