Gazebo Rendering

API Reference

7.4.2
BaseParticleEmitter< T > Class Template Reference

A base implementation of the ParticleEmitter class. More...

#include <BaseParticleEmitter.hh>

Public Member Functions

virtual ~BaseParticleEmitter ()
 Destructor. More...
 
virtual gz::math::Color ColorEnd () const override
 Get the end color of the particles. More...
 
virtual std::string ColorRangeImage () const override
 Get the path to the color image used as an affector. More...
 
virtual gz::math::Color ColorStart () const override
 Get the starting color of the particles. More...
 
virtual double Duration () const override
 Get the number of seconds the emitter is active. A value of 0 means infinite duration. More...
 
virtual gz::math::Vector3d EmitterSize () const override
 Get the size of the emitter where the particles are sampled. More...
 
virtual bool Emitting () const override
 Is the particle emitter enabled? More...
 
virtual void Init () override
 
virtual double Lifetime () const override
 Get the number of seconds each particle will ’live’ for before being destroyed. More...
 
virtual MaterialPtr Material () const override
 Get the material which all particles in the emitter will use. More...
 
virtual double MaxVelocity () const override
 Get the maximum velocity each particle is emitted (m/s). More...
 
virtual double MinVelocity () const override
 Get the minimum velocity each particle is emitted (m/s). More...
 
virtual float ParticleScatterRatio () const override
 Get the particle scatter ratio. More...
 
virtual gz::math::Vector3d ParticleSize () const override
 Get the particle dimensions (width, height, depth). More...
 
virtual void PreRender () override
 Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender. More...
 
virtual double Rate () const override
 Get how many particles per second should be emitted. More...
 
virtual void Reset ()
 Reset the particle emitter visual state. More...
 
virtual double ScaleRate () const override
 Get the amount by which to scale the particles in both x and y direction per second. Default value is 1. More...
 
virtual void SetColorRange (const gz::math::Color &_colorStart, const gz::math::Color &_colorEnd) override
 Sets a color for all particle emitted. The actual color will be interpolated between these two colors Color::White is the default color for the particles unless a specific function is used. Note that this function overrides the particle colors set with SetColorRangeImage(). More...
 
virtual void SetColorRangeImage (const std::string &_image) override
 Set the path to the color image used as an affector. This affector modifies the color of particles in flight. The colors are taken from a specified image file. The range of color values begins from the left side of the image and move to the right over the lifetime of the particle, therefore only the horizontal dimension of the image is used. Note that this function overrides the particle colors set with SetColorRange(). More...
 
virtual void SetDuration (double _duration) override
 Set the number of seconds the emitter is active. A value of 0 means infinite duration. Default value is 0. More...
 
virtual void SetEmitterSize (const gz::math::Vector3d &_size) override
 Set the size of the emitter where the particles are sampled. Default value is (1, 1, 1). Note that the interpretation of the emitter area varies depending on the emmiter type: More...
 
virtual void SetEmitting (bool _enable) override
 This is used to turn on or off particle emission. Default value is false. More...
 
virtual void SetLifetime (double _lifetime) override
 Set the number of seconds each particle will ’live’ for before being destroyed. Default value is 5. More...
 
virtual void SetMaterial (const MaterialPtr &_material) override
 Sets the material which all particles in the emitter will use. More...
 
virtual void SetParticleScatterRatio (float _ratio) override
 Set the particle scatter ratio. More...
 
virtual void SetParticleSize (const gz::math::Vector3d &_size) override
 Set the particle dimensions (width, height, depth). Default value is {1, 1, 1}. More...
 
virtual void SetRate (double _rate) override
 Set how many particles per second should be emitted. Default value is 10. More...
 
virtual void SetScaleRate (double _scaleRate) override
 Set the amount by which to scale the particles in both x and y direction per second. More...
 
virtual void SetType (const EmitterType _type) override
 Set the emitter type. Default value is EM_POINT. More...
 
virtual void SetVelocityRange (double _minVelocity, double _maxVelocity) override
 Set a velocity range and each particle is emitted with a random velocity within this range (m/s). Default value is 1 for both velocities. More...
 
virtual EmitterType Type () const override
 Get the emitter type. More...
 
- Public Member Functions inherited from ParticleEmitter
virtual ~ParticleEmitter ()
 Destructor. More...
 
