Shafts
[1]:
import numpy as np
import pyvista as pv
import geopandas as gpd
from geometron.geom_to_vtk import gdf_to_ug
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
/tmp/ipykernel_625/3909925717.py in <module>
1 import numpy as np
----> 2 import pyvista as pv
3 import geopandas as gpd
4 from geometron.geom_to_vtk import gdf_to_ug
ModuleNotFoundError: No module named 'pyvista'
Importation of the geopackage as a dat frame
[2]:
gds = gpd.read_file('../../../../data/Shaft.gpkg')
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_625/2788533962.py in <module>
----> 1 gds = gpd.read_file('../../../../data/Shaft.gpkg')
NameError: name 'gpd' is not defined
Definition of the radius of the tube of the shaft
[3]:
gds['radius']=5
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_625/1871189254.py in <module>
----> 1 gds['radius']=5
NameError: name 'gds' is not defined
Determine the unique data with a unique name
[4]:
names = gds['Nom'].unique()
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_625/4028751097.py in <module>
----> 1 names = gds['Nom'].unique()
NameError: name 'gds' is not defined
For each unique name, a loop returns the coordinates of the shafts points which has this unique name. A spline is created for each group of points. This spline is then transformed into a tube.
[5]:
shafts = []
for i in names:
radius = gds.query(f'Nom=="{i}"').radius.mean()
vertices = np.array([(i.x, i.y, i.z) for i in gds.query(f'Nom=="{i}"').geometry.values])
line = pv.Spline(vertices)
shafts.append(line.tube(radius=radius))
shafts = pv.MultiBlock(shafts)
shafts.plot()
#shafts.save('./tmp_files/galeries.vtm',binary=False)
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_625/1908995339.py in <module>
1 shafts = []
----> 2 for i in names:
3 radius = gds.query(f'Nom=="{i}"').radius.mean()
4 vertices = np.array([(i.x, i.y, i.z) for i in gds.query(f'Nom=="{i}"').geometry.values])
5 line = pv.Spline(vertices)
NameError: name 'names' is not defined
[ ]: