MayaFlux 0.2.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 239 of file PhysicsOperator.cpp.

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

References m_collections.