code: def boolean_union(self, mesh, inplace=False):
          
          bfilter = vtk.vtkBooleanOperationPolyDataFilter()
          bfilter.SetOperationToUnion()
          bfilter.SetInputData(1, mesh)
          bfilter.SetInputData(0, self)
          bfilter.ReorientDifferenceCellsOff()
          bfilter.Update()
  
          mesh = _get_output(bfilter)
          if inplace:
              self.overwrite(mesh)
          else:
              return mesh
docs: Combines two meshes and attempts to create a manifold mesh.
  
          Parameters
          ----------
          mesh : vtki.PolyData
              The mesh to perform a union against.
  
          inplace : bool, optional
              Updates mesh in-place while returning nothing.
  
          Returns
          -------
          union : vtki.PolyData
              The union mesh when inplace=False.