Package com.jme3.effect.shapes
Class EmitterSphereShape
java.lang.Object
com.jme3.effect.shapes.EmitterSphereShape
- All Implemented Interfaces:
EmitterShape,Savable,JmeCloneable,Cloneable
An
EmitterShape that emits particles randomly from within the volume of a sphere.
The sphere is defined by a center point and a radius.-
Constructor Summary
ConstructorsConstructorDescriptionFor serialization only.EmitterSphereShape(Vector3f center, float radius) Constructs anEmitterSphereShapewith the given center and radius. -
Method Summary
Modifier and TypeMethodDescriptionvoidcloneFields(Cloner cloner, Object original) Called internally by com.jme3.util.clone.Cloner.This method creates a deep clone of the current instance of the emitter shape.Returns the center point of the sphere.floatReturns the radius of the sphere.voidgetRandomPoint(Vector3f store) Generates a random point within the volume of the sphere.voidgetRandomPointAndNormal(Vector3f store, Vector3f normal) For a sphere shape, the normal is not well-defined for points within the volume.jmeClone()Called internally by com.jme3.util.clone.Cloner.voidread(JmeImporter im) voidSets the center point of the sphere.voidsetRadius(float radius) Sets the radius of the sphere.voidwrite(JmeExporter ex)
-
Constructor Details
-
EmitterSphereShape
public EmitterSphereShape()For serialization only. Do not use. -
EmitterSphereShape
Constructs anEmitterSphereShapewith the given center and radius.- Parameters:
center- The center point of the sphere.radius- The radius of the sphere.- Throws:
IllegalArgumentException- Ifcenteris null, or ifradiusis not greater than 0.
-
-
Method Details
-
deepClone
Description copied from interface:EmitterShapeThis method creates a deep clone of the current instance of the emitter shape.- Specified by:
deepClonein interfaceEmitterShape- Returns:
- deep clone of the current instance of the emitter shape
-
jmeClone
Called internally by com.jme3.util.clone.Cloner. Do not call directly.- Specified by:
jmeClonein interfaceJmeCloneable- Returns:
- a new instance
-
cloneFields
Called internally by com.jme3.util.clone.Cloner. Do not call directly.- Specified by:
cloneFieldsin interfaceJmeCloneable- Parameters:
cloner- The cloner that is performing the cloning operation. The cloneFields method can call back into the cloner to make clones of its subordinate fields.original- The original object from which this object was cloned. This is provided for the very rare case that this object needs to refer to its original for some reason. In general, all of the relevant values should have been transferred during the shallow clone, and this object need only clone what it wants.
-
getRandomPoint
Generates a random point within the volume of the sphere.- Specified by:
getRandomPointin interfaceEmitterShape- Parameters:
store- TheVector3fto store the generated point in.
-
getRandomPointAndNormal
For a sphere shape, the normal is not well-defined for points within the volume. This implementation simply callsgetRandomPoint(Vector3f)and does not modify the provided normal.- Specified by:
getRandomPointAndNormalin interfaceEmitterShape- Parameters:
store- TheVector3fto store the generated point in.normal- TheVector3fto store the generated normal in (unused).
-
getCenter
Returns the center point of the sphere.- Returns:
- The center point.
-
setCenter
Sets the center point of the sphere.- Parameters:
center- The new center point.
-
getRadius
public float getRadius()Returns the radius of the sphere.- Returns:
- The radius.
-
setRadius
public void setRadius(float radius) Sets the radius of the sphere.- Parameters:
radius- The new radius.
-
write
- Specified by:
writein interfaceSavable- Throws:
IOException
-
read
- Specified by:
readin interfaceSavable- Throws:
IOException
-