iMSTK
Interactive Medical Simulation Toolkit
imstkLevelSetDeformableObject.h
1 /*
2 ** This file is part of the Interactive Medical Simulation Toolkit (iMSTK)
3 ** iMSTK is distributed under the Apache License, Version 2.0.
4 ** See accompanying NOTICE for details.
5 */
6 
7 #pragma once
8 
9 #include "imstkDynamicObject.h"
10 #include "imstkMacros.h"
11 
12 namespace imstk
13 {
14 class LevelSetModel;
15 
23 {
24 public:
25  LevelSetDeformableObject(const std::string& name = "LevelSetDeformableObject") : DynamicObject(name) { }
26  ~LevelSetDeformableObject() override = default;
27 
28  IMSTK_TYPE_NAME(LevelSetDeformableObject)
29 
30 
31  std::shared_ptr<LevelSetModel> getLevelSetModel();
34 
38  bool initialize() override;
39 
40 protected:
41  std::shared_ptr<LevelSetModel> m_levelSetModel = nullptr;
42 };
43 } // namespace imstk
bool initialize() override
Initialize the LevelSet scene object.
Base class for scene objects that move and/or deform.
Compound Geometry.
Base class for scene objects that move and/or deform under position based dynamics formulation...
std::shared_ptr< LevelSetModel > m_levelSetModel
LevelSet mathematical model.
std::shared_ptr< LevelSetModel > getLevelSetModel()
Get the LevelSet model of the object.