PeriDyno 1.0.0
Loading...
Searching...
No Matches
VolumeBoolean.cpp
Go to the documentation of this file.
1#include "VolumeBoolean.h"
2
4
5namespace dyno
6{
8
9 template<typename TDataType>
11 : Volume<TDataType>()
12 {
13 auto fmm = std::make_shared<FastMarchingMethodGPU<TDataType>>();
14 this->inA()->connect(fmm->inLevelSetA());
15 this->inB()->connect(fmm->inLevelSetB());
16 fmm->outLevelSet()->connect(this->outLevelSet());
17
18 this->resetPipeline()->pushModule(fmm);
19
20 this->varSpacing()->attach(std::make_shared<FCallBackFunc>(
21 [=]() {
22 fmm->varSpacing()->setValue(this->varSpacing()->getValue());
23 }));
24
25 this->varBoolType()->attach(std::make_shared<FCallBackFunc>(
26 [=]() {
27 fmm->varBoolType()->setCurrentKey(this->varBoolType()->currentKey());
28 }));
29 }
30
31 template<typename TDataType>
35
36 template<typename TDataType>
38 {
39 return "Volume";
40 }
41
42 template<typename TDataType>
44 {
46
47 this->stateLevelSet()->setDataPtr(this->outLevelSet()->constDataPtr());
48 }
49
51}
#define DEFINE_CLASS(name)
Definition Object.h:140
#define IMPLEMENT_TCLASS(name, T1)
Definition Object.h:103
virtual void resetStates()
Definition Node.cpp:214
std::shared_ptr< Pipeline > resetPipeline()
Definition Node.cpp:302
void resetStates() override
std::string getNodeType() override
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25