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 284 of file PhysicsOperator.cpp.

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

References m_collections.