Saya mencari perpustakaan yang bagus dan berkembang dengan baik untuk manipulasi dan evaluasi geometris dengan python, seperti:
- mengevaluasi perpotongan antara dua garis dalam 2D dan 3D (jika ada)
- mengevaluasi titik perpotongan antara bidang dan garis, atau garis perpotongan antara dua bidang
- mengevaluasi jarak minimum antara garis dan titik
- temukan ortonormal ke pesawat yang melewati suatu titik
- memutar, menerjemahkan, mencerminkan sekumpulan poin
- temukan sudut dihedral yang ditentukan oleh empat titik
Saya memiliki buku ringkasan untuk semua operasi ini, dan saya dapat mengimplementasikannya tetapi sayangnya saya tidak punya waktu, jadi saya akan menikmati perpustakaan yang melakukannya. Sebagian besar operasi berguna untuk tujuan bermain game, jadi saya yakin beberapa fungsi ini dapat ditemukan di perpustakaan game, tetapi saya lebih suka tidak menyertakan fungsi (seperti grafik) yang tidak saya perlukan.
Ada saran? Terima kasih
Jawaban:
Mungkin lihat SymPy .
sumber
Shapely adalah pembungkus python yang bagus di sekitar perpustakaan GEOS yang populer .
sumber
Saya menemukan pyeuclid menjadi paket matematika euclidean umum sederhana yang bagus. Meskipun perpustakaan mungkin tidak berisi persis masalah yang Anda sebutkan, infrastrukturnya cukup baik untuk membuatnya mudah untuk menulisnya sendiri.
sumber
CGAL juga memiliki binding Python .
sumber
geometry-simple memiliki kelas Point Line Plane Movement dalam ~ 300 baris, hanya menggunakan numpy; Lihatlah.
sumber
Saya benar-benar ingin jawaban yang bagus untuk pertanyaan ini, dan pertanyaan di atas membuat saya tidak puas. Namun, saya baru saja menemukan pythonocc yang terlihat bagus, selain kekurangan dokumen yang bagus dan masih mengalami masalah dengan instalasi (belum kompatibel dengan pypi). Pembaruan terakhir adalah 4 hari yang lalu (19 Juni 2011). Ini membungkus OpenCascade yang memiliki banyak fungsi geometri dan pemodelan. Dari situs pythonocc:
[EDIT: Sekarang saya telah mengunduh pythonocc dan mulai mengerjakan beberapa contoh]
Saya percaya itu dapat melakukan semua tugas yang disebutkan, tetapi saya merasa tidak intuitif untuk digunakan. Itu dibuat hampir seluruhnya dari pembungkus SWIG, dan akibatnya, introspeksi perintah menjadi sulit.
sumber
Anda mungkin tertarik dengan modul Python SpaceFuncs dari proyek OpenOpt, http://openopt.org
SpaceFuncs adalah alat untuk pemodelan geometris 2D, 3D, N-dimensi dengan kemungkinan penghitungan parametrized, pengoptimalan numerik, dan penyelesaian sistem persamaan geometris.
sumber
Python Wild Magic adalah kode yang dibungkus SWIG. Namun ini adalah perpustakaan game, tetapi Anda dapat memanipulasi file perpustakaan SWIG untuk mengecualikan hal-hal grafik yang tidak diinginkan dari Python API.
sumber