- Public Member Functions inherited from Visual
virtual ~Visual ()
 Destructor. More...
 
virtual void AddGeometry (GeometryPtr _geometry)=0
 Add the given geometry to this visual. If the given node is already attached, no work will be done. More...
 
virtual void AddVisibilityFlags (uint32_t _flags)=0
 Add visibility flags. More...
 
virtual gz::math::AxisAlignedBox BoundingBox () const =0
 Get the bounding box in world frame coordinates. More...
 
virtual VisualPtr Clone (const std::string &_name, NodePtr _newParent) const =0
 Clone the visual (and its children) with a new name. More...
 
virtual GeometryPtr GeometryByIndex (unsigned int _index) const =0
 Get geometry at given index. If no geometry exists at given index, NULL will be returned. More...
 
virtual unsigned int GeometryCount () const =0
 Get the number of geometries attached to this visual. More...
 
virtual bool HasGeometry (ConstGeometryPtr _geometry) const =0
 Determine if given geometry is attached to this visual. More...
 
virtual gz::math::AxisAlignedBox LocalBoundingBox () const =0
 Get the local bounding box of the visual. More...
 
virtual void RemoveGeometries ()=0
 Remove all attached geometries from this visual. More...
 
virtual GeometryPtr RemoveGeometry (GeometryPtr _geometry)=0
 Remove the given geometry from this visual. If the given node is not a child of this visual, no work will be done. More...
 
virtual GeometryPtr RemoveGeometryByIndex (unsigned int _index)=0
 Remove the geometry at the given index from this visual. If the specified node is not attached this visual, no work will be done. More...
 
virtual void RemoveVisibilityFlags (uint32_t _flags)=0
 Remove visibility flags. More...
 
virtual void SetChildMaterial (MaterialPtr _material, bool _unique=true)=0
 Set the material for all attached visuals only. More...
 
virtual void SetGeometryMaterial (MaterialPtr _material, bool _unique=true)=0
 Set the material for all attached geometries only. More...
 
virtual void SetMaterial (const std::string &_name, bool _unique=true)=0
 Set the material for all attached visuals and geometries. The specified material will be retrieved from Scene::Material using the given material name. If no material is registered with the given name, no work will be done. More...
 
virtual void SetMaterial (MaterialPtr _material, bool _unique=true)=0
 Set the material for all attached visuals and geometries. More...
 
virtual void SetVisibilityFlags (uint32_t _flags)=0
 Set visibility flags. More...
 
virtual void SetVisible (bool _visible)=0
 Specify if this visual is visible. More...
 
virtual void SetWireframe (bool _show)=0
 Enable or disable wireframe. More...
 
virtual uint32_t VisibilityFlags () const =0
 Get visibility flags. More...
 
virtual bool Wireframe () const =0
 Get whether wireframe is enabled for this visual. More...
 
- Public Member Functions inherited from Node
virtual ~Node ()
 Destructor. More...
 
virtual void AddChild (NodePtr _child)=0
 Add the given node to this node. If the given node is already a child, no work will be done. More...
 
virtual NodePtr ChildById (unsigned int _id) const =0
 Get node with given ID. If no child exists with given ID, NULL will be returned. More...
 
virtual NodePtr ChildByIndex (unsigned int _index) const =0
 Get node at given index. If no child exists at given index, NULL will be returned. More...
 
virtual NodePtr ChildByName (const std::string &_name) const =0
 Get node with given name. If no child exists with given name, NULL will be returned. More...
 
virtual unsigned int ChildCount () const =0
 Get number of child nodes. More...
 
virtual bool HasChild (ConstNodePtr _child) const =0
 Determine if given node is an attached child. More...
 
virtual bool HasChildId (unsigned int _id) const =0
 Determine if node with given ID is an attached child. More...
 
virtual bool HasChildName (const std::string &_name) const =0
 Determine if node with given name is an attached child. More...
 
virtual bool HasParent () const =0
 Determine if this Node is attached to another Node. More...
 
virtual bool HasUserData (const std::string &_key) const =0
 Check if node has custom data. More...
 
virtual bool InheritScale () const =0
 Determine if this node inherits scale from this parent. More...
 
virtual math::Pose3d InitialLocalPose () const =0
 Get the initial local pose. More...
 
