PeriDyno 1.0.0
Loading...
Searching...
No Matches
ParticleSystem.h
Go to the documentation of this file.
1#pragma once
2#include "Node.h"
3
4#include "Topology/PointSet.h"
5
6namespace dyno
7{
12 template<typename TDataType>
13 class ParticleSystem : public Node
14 {
15 public:
16 typedef typename TDataType::Real Real;
17 typedef typename TDataType::Coord Coord;
18
20 ~ParticleSystem() override;
21
22 std::string getNodeType() override;
23
24 public:
28 DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Particle position");
29
33 DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Particle velocity");
34
39
40 protected:
41 void resetStates() override;
42
43 void postUpdateStates() override;
44 };
45}
DEF_INSTANCE_STATE(PointSet< TDataType >, PointSet, "Topology")
A topology.
void resetStates() override
TDataType::Real Real
std::string getNodeType() override
TDataType::Coord Coord
void postUpdateStates() override
DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Particle velocity")
Particle velocity.
DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Particle position")
Particle position.
A PointSet stores the coordinates for a set of independent points.
Definition PointSet.h:8
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25