Я создаю список объектов агентов, которые содержат ряд различных параметров, но я не уверен, как получить доступ к конкретному параметру (ам) всех моих объектов, используя цикл ... что я ищу сделать, это получить все позиции Point3d от всех моих агентов. Как бы я это сделал?
// Define Agent class
class Agent
{
Point3d Pos = new Point3d();
Vector3d Vec = new Vector3d();
int Alignment;
double Separation;
double Cohesion;
double NeighborRadius;
public Agent(Point3d pos, Vector3d vec, int alignment, double separation, double cohesion, double neighborRadius)
{
Pos = pos;
Vec = vec;
Alignment = alignment;
Separation = separation;
Cohesion = cohesion;
NeighborRadius = neighborRadius;
}
}
protected override void SolveInstance(IGH_DataAccess DA)
{
// Initialize Agents
for (int i = 0; i < agents; i++)
{
double xPos = RandomfromDouble(0.0, boundx);
double yPos = RandomfromDouble(0.0, boundy);
double zPos = RandomfromDouble(0.0, boundz);
Point3d pos = new Point3d(xPos, yPos, zPos); // Create Agent Start Position
Vector3d vec = new Vector3d(xPos + 1, yPos, zPos); // Create Agent Start Vector
Agent agent = new Agent(pos, vec, alignment, separation, cohesion, neighborRadius);
allAgents.Add(agent);
agentPositions.Add(pos);
}
}