virtual math::Pose3d LocalPose () const =0
 Get the local pose. More...
 
virtual math::Vector3d LocalPosition () const =0
 Get the local position. More...
 
virtual math::Quaterniond LocalRotation () const =0
 Get the local rotation. More...
 
virtual math::Vector3d LocalScale () const =0
 Get the local scale. More...
 
virtual math::Vector3d Origin () const =0
 Get position of origin. More...
 
virtual NodePtr Parent () const =0
 Get the parent Node. More...
 
virtual NodePtr RemoveChild (NodePtr _child)=0
 Remove (detach) the given node from this node. If the given node is not a child of this node, no work will be done. More...
 
virtual NodePtr RemoveChildById (unsigned int _id)=0
 Remove (detach) the node with the given ID from this node. If the specified node is not a child of this node, no work will be done. More...
 
virtual NodePtr RemoveChildByIndex (unsigned int _index)=0
 Remove (detach) the node at the given index from this node. If the specified node is not a child of this node, no work will be done. More...
 
virtual NodePtr RemoveChildByName (const std::string &_name)=0
 Remove (detach) the node with the given name from this node. If the specified node is not a child of this node, no work will be done. More...
 
virtual void RemoveChildren ()=0
 Remove all child nodes from this node This detaches all the child nodes but does not destroy them. More...
 
virtual void RemoveParent ()=0
 Detach this Node from its parent. If this Node does not have a parent, no work will be done. More...
 
virtual void Scale (const math::Vector3d &_scale)=0
 Scale the current scale by the given scalars. More...
 
virtual void Scale (double _scale)=0
 Scale the current scale by the given scalar. The given scalar will be assigned to the x, y, and z coordinates. More...
 
virtual void Scale (double _x, double _y, double _z)=0
 Scale the current scale by the given scalars. More...
 
virtual void SetInheritScale (bool _inherit)=0
 Specify if this node inherits scale from its parent. More...
 
virtual void SetLocalPose (const math::Pose3d &_pose)=0
 Set the local pose. More...
 
virtual void SetLocalPosition (const math::Vector3d &_position)=0
 Set the local position. More...
 
virtual void SetLocalPosition (double _x, double _y, double _z)=0
 Set the local position. More...
 
virtual void SetLocalRotation (const math::Quaterniond &_rotation)=0
 Set the local rotation. More...
 
virtual void SetLocalRotation (double _r, double _p, double _y)=0
 Set the local rotation. More...
 
virtual void SetLocalRotation (double _w, double _x, double _y, double _z)=0
 Set the local rotation. More...
 
virtual void SetLocalScale (const math::Vector3d &_scale)=0
 Set the local scale. More...
 
virtual void SetLocalScale (double _scale)=0
 Set the local scale. The given scale will be assigned to the x, y, and z coordinates. More...
 
virtual void SetLocalScale (double _x, double _y, double _z)=0
 Set the local scale. More...
 
virtual void SetOrigin (const math::Vector3d &_origin)=0
 Set position of origin. The position should be relative to the original origin of the geometry. More...
 
virtual void SetOrigin (double _x, double _y, double _z)=0
 Set position of origin. The position should be relative to the original origin of the geometry. More...
 
virtual void SetUserData (const std::string &_key, Variant _value)=0
 Store any custom data associated with this node. More...
 
virtual void SetWorldPose (const math::Pose3d &_pose)=0
 Set the world pose. More...
 
virtual void SetWorldPosition (const math::Vector3d &_position)=0
 Set the world position. More...
 
virtual void SetWorldPosition (double _x, double _y, double _z)=0
 Set the world position. More...
 
virtual void SetWorldRotation (const math::Quaterniond &_rotation)=0
 Set the world rotation. More...
 
virtual void SetWorldRotation (double _r, double _p, double _y)=0
 Set the world rotation. More...
 
virtual void SetWorldRotation (double _w, double _x, double _y, double _z)=0
 Set the world rotation. More...
 
virtual void SetWorldScale (const math::Vector3d &_scale)=0
 Set the world scale. More...
 
virtual void SetWorldScale (double _scale)=0
 Set the world scale. The given scale will be assigned to the x, y, and z coordinates. More...
 
