Ações de Gerenciamento da API do Aimsun Next¶
Funções relacionadas a Ações de Gerenciamento¶
Ativar uma Ação de Redução de Velocidade em uma seção¶
Em C++ e Python¶
Explicação¶
Ative uma ação de alteração de velocidade em uma seção para um tipo de veículo específico e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículos. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente. As seções incluem uma tipo double atributo chamado "Applied Speed Limit" para acompanhar o limite de velocidade atual, mesmo quando forem afetadas por uma ação de tráfego de velocidade.
Formato¶
void *AKIActionAddSpeedAction (int sectionId, double newSpeed, int vehTypePos, double compliance)
void *AKIActionAddSpeedActionByID(int idAction, int nbSections, int *sectionIDs, double newSpeed, int vehTypePos, double compliance, bool considerSpeedAcceptance)
Parâmetros¶
- sectionId: O identificador da seção.
- newSpeed: A nova velocidade expressa nas unidades do modelo (Km/h ou Mph).
- 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.
- compliance: é o nível de conformidade (definido entre 0 e 1).
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- sectionIDs: Uma lista de seções (identificadas usando seus ids) onde a ação deve ser aplicada.
- nbSections: Tamanho da lista de seções em que a ação deve ser aplicada.
- considerSpeedAcceptance: true quando a nova velocidade sobrescreve o limite de velocidade da seção e false quando a nova velocidade sobrescreve o limite de velocidade da seção x a aceitação do limite de velocidade do veículo. Neste segundo caso, nenhum veículo trafegará mais rápido que a nova velocidade, independentemente do valor de sua aceitação do limite de velocidade.
Saída¶
- !=NULL: ponteiro para a ação, que será necessário para desativar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma ação de alteração de velocidade para uma faixa ou segmento de seção¶
Em C++ e Python¶
Explicação¶
Ative uma ação de alteração de velocidade em uma seção para apenas uma faixa ou um segmento por tipo específico de veículo e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículos. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void *AKIActionAddDetailedSpeedAction(int sectionId, int laneId, int segmentId, double newSpeed, int vehTypePos, double compliance, bool considerSpeedAcceptance)
void *AKIActionAddDetailedSpeedActionByID(int idAction, int nbSections, int *sectionIDs, int laneId, int fromSegmentId, int toSegmentId, double newSpeed, int vehTypePos, double compliance, bool considerSpeedAcceptance)
Parâmetros¶
- sectionId: O identificador da seção
- laneId: O identificador da faixa (-1 para todas as faixas, 1 para a faixa mais à direita e N, onde N é o número de faixas na seção, para a faixa mais à esquerda).
- segmentId: O identificador do segmento se apenas um segmento da seção for afetado pela ação (-1 para todos os segmentos, 1 para o primeiro segmento que os veículos encontram ao cruzar a seção, e N, em que N é o número de segmentos, para o último segmento que os veículos encontram ao cruzar a seção).
- newSpeed: A nova velocidade expressa nas unidades do modelo (Km/h ou Mph)
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- compliance: O nível de conformidade (definido entre 0 e 1)
- considerSpeedAcceptance: true quando a nova velocidade sobrescreve o limite de velocidade da seção e false quando a nova velocidade sobrescreve o limite de velocidade da seção e a aceitação do limite de velocidade do veículo. Neste segundo caso, nenhum veículo trafegará mais rápido que a nova velocidade, independentemente do valor de sua aceitação do limite de velocidade.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- sectionIDs: Uma lista de seções (identificadas usando seus ids) onde a ação deve ser aplicada.
- nbSections: Tamanho da lista de seções em que a ação deve ser aplicada.
Saída¶
- !=NULL: ponteiro para a ação, que será necessário para desativar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Redução de Velocidade para um movimento de conversão¶
Em C++ e Python¶
Explicação¶
Ativa uma ação de alteração de velocidade em um movimento de conversão para um tipo de veículo específico e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void *AKIActionAddTurnSpeedActionByID(int idAction, int nbTurns, int * turnIDs, double newSpeed, int vehTypePos, double compliance, bool considerSpeedAcceptance)
Parâmetros¶
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- nbTurns: Tamanho da lista de movimentos de conversão em que a ação deve ser aplicada.
- turnIDs: Uma lista de movimentos de conversão (identificados usando seus ids) onde a ação deve ser aplicada.
- newSpeed: A nova velocidade expressa nas unidades do modelo (Km/h ou Mph).
- 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.
- compliance: é o nível de conformidade (definido entre 0 e 1).
- considerSpeedAcceptance: true quando a nova velocidade sobrescreve o limite de velocidade da seção e false quando a nova velocidade sobrescreve o limite de velocidade da seção x a aceitação do limite de velocidade do veículo. Neste segundo caso, nenhum veículo trafegará mais rápido que a nova velocidade, independentemente do valor de sua aceitação do limite de velocidade.
Saída¶
- !=NULL: ponteiro para a ação, que será necessário para desativar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Fechamento de Faixa¶
Em C++ e Python¶
Explicação¶
Ativa uma ação de fechamento de faixa em uma seção para um tipo de veículo específico. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículos. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente. Ao usar esta função, o fechamento de faixa criado considerará o modelo de car-following de 2 faixas. Se essa não for a ação necessária, consulte a função AKIActionCloseLaneDetailedAction em vez disso.
Formato¶
void *AKIActionCloseLaneAction (int sectionId, int alane, int vehTypePos)
void * AKIActionCloseLaneActionByID(int idAction, int sectionId, int alane, int vehTypePos);
Parâmetros¶
- sectionId: O identificador da seção
- alane: O id da faixa a fechar (1 faixa mais à direita, n é a faixa mais à esquerda)
- 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.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Fechamento de Faixa especificando se deve aplicar o modelo de car-following de 2 faixas¶
Em C++ e Python¶
Explicação¶
Ativa uma ação de fechamento de faixa em uma seção para um tipo de veículo específico. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. Também pode ser especificado se o modelo de car-following de 2 faixas deve ser aplicado ou não. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void * AKIActionCloseLaneDetailedAction(int sectionId, int alane, int VehTypePos, bool apply2LanesCF, double visibilityDistance );
void * AKIActionCloseLaneDetailedActionByID(int idAction, int sectionId, int alane, int vehTypePos, bool apply2LanesCF, double visibilityDistance );
Parâmetros¶
- sectionId: O identificador da seção
- alane: O id da faixa a fechar
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- apply2LanesCF: True se o modelo de car following de 2 faixas deve ser considerado e false caso contrário.
- visibilityDistance: A distância na qual o fechamento de faixa começará a ficar visível para os veículos. 200 metros é o valor padrão ao criar uma ação de fechamento de faixa usando a interface gráfica do usuário.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Fechamento de Faixa para um segmento¶
Em C++ e Python¶
Explicação¶
Ativa uma ação de fechamento de faixa em uma seção para um tipo de veículo específico e para um grupo de segmentos. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. Também pode ser especificado se o modelo de car following de 2 faixas deve ser aplicado ou não. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void *AKIActionCloseLaneActionBySegment (int sectionId, int alane, int segmentFromId, int segmentToId, int vehTypePos, bool apply2LanesCF, double visibilityDistance )
void * AKIActionCloseLaneActionBySegmentByID(int idAction, int sectionId, int alane, int ang_segmentFromId, int ang_segmentToId, int vehTypePos, bool apply2LanesCF, double visibilityDistance);
Parâmetros¶
- sectionId: O identificador da seção
- alane: O id da faixa a fechar
- segmentFromId: A posição do primeiro segmento (de 0 até número de segmentos -) em que a ação de fechamento de faixa será aplicada.
- segmentToId: A posição do último segmento (de 0 a número de segmentos -) onde a ação de fechar faixa será aplicada.
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- apply2LanesCF: True se o modelo de car following de 2 faixas deve ser considerado e false caso contrário.
- visibilityDistance: A distância na qual o fechamento de faixa começará a ficar visível para os veículos. 200 metros é o valor padrão ao criar uma ação de fechamento de faixa usando a interface gráfica do usuário.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação Force Next Turn¶
Em C++ e Python¶
Explicação¶
Ativa uma ação "force next turn" em uma seção para um tipo de veículo específico e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void * AKIActionAddForceTurningODActionByID( int idAction, int sectionId, const std::vector<A2KDestinationProportion*>& aNextSections, const std::vector<int> & aOrigin, const std::vector<int> & aDest, int vehType, int aSectionInPath, double aComplianceLevel, double visibilityDistance )
void * AKIActionAddForceTurningODSubPathActionByID( int idAction, int sectionId, const std::vector<A2KDestinationProportion*>& aNextSections, const std::vector<int> & aOrigin, const std::vector<int> & aDest, int vehType, int aSectionInPath, double aComplianceLevel, double visibilityDistance )
void * AKIActionAddForceTurningResultActionByID( int idAction, int sectionId, int aOldNextSection, const std::vector<A2KDestinationProportion*>& aNewNextSections, int vehType, double aComplianceLevel )
void * AKIActionAddForceTurningResultSubPathActionByID( int idAction, int sectionId, const std::vector<A2KDestinationProportion*>& aNewNextSections, int vehType, double aComplianceLevel )
Funções obsoletas que devem ser atualizadas com as acima:
void * AKIActionAddNextTurningODAction (int fromSectionId, int toSectionId, int originCent, int destCent, int vehTypePos, int sectionInPath, double compliance, double visibilityDistance)
void * AKIActionAddNextTurningODActionByID(int idAction, int sectionId, int anextSection, int aOrigin, int aDest, int VehType, int asectionInPath, double acomplianceLevel, double visibilityDistance);
void * AKIActionAddNextTurningResultAction (int fromSectionId, int oldToSectionId, int toSectionId, int vehTypePos, double compliance)
void * AKIActionAddNextTurningResultActionByID(int idAction, int sectionId, int aoldNextSection, int anewNextSection, int VehType, double acomplianceLevel);
As funções AKIActionAddForceTurningODActionByID e AKIActionAddForceTurningODSubPathActionByID (bem como as antigas AKIActionAddNextTurningODAction e AKIActionAddNextTurningODActionByID) são usadas quando a demanda de tráfego é baseada em Matrizes OD. As funções AKIActionAddForceTurningResultActionByID e AKIActionAddForceTurningResultSubPathActionByID (bem como as antigas AKIActionAddNextTurningResultAction e AKIActionAddNextTurningResultActionByID) são usadas quando a demanda de tráfego é baseada em estados de tráfego.
Parâmetros¶
- fromSectionId: A origem do identificador da seção do movimento de conversão.
- toSectionId: O novo identificador da próxima seção de destino do movimento de conversão.
- oldToSectionId: O identificador da seção de destino dos veículos que serão afetados por esta mudança (-1 significa não considerar o movimento de conversão atual do veículo).
- originCent: O vetor de identificadores de centroides de origem para forçar o próximo movimento de conversão. Todos os veículos com qualquer uma dessas origens podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar as origens).
- destCent: O vetor de identificadores de centroides de destino para forçar o próximo movimento de conversão. Todos os veículos com qualquer um destes destinos podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar os destinos).
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- sectionInPath: O identificador da seção que significa (usando apenas ODs) que a ação é aplicada quando esta seção está no caminho do veículo (-1 significa não considerar nenhuma seção específica).
- compliance: O nível de conformidade, definido como probabilidade entre 0 e 1.
- visibilityDistance: A distância na qual o movimento de conversão forçado começará a ficar visível para os veículos. 200 metros é o valor padrão ao criar uma ação de movimento de conversão forçado usando a interface gráfica do usuário.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma ação Force Next Turn seguindo uma sub-rota¶
Somente em C++¶
Explicação¶
Ativa uma ação "force next turn" em uma seção para um tipo de veículo específico e um nível de conformidade. Os veículos seguirão a sub-rota definida. No caso em que o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void * AKIActionAddNextSubPathODAction(int sectionId, int nbNextSections , int * nextSections, int originCent, int destCent, int vehTypePos, int sectionInPath, double compliance, double visibilityDistance);
void * AKIActionAddNextSubPathODActionByID(int actionId, int ang_sectionId, int nbNextSections, int * anextSections, int aOrigin, int aDest, int VehType, int asectionInPath, double acomplianceLevel, double visibilityDistance);
void * AKIActionAddNextSubPathResultAction(int sectionId, int nbNextSections, int * nextSections, int vehTypePos, double compliance);
void * AKIActionAddNextSubPathResultActionByID(int actionId, int ang_sectionId, int nbNextSections, int * anextSections, int VehType, double acomplianceLevel);
As funções AKIActionAddNextSubPathODAction e AKIActionAddNextSubPathODActionByID são usadas quando a demanda de tráfego é baseada em Matrizes OD. As funções AKIActionAddNextSubPathResultAction e AKIActionAddNextSubPathResultActionByID são usadas quando a demanda de tráfego é baseada em estados de tráfego.
Parâmetros¶
- sectionId: O identificador da seção.
- nextSections: Uma lista de seções consecutivas (identificadas usando seus ids) que definem a rota que o veículo seguirá após ser desviado.
- originCent: O identificador do centroide de origem para forçar o próximo movimento de conversão. Todos os veículos com essa origem podem seguir a ação dependendo do nível de conformidade (-1 significa não considerar a origem)
- destCent: O identificador do centroide de destino para forçar o próximo movimento de conversão. Todos os veículos com este destino podem seguir a ação dependendo do nível de conformidade (-1 significa não considerar o destino).
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- sectionInPath: O identificador da seção que significa que a ação é aplicada quando esta seção está no caminho do veículo - somente se os veículos estiverem usando demanda de tráfego OD.
- compliance: O nível de conformidade (definido entre 0 e 1).
- visibilityDistance: A distância na qual o movimento de conversão forçado começará a ficar visível para os veículos. 200 metros é o valor padrão ao criar uma ação de movimento de conversão forçado usando a interface gráfica do usuário.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Alteração de Centroide de Destino¶
Em C++ e Python¶
Explicação¶
Ativa uma ação de "alterar o centroide de destino" em uma seção para um tipo de veículo específico e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void *AKIActionAddChangeDestAction (int sectionId, int anewDest, const std::vector<int>& originCent, const std::vector<int>& destCent, int vehTypePos, double compliance)
void *AKIActionAddChangeDestActionByID (int idAction, int sectionId, const std::vector<A2KDestinationProportion*>& aNextSections, const std::vector<int>& originCent, const std::vector<int>& destCent, int vehTypePos, double compliance)
Parâmetros¶
- sectionId: O identificador da seção.
- anewDest: O identificador do novo centroide de destino.
- originCent: O vetor de identificadores de centroides de origem aos quais aplicar a ação. Todos os veículos com qualquer uma dessas origens podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar as origens).
- destCent: O vetor de identificadores de centroides de destino aos quais aplicar a ação. Todos os veículos com qualquer um desses destinos podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar os destinos).
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- compliance: O nível de conformidade (definido entre 0 e 1).
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- nbNewDests: O número de itens na lista de proporções de destino.
- newDests: Lista de proporções de centroides de destino.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Alteração de Destino Park and Ride¶
Somente em C++¶
Explicação¶
Ativa uma "ação de alteração do destino park and ride" em uma seção para um tipo de veículo específico e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use o ID especificado para desativar a ação posteriormente.
Formato¶
void *AKIActionAddChangeDestParkRideActionByID(int idAction, int sectionId, const std::vector
Parâmetros¶
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- sectionId: O identificador da seção.
- nbNewDests: O número de itens na lista de proporções de destino.
- newDests: Lista de proporções de centroides de destino.
- originCent: O vetor de identificadores de centroides de origem aos quais aplicar a ação. Todos os veículos com qualquer uma dessas origens podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar as origens).
- destCent: O vetor de identificadores de centroides de destino aos quais aplicar a ação. Todos os veículos com qualquer um desses destinos podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar os destinos).
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- compliance: O nível de conformidade (definido entre 0 e 1).
- scaleFactor: O fator de escala logit para calcular as probabilidades de escolha.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Ativar uma Ação de Alteração da Probabilidade de Movimento de Conversão¶
Somente em C++¶
Explicação¶
Ative uma alteração da probabilidade de movimento de conversão em uma seção para um tipo de veículo específico. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use o ID especificado para desativar a ação posteriormente. Para usar esta função, a demanda deve ser composta por estados de tráfego.
Formato¶
void *AKIActionChangeTurningProbAction (int sectionId, int nbnewProb, int *anextSection, int *anewProb, int vehTypePos)
Parâmetros¶
- sectionId: O identificador da seção.
- nbnewProb: O número de probabilidades a alterar. Deve corresponder ao número de movimentos de conversão que saem da seção.
- anextSection: Um array que contém os identificadores das próximas seções (o tamanho do array deve ser igual a nbnewProb).
- anewProb: Um array que contém as novas probabilidades para as próximas seções (o tamanho do array deve ser igual a nbnewProb). As probabilidades devem estar entre 0 e 1.
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser 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¶
- !=NULL: ponteiro da ação, que será necessário para desativar a ação posteriormente.
- = NULL: Erro
Adicionar uma Ação de Desativação de Faixa Reservada¶
Em C++ e Python¶
Explicação¶
Ativa uma ação Deactivate Reserved Lane em uma seção para uma faixa e um segmento específicos. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use a função ByID e use o ID especificado para desativar a ação posteriormente.
Formato¶
void * AKIActionDisableReservedLaneAction(int sectionId, int alane, int ang_segmentId);
void * AKIActionDisableReservedLaneActionByID(int idAction, int sectionId, int alane, int ang_segmentId);
Parâmetros¶
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- sectionId: O identificador da seção
- alane: O id da faixa reservada a ser desativada
- ang_segmentId: A posição do segmento (de 0 até número de segmentos - 1, ou -1 para todos eles) onde a ação de desativar faixa reservada será aplicada.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação posteriormente em C++.
- = NULL: Erro
Adicionar uma Ação de Atualização Forçada de Caminho¶
Em C++ e Python¶
Explicação¶
Ative uma ação Force Path Update em uma seção para um tipo de veículo específico e um nível de conformidade. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículo. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use o ID especificado para desativar a ação posteriormente.
Formato¶
void *AKIActionAddEnRouteAssignmentAction(int idAction, int sectionId, int sectionInPath, const std::vector<int> & originCent, const std::vector<int> & destCent, int vehTypePos, double compliance, bool reevaluateAction, int routeChoiceType, double routeChoiceParam1, double routeChoiceParam2, double routeChoiceParam3)
Parâmetros¶
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- sectionId: O identificador da seção
- sectionInPath: O identificador da seção indicando que a ação é aplicada quando esta seção está no caminho do veículo - somente se os veículos estiverem usando demanda de tráfego OD.
- originCent: O vetor de identificadores de centroides de origem para forçar a atualização do caminho. Todos os veículos com qualquer uma dessas origens podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar as origens).
- destCent: O vetor de identificadores de centroides de destino para forçar a atualização de rota. Todos os veículos com qualquer um desses destinos podem seguir a ação, dependendo do nível de conformidade (vazio significa não considerar os destinos).
- vehTypePos: A posição do tipo de veículo na lista de tipos de veículos em uso. 0 deve ser usado para todos os tipos de veículos e um valor de 1 a AKIVehGetNbVehTypes (), para um tipo de veículo específico.
- compliance: O nível de conformidade, definido como probabilidade entre 0 e 1.
- reevaluateAction: A opção para atualizar o caminho dos veículos toda vez que o tempo de viagem é atualizado.
- routeChoiceType: O tipo de escolha de rota (0 para distribuição fixa, 1 para tempo fixo, 2 para binomial, 3 para proporcional, 4 para Logit, 5 para C-Logit, 6 para definido pelo usuário e 7 para DUE).
- routeChoiceParam1: Primeiro parâmetro de escolha de rota (por exemplo, probabilidade para o tipo de escolha de rota binomial ou atributo de escala para Logit e C-Logit).
- routeChoiceParam2: Segundo parâmetro de escolha de rota (por exemplo, alpha no tipo de escolha de rota C-Logit) - definido como 0 se for irrelevante para o tipo de escolha de rota de entrada.
- routeChoiceParam3: Terceiro parâmetro de escolha de rota (por exemplo, gamma no tipo de escolha de rota C-Logit) - defina como 0 se for irrelevante para o tipo de escolha de rota de entrada.
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desativar a ação posteriormente.
- = NULL: Erro
Ativar uma Ação de Fechar Movimento de Conversão¶
Em C++ e Python¶
Explicação¶
Ativa o fechamento de movimento de conversão em um movimento de conversão por um tipo de veículo específico. Caso o tipo de veículo seja 0, a ação é aplicada a todos os tipos de veículos. O void * retornado deve ser usado para desativar a ação em C++. Em Python, use o ID especificado na função ByID para desativar a ação posteriormente.
Formato¶
void * AKIActionAddCloseTurningODAction(int fromSectionId, int toSectionId, const std::vector<int>* aOrigin, const std::vector<int>* aDest, int vehTypePos, double compliance, double visibilityDistance, bool localEffect, int sectionAffectingPathCostId );
void * AKIActionAddCloseTurningODActionByID(int idAction, int sectionId, int anewSection2Close, const std::vector<int>* aOrigin, const std::vector<int>* aDest, int vehType, double acomplianceLevel, double visibilityDistance, bool localEffect, int sectionAffectingPathCostId );
Parâmetros¶
- fromSectionId: O identificador da seção de origem do movimento de conversão.
- toSectionId: O identificador da seção de destino do movimento de conversão.
- originCent: O vetor de identificadores de centroides de origem para forçar o fechamento do movimento de conversão. Todos os veículos com qualquer uma dessas origens podem seguir a ação dependendo do nível de conformidade (vazio significa não considerar as origens)
- destCent: O vetor de identificadores de centroides de destino para forçar o fechamento do movimento de conversão. Todos os veículos com qualquer um desses destinos podem seguir a ação, dependendo do nível de conformidade (vazio significa não considerar os destinos)
- 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.
- compliance: é o nível de conformidade (definido entre 0 e 1).
- visibilityDistance: A distância na qual o close turn começará a ficar visível para os veículos. 200 metros é o valor padrão ao criar uma ação de close turn usando a interface gráfica do usuário.
- localEffect: Verdadeiro quando a ação não afetará diretamente os cálculos de escolha de rota, pois o veículo perceberá que o movimento de conversão está fechado ao alcançá-lo. É falso quando há conhecimento global de que o movimento de conversão está fechado, de modo que isso seja considerado no cálculo da rota. É verdadeiro por padrão.
- idAction: Um identificador único para a ação que será usado ao desativá-la. Certifique-se de que o ID especificado não pertença a nenhuma outra ação já existente.
- sectionAffectingPathCostId: Identificador da seção destinada a afetar o custo de cálculo do caminho quando o caminho vem dela (-1 significa não considerar uma seção específica)
Saída¶
- !=NULL: ponteiro da ação, que será necessário para desabilitar a ação ou modificar seu nível de conformidade posteriormente.
- = NULL: Erro
Desativar uma ação¶
Em C++ e Python¶
Explicação¶
Desative uma ação previamente ativada. O parâmetro necessário é o ponteiro retornado quando a ação é habilitada.
Formato¶
void AKIActionRemoveAction (void *anaction)
void AKIActionRemoveActionByID (int idAction)
Parâmetros¶
- anaction: O ponteiro para a ação retornada quando a ação foi ativada.
- idAction: O identificador da ação retornado quando a ação foi ativada. Se a ação foi criada usando uma função byID, então ele é o id especificado na criação da ação.
Saída¶
- none
Desativar todas as Ações ativadas¶
Em C++ e Python¶
Explicação¶
Desative todas as ações previamente ativadas.
Formato¶
void AKIActionReset ()
Parâmetros¶
- none
Saída¶
- none
Modificar o nível de conformidade de uma ação Force Next Turn¶
Em C++ e Python¶
Explicação¶
Modifica o nível de conformidade de uma ação force next turn previamente ativada. O void * retornado ao ativar a ação deve ser usado para modificar o nível de conformidade da ação em C++. Em Python, use o ID especificado na função ByID ao criá-la para modificar o nível de conformidade.
Formato¶
void AKIActionModifyNextTurningODAction( void * action, double compliance);
void AKIActionModifyNextTurningODActionByID( int idAction, double compliance);
void AKIActionModifyNextTurningResultAction( void * action, double compliance);
void AKIActionModifyNextTurningResultActionByID( int idAction, double compliance);
A função AKIActionModifyNextTurningODAction é usada quando a demanda de tráfego é baseada em Matrizes OD, e a função AKIActionModifyNextTurningResultAction é usada quando a demanda de tráfego é baseada em estados de tráfego.
Parâmetros¶
- ação O ponteiro para a ação que foi retornada ao ativar a ação.
- idAction: O identificador da ação retornado quando a ação foi ativada. Se a ação foi criada usando uma função byID, então ele é o id especificado na criação da ação.
- conformidade O novo nível de conformidade (definido entre 0 e 1).
Saída¶
None
Modificar o nível de conformidade de uma ação Force Next Turn seguindo uma sub-rota¶
Em C++ e Python¶
Explicação¶
Modifica o nível de conformidade de uma ação force next turn previamente ativada seguindo uma sub-rota. O void * retornado ao ativar a ação deve ser usado para modificar o nível de conformidade da ação em C++. Em Python, use o ID especificado na função ByID ao criá-la para modificar o nível de conformidade.
Formato¶
void AKIActionModifyNextSubPathODAction ( void * action, double compliance);
void AKIActionModifyNextSubPathODActionByID ( int idAction, double compliance);
void AKIActionModifyNextSubPathResultAction ( void * action, double compliance);
void AKIActionModifyNextSubPathResultActionByID ( int idAction, double compliance);
A função AKIActionModifyNextSubPathODAction é usada quando a demanda de tráfego é baseada em Matrizes OD, e a função AKIActionModifyNextSubPathResultAction é usada quando a demanda de tráfego é baseada em estados de tráfego.
Parâmetros¶
- ação O ponteiro para a ação que foi retornada ao ativar a ação.
- idAction: O identificador da ação retornado quando a ação foi ativada. Se a ação foi criada usando uma função byID, então ele é o id especificado na criação da ação.
- conformidade O novo nível de conformidade (definido entre 0 e 1).
Saída¶
- none
Modificar o nível de conformidade de uma ação de alteração do centroide de destino¶
Em C++ e Python¶
Explicação¶
Modifica o nível de conformidade de uma ação de alteração de centroide de destino ativada anteriormente. O void * retornado ao ativar a ação deve ser usado para modificar o nível de conformidade da ação em C++. Em Python, use o ID especificado na função ByID ao criá-la para modificar o nível de conformidade.
Formato¶
void AKIActionModifyChangeDestAction ( void * action, double compliance);
void AKIActionModifyChangeDestActionByID ( int idAction, double compliance);
Parâmetros¶
- ação O ponteiro para a ação que foi retornada ao ativar a ação.
- idAction: O identificador da ação retornado quando a ação foi ativada. Se a ação foi criada usando uma função byID, então ele é o id especificado na criação da ação.
- conformidade O novo nível de conformidade (definido entre 0 e 1).
Saída¶
None
Modificar o nível de conformidade de uma Ação de Fechamento de Movimento de Conversão¶
Em C++ e Python¶
Explicação¶
Modifica o nível de conformidade de uma ação de fechamento de movimento de conversão previamente ativada. O void * retornado ao ativar a ação deve ser usado para modificar o nível de conformidade da ação em C++. Em Python, use o ID especificado na função ByID ao criá-la para modificar o nível de conformidade.
Formato¶
void AKIActionModifyCloseTurningODAction( void * action, double compliance);
void AKIActionModifyCloseTurningODActionByID( int idAction, double compliance);
Parâmetros¶
- ação: O ponteiro para a ação que foi retornada ao ativar a ação
- idAction: O identificador da ação retornado quando a ação foi ativada. Se a ação foi criada usando uma função byID, então ele é o id especificado na criação da ação.
- compliance: O novo nível de conformidade (definido entre 0 e 1)
Saída¶
None
Modificar o nível de conformidade de uma ação Force Path Update¶
Em C++ e Python¶
Explicação¶
Modifica o nível de conformidade de uma ação Force Path Update ativada anteriormente. O void * retornado ao ativar a ação deve ser usado para modificar o nível de conformidade da ação em C++. Em Python, use o ID especificado na função ByID ao criá-la para modificar o nível de conformidade.
Formato¶
void AKIActionModifyEnRouteAssignmentAction( void * action, double compliance);
void AKIActionModifyEnRouteAssignmentActionByID( int idAction, double compliance);
Parâmetros¶
- ação: O ponteiro para a ação que foi retornada ao ativar a ação
- idAction: O identificador da ação retornado quando a ação foi ativada. Se a ação foi criada usando uma função byID, então ele é o id especificado na criação da ação.
- compliance: O novo nível de conformidade (definido entre 0 e 1)
Saída¶
None
Ler o número de Ações de Cenário¶
Em C++ e Python¶
Explicação¶
Lê o número de ações de gerenciamento de tráfego selecionadas no cenário atual.
Formato¶
int AKIGetNbScenarioActions();
Saída¶
O número de ações de gestão de tráfego (incidentes, fechamentos de movimentos de conversão etc.) selecionadas no cenário (ou no experimento, no caso de estratégias).
Ler os identificadores de Ação do Cenário¶
Em C++ e Python¶
Explicação¶
Lê os identificadores de ações de gerenciamento de tráfego que estão selecionados no cenário atual.
Formato¶
int AKIGetScenarioActions ( int * actions );
Parâmetros¶
- ações Um vetor de tamanho AKIGetNbScenarioActions.
Saída¶
Actions contém os identificadores de ações de gerenciamento de tráfego (incidentes, fechamentos de movimentos de conversão etc.) selecionados no cenário (ou no experimento, no caso de estratégias).
Ler se uma Ação de Gerenciamento de Tráfego está ativa ou não¶
Em C++ e Python¶
Explicação¶
Lê se a ação de gerenciamento de tráfego fornecida está ativa ou não.
Formato¶
bool AKIIsActionActive( int actionId )
Parâmetros¶
- actionId: O identificador da ação de gerenciamento de tráfego.
Saída¶
- True: a ação está ativada.
- False: a ação não está ativada ou não está selecionada no cenário.
Ler o tipo de Ação de Gerenciamento de Tráfego¶
Em C++ e Python¶
Explicação¶
Lê o tipo de ação de gerenciamento de tráfego.
Formato¶
int AKIGetActionType( int actionId )
Parâmetros¶
- actionId: O identificador da ação de gerenciamento de tráfego.
Saída¶
- O tipo de gestão de tráfego.
- -1: erro
- 0: Fechamento de faixa
- 1: Redução de velocidade
- 2: Movimento de conversão forçado
- 3: Alteração de Destino
- 4: Incidente na Seção
- 6: Fechamento de Movimento de Conversão
- 7: Mudança de Plano de Controle
- 8: Incidente Periódico em Seção
- 9: Alteração dos Parâmetros Comportamentais da Seção
- 11: Desativação de Faixa Reservada
- 16: Forçar Atualização de Caminho
- 17: Ativação do Modelo de Cooperação de Movimentos de Conversão
- 18: Alteração de Park and Ride