Skylicht Engine
Loading...
Searching...
No Matches
Skylicht::Particle::CSphere Class Reference

A zone that spawns particles within or on the surface of a sphere. More...

#include <ParticleSystem/Particles/Zones/CSphere.h>

Inheritance diagram for Skylicht::Particle::CSphere:
Skylicht::Particle::CPositionZone Skylicht::Particle::CZone Skylicht::Particle::CParticleSerializable

Public Member Functions

 CSphere (const core::vector3df &position, float radius)
virtual CObjectSerializablecreateSerializable ()
 Creates a serializable object for property editing or saving.
virtual void loadSerializable (CObjectSerializable *object)
 Loads properties from a serializable object.
void setRadius (float r)
 Sets sphere radius.
float getRadius ()
 Gets sphere radius.
virtual void generatePosition (CParticle &particle, bool full, CGroup *group)
 Implementation: spawns within volume or on surface.
virtual core::vector3df computeNormal (const core::vector3df &point, CGroup *group)
 Implementation: normal points from center to point.
Public Member Functions inherited from Skylicht::Particle::CPositionZone
 CPositionZone (EZone type)
void setPosition (const core::vector3df &pos)
 Sets relative position.
const core::vector3df & getPosition ()
 Gets relative position.
Public Member Functions inherited from Skylicht::Particle::CZone
 CZone (EZone type)
const wchar_t * getName ()
 Gets display name.
EZone getType ()
 Gets zone type.
void normalizeOrRandomize (core::vector3df &v)
 Normalizes a vector or randomizes it if it is zero.

Protected Attributes

float m_radius
 Radius of the sphere.
Protected Attributes inherited from Skylicht::Particle::CPositionZone
core::vector3df m_position
 Relative position of the zone.
Protected Attributes inherited from Skylicht::Particle::CZone
EZone m_type
 Type of the zone.

Detailed Description

A zone that spawns particles within or on the surface of a sphere.

Member Function Documentation

◆ computeNormal()

virtual core::vector3df Skylicht::Particle::CSphere::computeNormal ( const core::vector3df & point,
CGroup * group )
virtual

Implementation: normal points from center to point.

Implements Skylicht::Particle::CZone.

◆ createSerializable()

virtual CObjectSerializable * Skylicht::Particle::CSphere::createSerializable ( )
virtual

Creates a serializable object for property editing or saving.

Returns
Pointer to a new CObjectSerializable instance.

Reimplemented from Skylicht::Particle::CZone.

◆ generatePosition()

virtual void Skylicht::Particle::CSphere::generatePosition ( CParticle & particle,
bool full,
CGroup * group )
virtual

Implementation: spawns within volume or on surface.

Implements Skylicht::Particle::CZone.

◆ loadSerializable()

virtual void Skylicht::Particle::CSphere::loadSerializable ( CObjectSerializable * object)
virtual

Loads properties from a serializable object.

Parameters
objectThe serializable data to load.

Reimplemented from Skylicht::Particle::CZone.


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