Creating galleries from Linestring

[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_490/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 Geopackage

[2]:
gdg = gpd.read_file('../../../../data/Galeries .gpkg')
gdg.head()
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
/tmp/ipykernel_490/161153513.py in <module>
----> 1 gdg = gpd.read_file('../../../../data/Galeries .gpkg')
      2 gdg.head()

NameError: name 'gpd' is not defined

Definition of the radius of the tubes of the galleries

[3]:
gdg['radius']=2.5
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
/tmp/ipykernel_490/1432673844.py in <module>
----> 1 gdg['radius']=2.5

NameError: name 'gdg' is not defined

For each line of the geodataframe, a loop returns the coordinates of the gallery points. A spline is created for each group of points. This spline is then transformed into a tube.

[4]:
galeries = []

for idx, row in gdg.iterrows():
    vertices = np.array(row['geometry'].coords)
    line = pv.Spline(vertices)
    galeries.append(line.tube(radius = row['radius']))

b = pv.MultiBlock(galeries)

b.plot()
#b.save('./tmp_files/galeries.vtm',binary=False)
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
/tmp/ipykernel_490/3681313263.py in <module>
      1 galeries = []
      2
----> 3 for idx, row in gdg.iterrows():
      4     vertices = np.array(row['geometry'].coords)
      5     line = pv.Spline(vertices)

NameError: name 'gdg' is not defined

A vtm file is exported in order to be able to better visualize in the Paraview software