Skip to content

Commit f0f9b02

Browse files
committed
feature: add progress bar to STL importing when grid is large >5M cells
1 parent 2b5c191 commit f0f9b02

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

wakis/gridFIT3D.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -358,15 +358,20 @@ def _prepare_stl_dicts(self):
358358
def _mark_cells_in_stl(self):
359359
# Obtain masks with grid cells inside each stl solid
360360
stl_tolerance = np.min([self.dx, self.dy, self.dz])*self.stl_tol
361+
progress_bar = False
362+
if self.Nx*self.Ny*self.Nz > 5e6 and self.verbose:
363+
progress_bar = True
361364
for key in self.stl_solids.keys():
362365

363366
surf = self.read_stl(key)
364367

365368
# mark cells in stl [True == in stl, False == out stl]
366369
try:
367-
select = self.grid.select_enclosed_points(surf, tolerance=stl_tolerance)
370+
select = self.grid.select_enclosed_points(surf, tolerance=stl_tolerance,
371+
progress_bar=progress_bar)
368372
except Exception:
369-
select = self.grid.select_enclosed_points(surf, tolerance=stl_tolerance, check_surface=False)
373+
select = self.grid.select_enclosed_points(surf, tolerance=stl_tolerance,
374+
check_surface=False, progress_bar=progress_bar)
370375
if self.verbose > 1:
371376
print(f'[!] Warning: stl solid {key} may have issues with closed surfaces. Consider checking the STL file.')
372377

0 commit comments

Comments
 (0)