virtual void SetWorldScale (double _x, double _y, double _z)=0
 Set the world scale. More...
 
virtual Variant UserData (const std::string &_key) const =0
 Get custom data stored in this node. More...
 
virtual math::Pose3d WorldPose () const =0
 Get the world pose. More...
 
virtual math::Vector3d WorldPosition () const =0
 Get the world position. More...
 
virtual math::Quaterniond WorldRotation () const =0
 Get the world rotation. More...
 
virtual math::Vector3d WorldScale () const =0
 Get the world scale. More...
 
virtual math::Pose3d WorldToLocal (const math::Pose3d &_pose) const =0
 Convert given world pose to local pose. More...
 
- Public Member Functions inherited from Object
virtual ~Object ()
 Destructor. More...
 
virtual void Destroy ()=0
 Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior. More...
 
virtual unsigned int Id () const =0
 Get the object ID. This ID will be unique across all objects inside a given scene, but necessarily true for objects across different scenes. More...
 
virtual std::string Name () const =0
 Get the object name. This name will be unique across all objects inside a given scene, but necessarily true for objects across different scenes. More...
 
virtual void PostRender ()=0
 Post process this object and any of its children after rendering. More...
 
virtual ScenePtr Scene () const =0
 Get the Scene that created this object. More...
 

Protected Member Functions

 BaseParticleEmitter ()
 Constructor. More...
 

Protected Attributes

gz::math::Color colorEnd
 The end color of a particle to choose from. More...
 
std::string colorRangeImage = ""
 The color image. More...
 
gz::math::Color colorStart
 The start color of a particle to choose from. More...
 
double duration = 0
 Duration of the emitter. More...
 
gz::math::Vector3d emitterSize
 Emitter size. More...
 
bool emitting = false
 Whether particle emitter is enabled or not. More...
 
double lifetime = 5
 Particle lifetime. More...
 
MaterialPtr material = nullptr
 Particle material. More...
 
double maxVelocity = 1
 The maximum velocity of each particle. More...
 
double minVelocity = 1
 The minimum velocity of each particle. More...
 
float particleScatterRatio = 0.65f
 The particle scatter ratio. This is used to determine the ratio of particles that will be detected by sensors. Increasing the ratio increases the scatter of the particles, which means there is a higher chance of particles reflecting and interfering with depth sensing, making the emitter appear more dense. Decreasing the ratio decreases the scatter of the particles, making it appear less dense. This value should be > 0. More...
 
gz::math::Vector3d particleSize = {1, 1, 1}
 Particle size. More...
 
double rate = 10
 Rate of emission. More...
 
double scaleRate = 1
 The scale rate. More...
 
EmitterType type = EM_POINT
 Emitter type. More...
 

Detailed Description

template<class T>
class gz::rendering::BaseParticleEmitter< T >

A base implementation of the ParticleEmitter class.

Constructor & Destructor Documentation

◆ BaseParticleEmitter()

Constructor.

◆ ~BaseParticleEmitter()

Destructor.

Member Function Documentation

◆ ColorEnd()

gz::math::Color ColorEnd ( ) const
overridevirtual

Get the end color of the particles.

Returns
End color.
See also
ColorStart
SetColorRange

Implements ParticleEmitter.

◆ ColorRangeImage()

std::string ColorRangeImage ( ) const
overridevirtual

Get the path to the color image used as an affector.

Returns
The color image name or empty string if the image is not set.
See also
SetColorRangeImage

Implements ParticleEmitter.

◆ ColorStart()

gz::math::Color ColorStart ( ) const
overridevirtual

Get the starting color of the particles.

Returns
Start color.
See also
ColorEnd
SetColorRange

Implements ParticleEmitter.

◆ Duration()

double Duration ( ) const
overridevirtual

Get the number of seconds the emitter is active. A value of 0 means infinite duration.

Returns
Total duration of the emitter (seconds).
See also
SetDuration

Implements ParticleEmitter.

◆ EmitterSize()

gz::math::Vector3d EmitterSize ( ) const
overridevirtual

Get the size of the emitter where the particles are sampled.

Returns
The emitter size. See SetEmitterSize() for the interpretation of the dimensions depending on the emitter type.
See also
SetEmitterSize

Implements ParticleEmitter.

◆ Emitting()

