NAVIÉ
Documentation : Effex : Developer API : Classes : Nodes : : public FXBase

### FXParticleGroup

FXParticleGroup

The Particle Group holds all particle subgroups and manages them.

#### FXParticle* GetParticle (long index, ParticleFactoryTypes subgroup)

Returns
FXParticle with the given index in the given subgroup. Returns nullptr if particle does not exist.
Parameters
long index:
The particle index. Should be between 0 and GetParticleCount
ParticleFactoryTypes subgroup:
The subgroup type to retrieve the particle from

#### FXParticle* AddParticle (ParticleFactoryTypes subgroup)

Returns
FXParticle that has been added. Returns nullptr if something went wrong.
Parameters
ParticleFactoryTypes subgroup:
The subgroup type to add the particle to

#### long GetParticleCount (ParticleFactoryTypes subgroup)

Returns
The amount of particles available in the subgroup
Parameters
ParticleFactoryTypes subgroup:
The subgroup type to check the particle count for

#### void UpdateBounds (void)

Whenever you change a particle group (for example if you change a position of a particle or if you add a particle) you should call UpdateBounds.

#### void FindNeighbors (const ParticleFactoryTypes subgroup, const vector3d& global_position, const double radius, std::vector& neighbors, const int cpu = 0)

Returns
none
Parameters
const ParticleFactoryTypes:
The subgroup type
const vector3d& global_position:
The physical positon to find particle neighbors for
const double radius:
The maximum distance around the physical position to search for neighboring particles. The radius is given in physical space units.
std::vector& neighbors:
Filled with the found neighboring particles
const int cpu:
The cpu thread for the search. Pass if you are in a multiprocessor context.

#### void SetDirtySearch (const ParticleFactoryTypes subgroup)

If you change particles' position in the given subgroup of this particle group you should update the internal search algorithm by calling SetDirtySearch
Parameters
const ParticleFactoryTypes:
The subgroup type to update the searcher for.

#### bool IsCached (const ParticleFactoryTypes subgroup)

Returns
true if the given subgroup is cached. This is not the same as FXBase::IsCached.
Parameters
const ParticleFactoryTypes:
The subgroup type to check the cached state for.