Commit 5e0c04d2840332d9d2d850f99bfae4e38b645a60
1 parent
bb9de130
Exists in
master
and in
67 other branches
FIX: separation of pieces to surface_process wasn't working in mac
Showing
1 changed file
with
8 additions
and
11 deletions
Show diff stats
invesalius/data/surface.py
... | ... | @@ -447,13 +447,13 @@ class SurfaceManager(): |
447 | 447 | else: |
448 | 448 | flip_image = True |
449 | 449 | |
450 | - n_processors = 1 # multiprocessing.cpu_count() | |
450 | + n_processors = multiprocessing.cpu_count() | |
451 | 451 | |
452 | 452 | pipe_in, pipe_out = multiprocessing.Pipe() |
453 | - o_piece = 2 | |
453 | + o_piece = 1 | |
454 | 454 | piece_size = 40 |
455 | 455 | |
456 | - n_pieces = round(mask.matrix.shape[0] / piece_size + 0.5, 0) | |
456 | + n_pieces = int(round(mask.matrix.shape[0] / piece_size + 0.5, 0)) | |
457 | 457 | print "n_pieces", n_pieces, mask.matrix.shape |
458 | 458 | |
459 | 459 | q_in = multiprocessing.Queue() |
... | ... | @@ -494,16 +494,13 @@ class SurfaceManager(): |
494 | 494 | |
495 | 495 | polydata = polydata_append.GetOutput() |
496 | 496 | |
497 | - # Orient normals from inside to outside | |
498 | - normals = vtk.vtkPolyDataNormals() | |
499 | - normals.SetInput(polydata) | |
500 | - normals.SetFeatureAngle(80) | |
501 | - normals.AutoOrientNormalsOn() | |
502 | - normals.GetOutput().ReleaseDataFlagOn() | |
497 | + clean = vtk.vtkCleanPolyData() | |
498 | + clean.SetInput(polydata) | |
499 | + clean.PointMergingOn() | |
503 | 500 | |
504 | - # Improve performance | |
501 | + # Improve performance | |
505 | 502 | stripper = vtk.vtkStripper() |
506 | - stripper.SetInput(normals.GetOutput()) | |
503 | + stripper.SetInput(clean.GetOutput()) | |
507 | 504 | stripper.PassThroughCellIdsOn() |
508 | 505 | stripper.PassThroughPointIdsOn() |
509 | 506 | ... | ... |