Hallo zusammen,
Ich habe mir vorgenommen ein CAD-Programm zu programmieren um Punkte miteinander zu verbinden und glastische Berechnungen zu machen wie z.b. in AutoCAD (Schnitt zweier Geraden, verschiedene fangen modis z.b. lotrecht).
Des weiteren möchte ich noch punktwolken Dateien einlesen und diese punktwolken darstellen.
Gibt es denn in Python schon Bibliotheken für solche Vorhaben wie CAD und punktwolken?
Wie würdet ihr generell vorgehen?
Viele Grüße
CAD Programm / Punktwolken
Pyntcloud is a Python 3 library for working with 3D point clouds leveraging the power of the Python scientific stack.
You can access most of pyntcloud's functionality from its core class: PyntCloud.
With PyntCloud you can perform complex 3D processing operations with minimum lines of code. For example you can:
Load a PLY point cloud from disk.
Add 3 new scalar fields by converting RGB to HSV.
Build a grid of voxels from the point cloud.
Build a new point cloud keeping only the nearest point to each occupied voxel center.
Save the new point cloud in numpy's NPZ format.
With the following concise code:
from pyntcloud import PyntCloud
cloud = PyntCloud.from_file("some_file.ply")
cloud.add_scalar_field("hsv")
voxelgrid_id = cloud.add_structure("voxelgrid", n_x=32, n_y=32, n_z=32)
new_cloud = cloud.get_sample("voxelgrid_nearest", voxelgrid_id=voxelgrid_id, as_PyntCloud=True)
new_cloud.to_file("out_file.npz")
You can access most of pyntcloud's functionality from its core class: PyntCloud.
With PyntCloud you can perform complex 3D processing operations with minimum lines of code. For example you can:
Load a PLY point cloud from disk.
Add 3 new scalar fields by converting RGB to HSV.
Build a grid of voxels from the point cloud.
Build a new point cloud keeping only the nearest point to each occupied voxel center.
Save the new point cloud in numpy's NPZ format.
With the following concise code:
from pyntcloud import PyntCloud
cloud = PyntCloud.from_file("some_file.ply")
cloud.add_scalar_field("hsv")
voxelgrid_id = cloud.add_structure("voxelgrid", n_x=32, n_y=32, n_z=32)
new_cloud = cloud.get_sample("voxelgrid_nearest", voxelgrid_id=voxelgrid_id, as_PyntCloud=True)
new_cloud.to_file("out_file.npz")