Пример #1
0
    public RosBridgeConnector(AgentSetup type)
    {
        agentType       = type;
        lastEnvironment = agentType.TargetRosEnv;

        if (type.TargetRosEnv == ROSTargetEnvironment.APOLLO35)
        {
            Bridge = new Comm.Cyber.CyberBridge();
        }
        else
        {
            Bridge = new Comm.Ros.RosBridge();
        }
    }
Пример #2
0
 public void Disconnect()
 {
     connectTime = Time.time + 1.0f;
     Bridge.Disconnect();
     if (lastEnvironment != agentType.TargetRosEnv)
     {
         if (agentType.TargetRosEnv == ROSTargetEnvironment.APOLLO35)
         {
             Bridge = new Comm.Cyber.CyberBridge();
         }
         else
         {
             Bridge = new Comm.Ros.RosBridge();
         }
         lastEnvironment = agentType.TargetRosEnv;
     }
 }
Пример #3
0
    Vector3 GetPosition(ROSTargetEnvironment targetEnv, double easting, double northing)
    {
        MapOrigin mapOrigin = GameObject.Find("/MapOrigin").GetComponent <MapOrigin>();

        if (targetEnv == ROSTargetEnvironment.APOLLO || targetEnv == ROSTargetEnvironment.APOLLO35)
        {
            easting += 500000;
        }
        easting  -= mapOrigin.OriginEasting;
        northing -= mapOrigin.OriginNorthing;

        float x = (float)easting;
        float z = (float)northing;

        if (targetEnv == ROSTargetEnvironment.AUTOWARE)
        {
            return(new Vector3(x, 0, z));
        }
        return(Quaternion.Euler(0f, -mapOrigin.Angle, 0f) * new Vector3(x, 0, z));
    }