bool Emitting ( ) const
overridevirtual

Is the particle emitter enabled?

Returns
True when enabled or false otherwise.
See also
SetEmitting

Implements ParticleEmitter.

◆ Init()

void Init
overridevirtual

Reimplemented in Ogre2ParticleEmitter.

◆ Lifetime()

double Lifetime ( ) const
overridevirtual

Get the number of seconds each particle will ’live’ for before being destroyed.

Returns
Lifetime of each particle (seconds).
See also
SetLifetime

Implements ParticleEmitter.

◆ Material()

MaterialPtr Material ( ) const
overridevirtual

Get the material which all particles in the emitter will use.

Returns
The material pointer.
See also
SetMaterial

Implements ParticleEmitter.

◆ MaxVelocity()

double MaxVelocity ( ) const
overridevirtual

Get the maximum velocity each particle is emitted (m/s).

Returns
Maximum velocity.
See also
MinVelocity
SetVelocityRange

Implements ParticleEmitter.

◆ MinVelocity()

double MinVelocity ( ) const
overridevirtual

Get the minimum velocity each particle is emitted (m/s).

Returns
Minimum velocity.
See also
MaxVelocity
SetVelocityRange

Implements ParticleEmitter.

◆ ParticleScatterRatio()

float ParticleScatterRatio ( ) const
overridevirtual

Get the particle scatter ratio.

Returns
The particle scatter ratio.
See also
SetParticleScatterRatio

Implements ParticleEmitter.

◆ ParticleSize()

gz::math::Vector3d ParticleSize ( ) const
overridevirtual

Get the particle dimensions (width, height, depth).

Returns
Particle dimensions.
See also
SetParticleSize

Implements ParticleEmitter.

◆ PreRender()

void PreRender ( )
overridevirtual

Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender.

Implements Object.

◆ Rate()

double Rate ( ) const
overridevirtual

Get how many particles per second should be emitted.

Returns
Particles per second.
See also
SetRate

Implements ParticleEmitter.

◆ Reset()

void Reset
virtual

Reset the particle emitter visual state.

◆ ScaleRate()

double ScaleRate ( ) const
overridevirtual

Get the amount by which to scale the particles in both x and y direction per second. Default value is 1.

Returns
The scale rate.
See also
SetScaleRate

Implements ParticleEmitter.

◆ SetColorRange()

void SetColorRange ( const gz::math::Color _colorStart,
const gz::math::Color _colorEnd 
)
overridevirtual

Sets a color for all particle emitted. The actual color will be interpolated between these two colors Color::White is the default color for the particles unless a specific function is used. Note that this function overrides the particle colors set with SetColorRangeImage().

Parameters
[in]_colorStartStart color.
[in]_colorEndEnd color.
See also
ColorStart
ColorEnd

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetColorRangeImage()

void SetColorRangeImage ( const std::string _image)
overridevirtual

Set the path to the color image used as an affector. This affector modifies the color of particles in flight. The colors are taken from a specified image file. The range of color values begins from the left side of the image and move to the right over the lifetime of the particle, therefore only the horizontal dimension of the image is used. Note that this function overrides the particle colors set with SetColorRange().

Parameters
[in]_imageThe color image name.
See also
ColorRangeImage

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetDuration()

void SetDuration ( double  _duration)
overridevirtual

Set the number of seconds the emitter is active. A value of 0 means infinite duration. Default value is 0.

Parameters
[in]_durationTotal duration of the emitter (seconds).
See also
Duration

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetEmitterSize()

void SetEmitterSize ( const gz::math::Vector3d _size)
overridevirtual

Set the size of the emitter where the particles are sampled. Default value is (1, 1, 1). Note that the interpretation of the emitter area varies depending on the emmiter type:

  • EM_POINT: The area is ignored.
  • EM_BOX: The area is interpreted as width X height X depth.
  • EM_CYLINDER: The area is interpreted as the bounding box of the cilinder. The cylinder is oriented along the Z-axis.
  • EM_ELLIPSOID: The area is interpreted as the bounding box of an ellipsoid shaped area, i.e. a sphere or squashed-sphere area. The parameters are again identical to EM_BOX, except that the dimensions describe the widest points along each of the axes.
    Parameters
    [in]_sizeSize of the emitter (width, height, depth).
    See also
    EmitterSize

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetEmitting()

