Informações sobre Tipos de Veículos da API Aimsun Next¶
Funções relacionadas às Informações dos Tipos de Veículos¶
Ler Número de Tipos de Veículos¶
Em C++ e Python¶
Explicação¶
Lê o número total de tipos de veículos. Se o Transporte Público estiver modelado, isso inclui os tipos de veículos de transporte.
Formato¶
int AKIVehGetNbVehTypes ()
Parâmetros¶
Nenhum
Saída¶
- > 0: Número total de tipos de veículos
- < 0: Erro
Ler o Nome de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Lê o nome de um Tipo de Veículo em utf16 e \0 terminado. O resultado deve ser deletado com delete().
Formato:¶
const unsigned short *AKIVehGetVehTypeName(int vehTypePos);
Parâmetros¶
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso, no intervalo de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
Saída¶
- ≠ NULL: nome do tipo de veículo
- = NULL: Erro
A utilização recomendada nas APIs Python é:
anyNonAsciiChar = boolp()
AKIConvertToAsciiString(AKIVehGetVehTypeName(vehTypePos), True, anyNonAsciiChar))
Ler o ID do Tipo de Veículo usando a Posição de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Lê o ID do tipo de veículo dado a posição do tipo de veículo na lista de tipos de veículos.
Formato¶
int AKIVehTypeGetIdVehTypeANG (int vehTypePos );
Parâmetros¶
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso, no intervalo de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
Saída¶
- >0: O ID do tipo de veículo
- -1: Nenhum tipo de veículo com a posição fornecida encontrado
Ler a Posição de um Tipo de Veículo usando o ID do Tipo de Veículo ¶
Em C++ e Python¶
Explicação¶
Lê a posição de um Tipo de Veículo dado o identificador do tipo de veículo.
Formato:¶
int AKIVehGetVehTypeInternalPosition (int aimsunVehicleTypeId );
Parâmetros¶
- aimsunVehicleTypeId: O identificador do tipo de veículo.
Saída¶
- > 0: Um valor de 1 até o número total de tipos de veículos
- < 0: Nenhum veículo com o nome fornecido encontrado
Ler a Posição de um Tipo de Veículo usando o Nome do Tipo de Veículo¶
O nome de um tipo de veículo, como é editado pelo usuário, pode não ser único. No entanto, o ID é sempre único. Portanto, é recomendado que o AKIVehGetVehTypeInternalPosition seja usado, como explicado acima, para obter a posição de um tipo de veículo.
Se houver necessidade de acessar a posição do tipo de veículo a partir do nome do tipo de veículo, as seguintes funções podem ser usadas. Como exemplo, para obter a posição interna do veículo para o tipo de veículo 'carro' em uma API Python, o código seria:
idVeh = ANGConnGetObjectIdByType( AKIConvertFromAsciiString( "carro" ), AKIConvertFromAsciiString( "GKVehicle" ), False )
vehPos = AKIVehGetVehTypeInternalPosition( idVeh )
Isso usa a função ANGConnGetObjectIdByType e a AKIVehGetVehTypeInternalPosition
Ler o Comprimento Mínimo e o Comprimento Máximo de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Lê o comprimento mínimo e máximo do tipo de veículo
Formato¶
double AKIVehGetMinLengthVehType (int vehTypePos)
double AKIVehGetMaxLengthVehType (int vehTypePos)
Parâmetros¶
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 é usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
Saída¶
- > 0: O Comprimento Mínimo e o Comprimento Máximo do tipo de veículo.
- < 0: Erro
Ler se o comportamento de Mudança de Faixa Imprudente está ativado ou não¶
Em C++ e Python¶
Explicação¶
Lê se um tipo de veículo tem o comportamento de Mudança de Faixa Imprudente ativado.
Formato¶
bool AKIVehTypeGetImprudentLaneChanging( int idVehicleType )
Parâmetros¶
- idVehicleType: Identificador do Tipo de Veículo.
Saída¶
- True: O tipo de veículo tem o comportamento de Mudança de Faixa Imprudente ativo.
- False: O tipo de veículo não tem o comportamento de Mudança de Faixa Imprudente ativo.
Ativar/desativar o comportamento de Mudança de Faixa Imprudente de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Ativa/desativa o comportamento de Mudança de Faixa Imprudente de um tipo de veículo.
Formato¶
int AKIVehTypeSetImprudentLaneChanging( int idVehType, bool value )
Parâmetros¶
- idVehType: Identificador do Tipo de Veículo.
- value: True para ativar o comportamento de Mudança de Faixa Imprudente, falso caso contrário.
Saída¶
- 0: OK
- < 0: Erro
Ler o Percentual para Permanecer na Faixa Rápida de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Lê o percentual especificado para permanecer em uma faixa rápida após uma mudança de faixa de um tipo de veículo.
Formato¶
double AKIVehTypeGetPercentageForStayingInFastLane ( int idVehType )
Parâmetros:
- idVehType: Identificador do Tipo de Veículo.
Saída¶
- > 0: O Percentual do tipo de veículo para permanecer na faixa rápida após uma ultrapassagem.
- < 0: Erro
Modificar o Percentual de Permanência na Faixa Rápida de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Modifica o percentual especificado para permanecer em uma faixa rápida após uma mudança de faixa de um tipo de veículo.
Formato¶
int AKIVehTypeSetPercentageForStayingInFastLane ( int idVehType, double newPercentage )
Parâmetros¶
- idVehType: Identificador do Tipo de Veículo.
- newPercentage: Valor entre 0 e 100 para definir o novo percentual que será utilizado a partir do momento em que a função for chamada.
Saída¶
- 0: OK
- < 0: Erro
Ler o Limite de Velocidade de Ultrapassagem de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Lê o limite de velocidade de ultrapassagem de um tipo de veículo.
Formato¶
double AKIVehTypeGetOvertakeSpeedThreshold ( int idVehType )
Parâmetros¶
- idVehType: Identificador do Tipo de Veículo.
Saída¶
- > 0: O limite de velocidade de ultrapassagem do tipo de veículo.
- < 0: Erro
Modificar o Limite de Velocidade de Ultrapassagem de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Modifica o limite de velocidade de ultrapassagem de um tipo de veículo.
Formato¶
int AKIVehTypeSetOvertakeSpeedThreshold ( int idVehicleType, double newPercentage )
Parâmetros¶
- idVehType: Identificador do Tipo de Veículo.
- newPercentage: Valor entre 0 e 100 para definir o novo limite de velocidade de ultrapassagem que será utilizado a partir do momento em que a função for chamada.
Saída¶
- 0: OK
- < 0: Erro
Ler o Limite de Velocidade de Recuperação de Faixa de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Lê o limite de velocidade de recuperação de faixa de um tipo de veículo.
Formato¶
double AKIVehTypeGetLaneRecoverySpeedThreshold ( int idVehType )
Parâmetros¶
- idVehType: Identificador do Tipo de Veículo.
Saída¶
- > 0: O limite de velocidade de recuperação de faixa do tipo de veículo.
- < 0: Erro
Modificar o Limite de Velocidade de Recuperação de Faixa de um Tipo de Veículo¶
Em C++ e Python¶
Explicação¶
Modifica o limite de velocidade de recuperação de faixa de um tipo de veículo.
Formato¶
int AKIVehTypeSetLaneRecoverySpeedThreshold ( int idVehicleType, double newPercentage )
Parâmetros¶
- idVehType: Identificador do Tipo de Veículo.
- newPercentage: Valor entre 0 e 100 para definir o novo limite de velocidade de recuperação de faixa que será utilizado a partir do momento em que a função for chamada.
Saída¶
- 0: OK
- < 0: Erro