MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ ParticleNetwork()

MayaFlux::Nodes::Network::ParticleNetwork::ParticleNetwork ( size_t  num_particles,
const glm::vec3 &  bounds_min = glm::vec3(-10.0F),
const glm::vec3 &  bounds_max = glm::vec3(10.0F),
InitializationMode  init_mode = InitializationMode::RANDOM_VOLUME 
)

Create particle network with spatial bounds.

Parameters
num_particlesNumber of particles
bounds_minMinimum spatial extent
bounds_maxMaximum spatial extent
init_modeInitialization distribution

Definition at line 13 of file ParticleNetwork.cpp.

18 : m_bounds_min(bounds_min)
19 , m_bounds_max(bounds_max)
20 , m_init_mode(init_mode)
21{
24
25 m_particles.reserve(num_particles);
26
27 for (size_t i = 0; i < num_particles; ++i) {
28 ParticleNode particle;
29 particle.index = i;
30 particle.point = std::make_shared<GpuSync::PointNode>();
31 particle.point->set_in_network(true);
32 particle.mass = 1.0F;
33 particle.velocity = glm::vec3(0.0F);
34 particle.acceleration = glm::vec3(0.0F);
35 particle.force = glm::vec3(0.0F);
36
37 m_particles.push_back(std::move(particle));
38 }
39
41 "Created ParticleNetwork with {} particles, bounds [{}, {}] to [{}, {}], mode={}",
42 num_particles,
43 bounds_min.x, bounds_min.y, bounds_min.z,
44 bounds_max.x, bounds_max.y, bounds_max.z,
45 static_cast<int>(init_mode));
46}
#define MF_INFO(comp, ctx,...)
void set_topology(Topology topology)
Set the network's topology.
@ GRAPHICS_BIND
State available for visualization (read-only)
@ INDEPENDENT
No connections, nodes process independently.
void set_output_mode(OutputMode mode)
Set the network's output routing mode.
@ NodeProcessing
Node graph processing (Nodes::NodeGraphManager)
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.

References MayaFlux::Nodes::Network::ParticleNetwork::ParticleNode::acceleration, MayaFlux::Nodes::Network::ParticleNetwork::ParticleNode::force, MayaFlux::Nodes::Network::NodeNetwork::GRAPHICS_BIND, MayaFlux::Nodes::Network::NodeNetwork::INDEPENDENT, MayaFlux::Nodes::Network::ParticleNetwork::ParticleNode::index, m_particles, MayaFlux::Nodes::Network::ParticleNetwork::ParticleNode::mass, MF_INFO, MayaFlux::Journal::NodeProcessing, MayaFlux::Journal::Nodes, MayaFlux::Nodes::Network::ParticleNetwork::ParticleNode::point, MayaFlux::Nodes::Network::NodeNetwork::set_output_mode(), MayaFlux::Nodes::Network::NodeNetwork::set_topology(), and MayaFlux::Nodes::Network::ParticleNetwork::ParticleNode::velocity.

+ Here is the call graph for this function: