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(); } }
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; } }
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)); }