MayaFlux 0.5.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 285 of file PhysicsOperator.cpp.

286{
287 size_t current_offset = 0;
288
289 for (const auto& group : m_collections) {
290 size_t group_size = group.physics_state.size();
291
292 if (global_index < current_offset + group_size) {
293 size_t local_index = global_index - current_offset;
294 return static_cast<double>(glm::length(group.physics_state[local_index].velocity));
295 }
296
297 current_offset += group_size;
298 }
299
300 return std::nullopt;
301}
std::vector< CollectionGroup > m_collections

References m_collections.