16 #include "libmesh/bounding_box.h" 20 #ifdef LIBMESH_HAVE_VTK 24 #include "libmesh/ignore_warnings.h" 33 #ifndef MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS 34 #define MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS 0 37 #if __has_include("vtk_nlohmannjson.h") 38 #include "vtk_nlohmannjson.h" 39 #if !VTK_MODULE_USE_EXTERNAL_vtknlohmannjson 40 #undef MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS 41 #define MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS 1 42 #endif // !VTK_MODULE_USE_EXTERNAL_vtknlohmannjson 43 #endif // __has_include("vtk_nlohmannjson.h") 44 #else // __has_include 45 #error "Could not auto-detect whether VTK built with external nlohmann json. \ 46 Define MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS=1 if built with vendored nlohmann \ 47 , otherwise define MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS=0" 48 #endif // __has_include 49 #endif // MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS 51 #if MOOSE_VTK_UNDEF_NLOHMANNJSON_HEADER_GUARDS && !defined(MOOSE_VTK_NLOHMANN_INCLUDED) 52 #undef INCLUDE_NLOHMANN_JSON_FWD_HPP_ 53 #define MOOSE_VTK_NLOHMANN_INCLUDED 56 #include "vtkSmartPointer.h" 57 #include "vtkPNGReader.h" 58 #include "vtkTIFFReader.h" 59 #include "vtkImageData.h" 60 #include "vtkStringArray.h" 61 #include "vtkImageThreshold.h" 62 #include "vtkImageNormalize.h" 63 #include "vtkImageCast.h" 64 #include "vtkImageShiftScale.h" 65 #include "vtkImageMagnitude.h" 66 #include "vtkImageFlip.h" 74 #include "libmesh/restore_warnings.h" 128 #ifdef LIBMESH_HAVE_VTK 165 #ifdef LIBMESH_HAVE_VTK libMesh::Point _physical_dims
Physical dimensions of image.
A helper class for re-directing output streams to Console output objects form MooseObjects.
unsigned int _component
Component to extract.
vtkAlgorithmOutput * _algorithm
VTK-6 seems to work better in terms of "algorithm outputs" rather than vtkImageData pointers...
virtual void setupImageSampler(MooseMesh &mesh)
Perform initialization of image data.
vtkSmartPointer< vtkImageReader2 > _image
Complete image data.
ConsoleStream _is_console
Create a console stream object for this helper class.
libMesh::BoundingBox _bounding_box
Bounding box for testing points.
vtkImageData * _data
Complete image data.
std::vector< double > _voxel
Physical pixel size.
vtkSmartPointer< vtkImageMagnitude > _magnitude_filter
Pointer to the magnitude filter.
void vtkShiftAndScale()
Apply image re-scaling using the vtkImageShiftAndRescale object.
vtkSmartPointer< vtkImageShiftScale > _shift_scale_filter
Pointer to the shift and scaling filter.
const InputParameters & _is_pars
Parameters for interface.
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
static InputParameters validParams()
Constructor.
ImageSampler(const InputParameters ¶meters)
void vtkThreshold()
Perform thresholding.
vtkSmartPointer< vtkStringArray > _files
List of file names to extract data.
libMesh::Point _origin
Origin of image.
A helper class for reading and sampling images using VTK.
To be called in the validParams functions of classes that need to operate on ranges of files...
std::vector< int > _dims
Pixel dimension of image.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void vtkMagnitude()
Convert the image to greyscale.
vtkSmartPointer< vtkImageThreshold > _image_threshold
Pointer to thresholding filter.
virtual libMesh::Real sample(const libMesh::Point &p) const
Return the pixel value for the given point.
std::array< bool, 3 > _flip
image flip