Skip to content

Importador GTFS

A Especificação Geral do Feed de Transporte (GTFS), também conhecida como GTFS estático, define um formato comum para horários de transporte e informações geográficas associadas.

Um feed GTFS consiste em uma série de arquivos de texto coletados em um único arquivo ZIP. Cada arquivo contém um aspecto particular das informações do transporte: paradas, rotas, viagens e outros dados de horários. Os detalhes de cada arquivo são definidos na Wiki de Transporte referência GTFS.

Arquivos GTFS

O Importador GTFS possui um conjunto de arquivos obrigatórios e opcionais:

Obrigatórios:

  • agency.txt
  • stops.txt
  • routes.txt
  • trips.txt
  • stop_times.txt

Opcionais:

  • calendar.txt
  • calendar_dates.txt
  • fare_attributes.txt
  • fare_rules.txt
  • shapes.txt
  • frequencies.txt
  • transfers.txt
  • feed_info.txt

Importando Dados GTFS

Para usar o Importador GTFS:

  • Crie ou importe uma rede localizada nas mesmas coordenadas que os dados GTFS.
  • Crie uma pasta de arquivos com os arquivos GTFS *.txt. Esta pasta deve conter pelo menos o conjunto de arquivos obrigatórios para que a importação funcione.

Diálogo do Importador GTFS

Abra o diálogo do importador no menu Arquivo -> Importar

dialog GTFS

Os passos para importar os dados são:

  • Selecione o caminho para a pasta com os dados GTFS.
  • Marque/Desmarque paradas, linhas e horários para selecionar o que será importado. Isso permite um trabalho incremental, por exemplo, importar primeiro as paradas, depois corrigir possíveis erros de posicionamento e, posteriormente, importar as linhas com as paradas corretamente posicionadas.
  • Selecione uma sub-rede para trabalhar. O importador GTFS criará as linhas de transporte dentro dos limites da sub-rede selecionada. O padrão é que o importador use toda a rede. No entanto, as formas serão importadas para toda a rede e colocadas na camada GTFS_Shapes.
  • Selecione um cenário para trabalhar. O importador GTFS criará as paradas e linhas de transporte levando em consideração a configuração geométrica do cenário.

dialog 2 GTFS

Opcionais:

  • Defina um prefixo para os nomes das linhas e horários.
  • É possível atualizar ou adicionar novos horários a linhas de transporte previamente importadas. O prefixo é usado para controlar se os dados recém-importados substituem os dados existentes ou adicionam a eles, diferenciando os nomes das linhas e horários. Veja a seção Notas abaixo.
  • Marque "Formas" para criar linhas seguindo as formas existentes, em shapes.txt, em vez de seguir os caminhos mais curtos entre as Paradas de Transporte.
  • Marque "Data" para criar linhas com um horário único para um dia específico.
  • Marque "Aplicar Tempos de Parada" para definir os desvios definidos nos horários para serem considerados pelo modelo de simulação.
  • Marque os "Tipos de Vias" da lista para que sejam proibidos de ter paradas colocadas neles.
  • Marque as "Camadas" que serão proibidas de ter uma parada ou uma linha pública colocada nas seções nessa camada.

Diálogo de Filtro GTFS

Uma vez que os arquivos GTFS são lidos, o diálogo abaixo é aberto.

Diálogo de filtro GTFS

Este diálogo permite filtrar as linhas de transporte e os horários por tipo de via, agência e serviços:

1. Filtro de serviços

a. Tabela de serviços

Contém todos os serviços incluídos em 'calendar.txt'. Mostra seu ID e Dias de Operação. Por padrão, a opção 'Todos os Serviços' está marcada. Desmarcá-la permite que o usuário verifique dias da semana com uma lógica específica ('Todos', 'Qualquer', 'Exato'), ou apenas verificar serviços diretamente na tabela.

Aviso Quando os serviços são verificados diretamente (selecionando um serviço específico na tabela), eles devem ser verificados após a seleção dos dias e lógica desejadas, pois isso sobrepõe as verificações diretas.

b. Dias e lógica

Essas opções funcionam em conjunto para verificar múltiplos serviços de uma vez, em vez de ter que fazê-lo diretamente.

  • Quando 'Todos os Dias Selecionados' é selecionado: Serviços que têm todos os seus dias de operação selecionados serão marcados.
  • Quando 'Qualquer Dia Selecionado' é selecionado: Serviços que têm qualquer um de seus dias de operação selecionados serão marcados.
  • Quando 'Dias Exatos Selecionados' é selecionado: Serviços que têm apenas os dias selecionados como seus dias de operação serão marcados.

Usando a barra de pesquisa, as linhas visíveis podem ser filtradas. Ela filtra pela coluna selecionada usando a opção 'ID' ou 'Dias de Operação'. Expressões regulares podem ser usadas.

Exemplos de uso na seção Notas.

2. Filtro de Tipos de Rotas

Contém cada tipo de veículo encontrado em 'routes.txt'. Se 'routes.txt' contém rotas sem um tipo de rota especificado, elas terão o tipo de rota "Ônibus" como padrão.

Aqui é onde a correlação entre os tipos de rotas GTFS e os veículos Aimsun deve ser definida selecionando o veículo Aimsun a ser utilizado em cada caso. Por padrão, o diálogo tenta abrir com o veículo correto selecionado.

3. Filtro de Agências

Contém cada agência encontrada em 'agency.txt'. Se 'routes.txt' contém rotas sem um id de agência especificado, elas estarão contidas em uma agência padrão com ID "Sem Agência".

As rotas importadas são aquelas com tipos de rotas GTFS marcados e pertencentes às Agências selecionadas. Essas rotas usarão os Serviços marcados para criar os horários das Linhas de Transporte.

Resultados do Importador GTFS

O Importador GTFS criará:

  • As linhas de transporte, com suas paradas e horários na rede (dependendo das opções marcadas, pode criar apenas paradas, linhas, horários)
  • Para cada linha de transporte, os seguintes atributos são criados:
  • TripID: trip_id do arquivo 'trips.txt'.
  • RouteID: route_id do arquivo 'trips.txt'.
  • DirectionID: direction_id do arquivo 'trips.txt'.
  • StartDate: start_date do arquivo 'calendar.txt'.
  • StartTime: start_time do arquivo 'frequencies.txt'.
  • RouteColor: route_color do arquivo 'routes.txt'.
  • GTFSID: id único da rota.
  • GTFSStops: lista de paradas usadas pela linha de transporte.
  • Horários:
  • Se uma data específica for selecionada, um horário será criado se a linha tiver serviço nessa data, de acordo com 'calendar.txt' e 'calendar_dates.txt'.
  • Por padrão, o nome do horário terá um intervalo de datas e dias da semana de disponibilidade, conforme definido em 'calendar.txt'.
  • O Horário de Partida será fixo, a menos que haja informações de frequência relacionadas à linha em 'frequencies.txt'.
  • Uma camada GTFS_Stops que contém os pontos de parada, definidos em 'stops.txt'.
  • Uma camada GTFS_Shapes que contém as formas das rotas, definidas em 'shapes.txt', como polylines.
  • Uma camada GTFS_Routes que contém as polylines com o itinerário aproximado e os pontos de parada de cada linha pública criada. Se um arquivo 'shapes.txt' existir, essas polylines serão criadas a partir do arquivo 'shapes.txt' e podem ser usadas para comparar com a rota das linhas criadas. Não é necessário marcar "Formas" para incluir isso.

Notas

  • Prefixos são identificadores de linhas e horários usados como um par (linha, horário) colocados no início do nome e GTFSID. Reimportar uma linha com o mesmo(s) prefixo(s) de nome da linha (mesmo GTFSID) não mudará a rota, mas usar o mesmo prefixo de horário substituirá o horário.
  • Quando as paradas são definidas manualmente, com o ID externo correto (id da parada nos Dados GTFS), e importadas com "Formas" marcadas, então paradas que não estão na linha serão recriadas em uma seção de via que faça parte da linha.
  • Paradas definidas manualmente serão usadas para criar as linhas apenas se o ID externo for o que o Importador GTFS cria. Para corrigir o posicionamento de uma parada, basta copiar o ID externo da parada criada, apagar o ID externo e criar outra parada com esse ID externo antes de importar as linhas. Este método pode ser usado para dividir ou unir paradas pela adição ou remoção do ID externo correto.
  • Se os dados GTFS forem reimportados e as paradas estiverem presentes, assegure-se de que o ID externo das paradas corresponda ao dos dados, mas exclua a linha a ser reimportada ou use um prefixo de linha diferente.
  • O GTFSID das linhas públicas é formado pelo prefixo, o id da rota, "_", e o id de cada parada na rota no seguinte formato: "id1:id2:...:idN". No caso das formas, em vez do id de cada parada, é usado o id da forma dentro da viagem na rota.
  • Duas paradas estavam para ser colocadas na mesma seção, possivelmente causadas por uma seção muito grande, correspondência ruim ou ambas. Neste caso, no log, há um aviso que dá informações sobre se:
  • Uma seção foi criada para conter uma das paradas para evitar ter duas paradas na mesma seção
  • Se a seção era impossível de cortar devido à proximidade das paradas.
  • O aviso também contém o nome da linha de transporte GTFS usando essas paradas.
  • Ao usar "Formas", alinhar os pontos da poliline da linha com o início e o final das seções melhorará a precisão da correspondência. A importação pode ser refeita se necessário, excluindo a linha, realinhando a poliline da forma em sua camada e reimportando com o mesmo prefixo de linha.
  • Exemplos de dias e lógica:
  • Todos
    lógica de filtro GTFS Todos

  • Qualquer
    lógica de filtro GTFS Qualquer

  • Exato
    lógica de filtro GTFS Exato
    lógica de filtro GTFS exato errado

  • Exemplos de barra de pesquisa:

  • Nome completo:
    filtro de GTFS busca nome

  • Nome parcial:
    filtro de GTFS busca parcial

  • Expressão regular: ('s', encontra 's' após um limite de palavra como um espaço ou o início de uma linha).
    filtro de GTFS busca regular