Atoms Crowd  7.0.0
Atoms::MeshScatterLayoutGenerator Class Reference
Inheritance diagram for Atoms::MeshScatterLayoutGenerator:
Atoms::DynamicLayoutGenerator Atoms::LayoutGenerator

Public Types

enum  ScatterMode {
  kRandom = 0 , kVertices , kFaceCenter , kVerticesIteration ,
  kFaceCenterIteration
}
 
- Public Types inherited from Atoms::DynamicLayoutGenerator
enum  DynamicMode { kTimer = 0 , kTrigger }
 

Public Member Functions

virtual std::vector< Atoms::AgentInitDatagenerate (double time)
 Generate a vector of agent init data.
 
void setMesh (const AtomsUtils::Mesh &mesh, short mode=0)
 
void setDefaultRadius (double radius)
 
void setDensityMap (AtomsUtils::Image *densityMap)
 
void setMaxRadius (double radius)
 
void setUseDensityMap (bool state)
 
void setRandomizeRadius (bool state)
 
void setIterations (int iterations)
 
void setRandomDirection (const AtomsMath::Vector3f &randomDirection)
 
void setMeshMatrix (const AtomsMath::Matrix &matrix)
 
void setRandomSeed (unsigned int seed)
 
void setEraseMap (AtomsUtils::Image *densityMap)
 
void setEraseThreshold (double radius)
 
void setUseEraseMap (bool state)
 
void useNormalAsUpVector (bool value)
 
void setUseNavMesh (bool value)
 
void setNavMeshName (const std::string &value)
 
void setClamp (const bool useClampVector, const AtomsCore::Vector3 &clampVector, const double clampAngle)
 
void setOtherSamples (const std::vector< AtomsCore::Vector3 > &otherSamples)
 
void setAgentMaxNum (const int agentMaxNum)
 
const std::map< int, AtomsCore::Vector3scaleOverride () const
 
void setScaleOverride (const std::map< int, AtomsCore::Vector3 > &value)
 
void setScaleAttributeCache (const BehaviourModuleAttributeCache< AtomsCore::Vector3 > &scaleAttributeCache)
 
const char * typeName () override
 Get the type name for this generator.
 
- Public Member Functions inherited from Atoms::DynamicLayoutGenerator
bool checkGeneration (double time)
 
AgentTypePtr pickAgentType ()
 
AgentTypePtr agentType (const int groupId, const std::string &groupIdStr) override
 Get the agent type used by this generator.
 
void applyOffsetToData ()
 
unsigned int dynamicGroupIdOffset () const
 
void setDynamicGroupIdOffset (unsigned int value)
 
void addDynamicGroupIdOffset (unsigned int value)
 
unsigned int dynamicMethod () const
 
void setDynamicMethod (unsigned int value)
 
bool generateOnInitSimulation () const
 
void setGenerateOnInitSimulation (bool value)
 
double timeToGenerate () const
 
void setTimeToGenerate (double value)
 
void decreaseTimeToGenerate ()
 
bool generatorTrigger () const
 
void setGeneratorTrigger (bool value)
 
bool randomizeAgentTypes () const
 
void setRandomizeAgentTypes (bool value)
 
bool resetSeed () const
 
void setResetSeed (bool value)
 
const std::vector< std::string > & randomAgentTypes () const
 
void setRandomAgentTypes (const std::vector< std::string > &value)
 
const AtomsCore::Vector2randomTimer () const
 
void setRandomTimer (const AtomsCore::Vector2 &value)
 
const std::vector< Atoms::AgentInitData > & getData () const
 
void setData (const std::vector< Atoms::AgentInitData > &data, bool check=false)
 
- Public Member Functions inherited from Atoms::LayoutGenerator
 LayoutGenerator (bool isStatic=true)
 Constructor. More...
 
virtual ~LayoutGenerator ()
 Destructor.
 
virtual bool allowMultiLayoutGenerator ()
 Returns whether this layout generator can work in conjunction with other layout generators.
 
virtual bool allowMultiple ()
 Returns whether an Agent Group can have multiple instances of this layout generator.
 
virtual bool mustBeFirst ()
 Returns wheter this layout generator should be the first one in the stack.
 
bool isStaticGenerator () const
 Get the static state for this generator.
 
void setAsStaticGenerator (bool value)
 Set the static state for this generator.
 
void setAgentTypeAttributeCache (const BehaviourModuleAttributeCache< std::string > &agentTypeAttributeCache)
 
void setDirectionAttributeCache (const BehaviourModuleAttributeCache< AtomsCore::Vector3 > &directionAttributeCache)
 
void setUpVectorAttributeCache (const BehaviourModuleAttributeCache< AtomsCore::Vector3 > &upVectorAttributeCache)
 
std::atomic< size_t > & nextFreeId ()
 
const std::atomic< size_t > & nextFreeId () const
 
void setName (const std::string &name)
 Set the name of this generator.
 
const std::string & name ()
 Get the name of this generator.
 
void setGroupIdOffset (const int offset)
 Set the offset for the group ids of this layout generator.
 
const int groupIdOffset ()
 Get the offset for the group ids of this layout generator.
 
void setOffsetPelvisHeight (bool state)
 Sets the flag to offset height according to the distance between pelvis and foot.
 
void setOffsetPelvisHeightOverride (const std::map< int, bool > &value)
 Sets the map per agent to offset height according to the distance between pelvis and foot.
 
void setOffsetPelvisHeightAttributeCache (const BehaviourModuleAttributeCache< bool > &offsetPelvisHeightCache)
 Sets offset pelvis height attribute cache.
 

Additional Inherited Members

- Static Public Member Functions inherited from Atoms::LayoutGenerator
static const std::string getDefaultAgentType ()
 Get the default agent type name.
 
- Protected Attributes inherited from Atoms::DynamicLayoutGenerator
AtomsCore::Rand48 m_randDynamic
 
std::vector< std::string > m_randomAgentTypes
 
- Protected Attributes inherited from Atoms::LayoutGenerator
BehaviourModuleAttributeCache< bool > m_applyPelvisHeightOffsetCache
 
BehaviourModuleAttributeCache< std::string > m_agentTypeAttributeCache
 
BehaviourModuleAttributeCache< AtomsCore::Vector3m_directionAttributeCache
 
BehaviourModuleAttributeCache< AtomsCore::Vector3m_upVectorAttributeCache
 

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