|
iMSTK
Interactive Medical Simulation Toolkit
|
Defines the behaviour to allow a tool to burn a pbdObject. This is done by storing state on the mesh that defines the damage from burning and the visual change caused by cauterization. These are currently normalized from [0,1] where 1 is the maximum damage. Once the damage reaches 1, the cell is deleted on the next visual update. More...
#include <imstkBurner.h>


Classes | |
| struct | Burnable |
Public Member Functions | |
| Burner (const std::string &name="BurnerPbdObjectBehavior") | |
| void | init () override |
| Initialize the component, called at a later time after all component construction is complete. | |
| bool | getState () const |
| Get state of burner (on/off ~ true/false) | |
| void | visualUpdate (const double &dt) override |
| bool | getDidBurn () const |
| std::shared_ptr< PbdObject > | getBurnerObject () const |
| Get the object doing the burning. | |
| std::shared_ptr< AnalyticalGeometry > | getBurnerGeometry () const |
| Get/Set the geometry doing the burning, if it's not set the collision geoemtry of the burner object will be used. | |
| void | setBurnerGeometry (std::shared_ptr< AnalyticalGeometry > geom) |
| double | getOnTime () const |
| Get/Set the ontime from [0,1] where 1 is on fully and any value less than 1 is the percent of on time (e.g. 0.8 = 80% on time). This is used to represent the percent of damage that goes into cutting vs cauterizing. | |
| void | setOnTime (const double onTime) |
| double | getWattage () const |
| Get/Set the wattage. This value is generally between 50-80 watts for L-hook monopolar devices. The setter also sets the nomalized wattage, which is the input divided by 100. | |
| void | setWattage (const double wattage) |
| void | start () |
| Start/Stop the burn by changing the onState flag. | |
| void | stop () |
| void | addObject (std::shared_ptr< PbdObject > obj) |
| Add burnable object to list of things that can be burned. | |
Public Member Functions inherited from imstk::Behaviour< UpdateInfo > | |
| virtual void | update (const UpdateInfo &imstkNotUsed(updateData)) |
| virtual void | visualUpdate (const UpdateInfo &imstkNotUsed(updateData)) |
| void | initTaskGraphEdges () |
| Setup the edges/connections of the TaskGraph. | |
| std::shared_ptr< TaskGraph > | getTaskGraph () const |
Public Member Functions inherited from imstk::Component | |
| const std::string & | getName () const |
| void | setName (const std::string &name) |
| std::weak_ptr< Entity > | getEntity () const |
| Get parent entity. | |
| void | initialize () |
| Initialize the component, called at a later time after all component construction is complete. | |
Protected Member Functions | |
| void | handle () |
| void | handleBurnable (int burnableId) |
| void | applyBurn (int burnableId, int cellId) |
| void | monopolarToolModel (double &burnDmg, double &burnVis, double dt) |
| void | initGraphEdges (std::shared_ptr< TaskNode > source, std::shared_ptr< TaskNode > sink) override |
Protected Member Functions inherited from imstk::Behaviour< UpdateInfo > | |
| Behaviour (const std::string &name="Behaviour") | |
| Behaviour (const bool useTaskGraph, const std::string &name="Behaviour") | |
| virtual void | initGraphEdges (std::shared_ptr< TaskNode > imstkNotUsed(source), std::shared_ptr< TaskNode > imstkNotUsed(sink)) |
| Setup the edges/connections of the TaskGraph. More... | |
Protected Member Functions inherited from imstk::Component | |
| Component (const std::string &name="Component") | |
Protected Attributes | |
| std::shared_ptr< PbdObject > | m_burningObj |
| PbdObject doing the burning. | |
| std::shared_ptr< AnalyticalGeometry > | m_burnGeometry |
| Geometry doing the burning. | |
| std::shared_ptr< TaskNode > | m_burningHandleNode |
| std::vector< Burnable > | m_burnableObjects |
| Set of burnable objects, currently set by user during setup. | |
| double | m_onTime = 0.5 |
| On time for energy burning tool from [0,1]. | |
| double | m_wattage = 50 |
| Tool wattage. | |
| double | m_normWattage = 0.5 |
| Tool wattage / 100. | |
| double | m_q = 4.0 |
| Fitting parameter that modifies how quickly tissue gets burned. | |
| bool | m_onState = false |
| flag if tool is currently on or not | |
| bool | m_burnOnce = false |
| Rate limit the burning to once per phyics cycle. | |
| bool | m_didBurnLastPhysics = false |
| Buffer for providing information to the user. | |
Protected Attributes inherited from imstk::Behaviour< UpdateInfo > | |
| std::shared_ptr< TaskGraph > | m_taskGraph = nullptr |
Protected Attributes inherited from imstk::Component | |
| std::string | m_name |
| std::weak_ptr< Entity > | m_entity |
| Parent entity this component exists on. | |
Defines the behaviour to allow a tool to burn a pbdObject. This is done by storing state on the mesh that defines the damage from burning and the visual change caused by cauterization. These are currently normalized from [0,1] where 1 is the maximum damage. Once the damage reaches 1, the cell is deleted on the next visual update.
Definition at line 28 of file imstkBurner.h.
1.8.13