www.mooseframework.org
ImageMeshGenerator.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "GeneratedMeshGenerator.h"
13 #include "FileRangeBuilder.h"
14 #include "libmesh/replicated_mesh.h"
15 
20 {
21 public:
23 
25 
26  std::unique_ptr<MeshBase> generate() override;
27 
28 protected:
32  void buildMesh2D(const std::string & filename, MeshBase & mesh);
33 
37  void buildMesh3D(const std::vector<std::string> & filenames, MeshBase & mesh);
38 
43  void GetPixelInfo(std::string filename, int & xpixels, int & ypixels);
44 
49  const bool _scale_to_one;
50 
60 };
static InputParameters validParams()
const bool _scale_to_one
If true, forces the maximum width (height) of the mesh to be 1.0 while retaining the original aspect ...
void GetPixelInfo(std::string filename, int &xpixels, int &ypixels)
Process a single image with the &#39;file&#39; command to find out the number of pixels in the x and y direct...
const std::vector< std::string > & filenames()
MeshBase & mesh
Generates a line, square, or cube mesh with uniformly spaced or biased elements.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
void buildMesh3D(const std::vector< std::string > &filenames, MeshBase &mesh)
generate() calls this helper function to build 3D ImageMeshes from stacks of images.
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
ImageMeshGenerator(const InputParameters &parameters)
void buildMesh2D(const std::string &filename, MeshBase &mesh)
generate() calls this helper function to build 2D ImageMeshes.
To be called in the validParams functions of classes that need to operate on ranges of files...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Real & _cells_per_pixel
A number <= 1.0 which determines the number of cells in the mesh per pixel in each direction...
const InputParameters & parameters() const
Get the parameters of the object.
A 2D GeneratedMesh where xmin, xmax, etc.