es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Qué agente de una población es capturado?

En Anylogic, tengo una flota de 20 camiones que, al generarse (usando el bloque TransporterFleet), se colocan en una población llamada trucks. Estos camiones son capturados por un agente de recursos mediante el uso de un bloque SeizeTransporter. ¿Cómo puedo encontrar el índice del camión que ha sido capturado? Es decir, para poder utilizar trucks(ind).getX(), por ejemplo, para obtener la coordenada x del camión.

Edit1:
Olvidé mencionar que he intentado usar self.getIndex(), pero no funcionó porque aparentemente eso consulta al bloque de captura en sí mismo y no al agente transportador. Intentando encontrar la respuesta, descubrí que usar this. podría ser una opción, pero no estoy seguro a qué se refiere this. y cómo usarlo.

Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para encontrar el índice del camión que ha sido confiscado, puedes usar el método getTransporter() del bloque SeizeTransporter para obtener el agente del camión confiscado. Una vez que tengas el agente del camión, puedes utilizar el método indexOf() de la población trucks para obtener su índice en la población.

    Aquí tienes un ejemplo de fragmento de código:

    // obtener el agente del camión confiscado
    TransporterAgent truck = seizeTransporter.getTransporter();
    
    // obtener el índice del camión en la población de camiones
    int truckIndex = trucks.indexOf(truck);
    
    // utilizar el índice para obtener la coordenada x del camión
    double x = trucks.get(truckIndex).getX();
    

    En este código, seizeTransporter es el bloque SeizeTransporter que incauta los camiones, y trucks es la población de camiones. El método getTransporter() devuelve el agente del camión que ha sido confiscado, y el método indexOf() devuelve su índice en la población trucks.

    La palabra clave this se refiere a la instancia actual de la clase, por lo que utilizar this en este contexto se referiría al bloque SeizeTransporter en sí mismo, no al agente del camión confiscado.

Comments are closed.