MayaFlux 1.0.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 287 of file PhysicsOperator.cpp.

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

References m_collections.