void SetEmitting ( bool  _enable)
overridevirtual

This is used to turn on or off particle emission. Default value is false.

Parameters
[in]_enableTrue for enabling the emission or false otherwise.
See also
Emitting

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetLifetime()

void SetLifetime ( double  _lifetime)
overridevirtual

Set the number of seconds each particle will ’live’ for before being destroyed. Default value is 5.

Parameters
[in]_lifetimeLifetime of each particle (seconds).
See also
Lifetime

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetMaterial()

void SetMaterial ( const MaterialPtr _material)
overridevirtual

Sets the material which all particles in the emitter will use.

Parameters
[in]_materialThe material pointer.
See also
Material

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetParticleScatterRatio()

void SetParticleScatterRatio ( float  _ratio)
overridevirtual

Set the particle scatter ratio.

Parameters
[in]_ratioThe scatter ratio. The particle emitter's scatter ratio will only be set to _ratio if _ratio > 0.
See also
ParticleScatterRatio

Implements ParticleEmitter.

◆ SetParticleSize()

void SetParticleSize ( const gz::math::Vector3d _size)
overridevirtual

Set the particle dimensions (width, height, depth). Default value is {1, 1, 1}.

Parameters
[in]_sizeParticle dimensions.
See also
ParticleSize

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetRate()

void SetRate ( double  _rate)
overridevirtual

Set how many particles per second should be emitted. Default value is 10.

Parameters
[in]_rateParticles per second.
See also
Rate

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetScaleRate()

void SetScaleRate ( double  _scaleRate)
overridevirtual

Set the amount by which to scale the particles in both x and y direction per second.

Parameters
[in]_scaleRateThe scale rate.
See also
ScaleRate

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetType()

void SetType ( const EmitterType  _type)
overridevirtual

Set the emitter type. Default value is EM_POINT.

Parameters
[in]_typeEmitter type.
See also
EmitterType.
Type.

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ SetVelocityRange()

void SetVelocityRange ( double  _minVelocity,
double  _maxVelocity 
)
overridevirtual

Set a velocity range and each particle is emitted with a random velocity within this range (m/s). Default value is 1 for both velocities.

Parameters
[in]_minVelocityMinimum velocity.
[in]_maxVelocityMaximum velocity.
See also
MinVelocity
MaxVelocity

Implements ParticleEmitter.

Reimplemented in Ogre2ParticleEmitter.

◆ Type()

EmitterType Type ( ) const
overridevirtual

Get the emitter type.

Returns
Emitter type.
See also
EmitterType.
SetType.

Implements ParticleEmitter.

Member Data Documentation

◆ colorEnd

gz::math::Color colorEnd
protected
Initial value:

The end color of a particle to choose from.

◆ colorRangeImage

std::string colorRangeImage = ""
protected

The color image.

◆ colorStart

gz::math::Color colorStart
protected
Initial value:

The start color of a particle to choose from.

◆ duration

double duration = 0
protected

Duration of the emitter.

◆ emitterSize

gz::math::Vector3d emitterSize
protected
Initial value:

Emitter size.

◆ emitting

bool emitting = false
protected

Whether particle emitter is enabled or not.

◆ lifetime

double lifetime = 5
protected

Particle lifetime.

◆ material

MaterialPtr material = nullptr
protected

Particle material.

◆ maxVelocity

double maxVelocity = 1
protected

The maximum velocity of each particle.

◆ minVelocity

double minVelocity = 1
protected

The minimum velocity of each particle.

◆ particleScatterRatio

float particleScatterRatio = 0.65f
protected

The particle scatter ratio. This is used to determine the ratio of particles that will be detected by sensors. Increasing the ratio increases the scatter of the particles, which means there is a higher chance of particles reflecting and interfering with depth sensing, making the emitter appear more dense. Decreasing the ratio decreases the scatter of the particles, making it appear less dense. This value should be > 0.

◆ particleSize

gz::math::Vector3d particleSize = {1, 1, 1}
protected

Particle size.

◆ rate

double rate = 10
protected

Rate of emission.

◆ scaleRate

double scaleRate = 1
protected

The scale rate.

◆ type

EmitterType type = EM_POINT
protected

Emitter type.


The documentation for this class was generated from the following file: