Получить координаты GEO из симулятора сумо, используя TraCI - PullRequest
0 голосов
/ 20 ноября 2018

Я использую библиотеку TraCI в python для пошагового запуска и управления симуляцией сумо из кода.Моя проблема в том, что мне нужны координаты транспортных средств в шаге симуляции.Я получаю координаты x, y из моделирования каждый шаг с помощью прослушивателя TraCI, а затем пытаюсь преобразовать эти значения в широту и долготу:

for vehicleId in traci.vehicle.getIDList():
        speed = traci.vehicle.getSpeed(vehicleId)
        x, y = traci.vehicle.getPosition(vehicleId)
        lon, lat = traci.simulation.convertGeo(x, y)
        lon, lat = self.net.convertXY2LonLat(x, y)

Ни одно из двух преобразований не работает, первое возвращает то же самоезначения, а второе обычно выдает ошибку:

"RuntimeError: b'projection not named '"

Я полагаю, потому что нет проекции, правильно описанной всетевой файл.Проблема здесь в том, что ни один из сценариев не работает здесь, хотя некоторые из них могут выполнять fcd-вывод (проецируемые координаты).

Кто-нибудь сталкивался с подобной проблемой?

С уважением испасибо!

1 Ответ

0 голосов
/ 30 ноября 2018

Проблема заключалась в том, что в сетях, где нет географической привязки, правильно.Необходимо, чтобы параметр проекции был '+ proj = utm ...' вместо '!'.

Это означает, что любой полученный вами fcd-вывод также предоставляется в терминах x, y (декартовой)сетевые координаты.Аналогично, нижний левый-правый угол в сумо-графическом интерфейсе не будет обеспечивать правильные значения широты и долготы для такой сети.

См. Этот выпуск .

...