2 #include <Atoms/LayoutGenerators/DynamicLayoutGenerator.h>
3 #include <AtomsUtils/Curve.h>
16 virtual std::vector<AgentInitData>
generate(
double time)
28 inline void setSeed(
const int value) { m_seed = value; }
30 inline void setRandomRange(
const int minValue,
const int maxValue) { m_minRandomRange = minValue; m_maxRandomRange = maxValue; }
32 inline void setNumberOfAgents(
size_t value1,
size_t value2) { m_numberOfAgents1 = value1; m_numberOfAgents2 = value2; }
34 inline void setNumberOfRows(
size_t value) { m_numberOfRows = value; }
36 inline void setUseCVs(
bool value) { m_useCVs = value; }
38 inline void setDirectionType(
short value) { m_directionType = value; }
40 inline void setInvertDirection(
bool value) { m_invertDirection = value; }
42 inline void setAgentTypeOverride(
const std::map<int, std::string>& value) { m_agentTypeOverride = value; }
44 inline void setDirectionOverride(
const std::map<int, AtomsCore::Vector3>& value) { m_directionOverride = value; }
46 inline void setRandomDistribution(
const bool randomDistribution) { m_randomDistribution = randomDistribution;}
48 inline void setRandomDistributionRange(
const float minValue,
const float maxValue) { m_minRandomDistribution = minValue; m_maxRandomDistribution = maxValue; }
50 inline const char*
typeName()
override {
return "curvePairLayout"; };
71 std::map<int, AtomsCore::Vector3> m_directionOverride;
74 std::map<int, std::string> m_agentTypeOverride;
77 size_t m_numberOfAgents1;
78 size_t m_numberOfAgents2;
81 size_t m_numberOfRows;
84 short m_directionType;
87 bool m_invertDirection;
100 bool m_randomDistribution;
101 float m_minRandomDistribution;
102 float m_maxRandomDistribution;