13 #include <openvdb/openvdb.h> 20 #include "boost/lexical_cast.hpp" 47 static std::shared_ptr<MF::GB::GeometryBuildFromSTL>
New(
const std::shared_ptr<MF::Database::ConfigData>& ConfigData_Ptr,
const std::shared_ptr<MF::GU::LatticeParametersD3Q19>& LatticeParameters_Ptr) {
48 auto GeometryBuildFromSTL_Ptr = std::make_shared<MF::GB::GeometryBuildFromSTL>();
49 GeometryBuildFromSTL_Ptr->m_ConfigData_Ptr = ConfigData_Ptr;
50 GeometryBuildFromSTL_Ptr->m_LatticeParameters_Ptr = LatticeParameters_Ptr;
51 GeometryBuildFromSTL_Ptr->m_voxelSize = ConfigData_Ptr->getCaseFloatParam(
"GeometryParams.VoxelSize");
52 return GeometryBuildFromSTL_Ptr;
69 std::shared_ptr<MF::Database::ConfigData> m_ConfigData_Ptr;
70 std::shared_ptr<MF::GU::LatticeParametersD3Q19> m_LatticeParameters_Ptr;
71 std::shared_ptr<MF::GB::AutoSettingNode> m_AutoSettingNode_Ptr;
72 std::shared_ptr<MF::Database::GridVDB<openvdb::Int32Grid>> m_PropagationGrid_Ptr;
73 std::shared_ptr<MF::GU::PropagationD3Q19> m_PropagationTest_Ptr;
74 std::shared_ptr<MF::GB::StlMesher> m_STLMesher_Ptr;
75 double m_voxelSize {};
78 void SubtractsSTLGridsFromGeometryGrid(
bool verbose =
false);
79 void AddInnerWallToGrid(
const openvdb::FloatGrid::Ptr & VDBGrid_Ptr,
double ThinWallValue);
80 void NewPropagationTest();
void Clean()
Delete some unnecessary objects.
static std::shared_ptr< MF::GB::GeometryBuildFromSTL > New(const std::shared_ptr< MF::Database::ConfigData > &ConfigData_Ptr, const std::shared_ptr< MF::GU::LatticeParametersD3Q19 > &LatticeParameters_Ptr)
void AutomaticBoundaryFind()
Boundary nodes automatic finding.
void FluidAddFromThreadFile()
Adds fluid from thread.cfg file.
void ReadGrid(bool verbose=false)
Reads grid from .stl file.
GeometryBuildFromSTL()=default
void SolidAddFromThreadFile()
Adds solid from thread.cfg file.
openvdb::Int32Grid::Ptr m_VDBPropagationGrid_Ptr
Shared pointer to the VDB propagation grid of int value.
void WriteGeometryGridToVtiFile()
Writes geometry Int32 geometry grid to .vti file.
std::shared_ptr< MF::Database::GridVDB< openvdb::Int64Grid > > m_MFGrid_GeometryGrid_Ptr
Shared pointer to the MFGrid geometry grid of Int64 value.
openvdb::FloatGrid::Ptr m_STLGeometryGrid_Ptr
Shared pointer to the VDB geometry grid of float value - a volumetric mesh created from the ...
void WriteGeometryGridToVDBFile()
Writes geometry Int32 geometry grid to .vti file.
openvdb::Int64Grid::Ptr m_VDBInt64GeometryGrid_Ptr
Shared pointer to the VDB geometry grid of Int64 value.
void BoundaryAddFromThreadFile()
Adds boundary from thread.cfg file.
~GeometryBuildFromSTL()=default