PeriDyno 1.0.0
Loading...
Searching...
No Matches
VolumeOctree.h
Go to the documentation of this file.
1#pragma once
2#include "Node.h"
3
4#include "VoxelOctree.h"
5
6namespace dyno
7{
8 template<typename TDataType>
9 class VolumeOctree : public Node
10 {
11 public:
12 typedef typename TDataType::Real Real;
13 typedef typename TDataType::Coord Coord;
14
16 ~VolumeOctree() override;
17
18 virtual void updateVolume() {};
19
20 virtual Coord lowerBound() { return Coord(0); }
21 virtual Coord upperBound() { return Coord(0); }
22
23 virtual Real dx() { return Real(0); }
24
25 std::string getNodeType() override;
26 public:
27 DEF_VAR(bool, Inverted, false, "");
28
29 DEF_VAR(int, LevelNumber, 3, "Number of Adaptive Levels");
30
31 DEF_INSTANCE_STATE(VoxelOctree<TDataType>, SDFTopology, "SDF Voxel Octree");
32
35 };
36}
TDataType::Real Real
DArray< Coord > m_object
virtual Real dx()
~VolumeOctree() override
DEF_INSTANCE_STATE(VoxelOctree< TDataType >, SDFTopology, "SDF Voxel Octree")
virtual void updateVolume()
TDataType::Coord Coord
std::string getNodeType() override
virtual Coord upperBound()
DEF_VAR(int, LevelNumber, 3, "Number of Adaptive Levels")
DEF_VAR(bool, Inverted, false, "")
virtual Coord lowerBound()
DArray< Coord > m_normal
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25
Array< T, DeviceType::GPU > DArray
Definition Array.inl:89