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

◆ get_particle_velocity()

std::optional< double > MayaFlux::Nodes::Network::PhysicsOperator::get_particle_velocity ( size_t  global_index) const

Get velocity magnitude for specific particle.

Parameters
global_indexParticle index across all collections

Definition at line 241 of file PhysicsOperator.cpp.

242{
243 size_t current_offset = 0;
244
245 for (const auto& group : m_collections) {
246 size_t group_size = group.physics_state.size();
247
248 if (global_index < current_offset + group_size) {
249 size_t local_index = global_index - current_offset;
250 return static_cast<double>(glm::length(group.physics_state[local_index].velocity));
251 }
252
253 current_offset += group_size;
254 }
255
256 return std::nullopt;
257}
std::vector< CollectionGroup > m_collections

References m_collections.