Atualizando Scripts Para Novas Versões¶
Mudanças no Aimsun Next 24.0.1¶
A seguir está uma lista de todas as classes e funções que mudaram ou foram adicionadas após a liberação do Aimsun Next 23.0.1. As classes com mudanças são:
Classe GKObject¶
As funções
virtual void clearDataValueTS( const GKColumn * attr, GKTSDescription * aDescription = nullptr );
void clearDataValueTSByID( uint attrId, GKTSDescription * aDescription = nullptr );
virtual void clearDataValueTS( const GKColumn * attr );
void clearDataValueTSByID( uint attrId );
Uma nova função para criação e inicialização de uma Série Temporal foi adicionada com a seguinte assinatura:
GKTimeSerie* createDataValueTS(const GKColumn* attr, GKTSDescription* aDescription);
Essa função apenas cria a Série Temporal se a coluna associada não tiver uma série temporal já criada. Se já existir, a função retornará a Série Temporal sem fazer nenhuma alteração em seus valores.
Mudanças no Aimsun Next 24¶
A seguir está uma lista de todas as funções que mudaram entre Aimsun Next 23 e Aimsun Next 24 a fim de ajudar a atualizar scripts antigos facilmente. As classes com mudanças são:
- GKControllerParsOCIT
- GKControllerParsVSPLUS
- GKControllerParsSitrafficOffice
- GKControlJunction
- GKFilePath
- GKFunctionCostContext
- GKNode
- GKObject
- GKTrafficDemand
- GKTrafficState
- GKScenarioInputData
- GKSection
- GKSystem
- DynamicDepartureAdjustmentExperimentResult
- DynamicDepartureAdjustmentExperimentResultOutput
- MacroExperimentParams
Classe GKControllerParsOCIT¶
A assinatura das seguintes funções:
void setProtocolFilepath( const QString& filepath );
const QString& getProtocolFilepath() const;
void setProtocolFilepath( const GKFilePath& filepath );
const GKFilePath& getProtocolFilepath() const;
Classe GKControllerParsVSPLUS¶
O tipo dos seguintes membros:
QString informationFile;
QString parametersFile;
GKFilePath informationFile;
GKFilePath parametersFile;
Classe GKControllerParsSitrafficOffice¶
A assinatura das seguintes funções:
void setConfigurationFolder( const QString& filepath );
const QString& getConfigurationFolder() const;
void setConfigurationFolder( const GKFilePath& filepath );
const GKFilePath& getConfigurationFolder() const;
Classe GKFilePath¶
A classe GKFilePath foi adicionada. Um caminho de sistema de arquivos para um arquivo no projeto com algumas funções utilitárias.
Classe GKFunctionCostContext¶
Os atributos que foram descontinuados (experiment, userClass, time, timeSta e iteration) foram removidos e precisam ser acessados usando as funções fornecidas.
const GKGenericExperiment * getExperiment() const;
const GKBaseObject * getUserClass() const;
double getTime() const;
double getTimeSta() const;
GKMobileAgent * getVehicle() const;
GKTripPurpose * getPurpose() const;
Classe GKNode¶
A assinatura da função getMinimalPolygons
foi modificada, agora possui um terceiro parâmetro opcional curvedGeometry
para obter os polígonos com linhas curvas ou retas unindo as seções.
QVector<GKPoints> getMinimalPolygons( const GKGenericScenario * scenario, bool includeNotDrawn = true, bool curvedGeometry = true ) const;
Classe GKObject¶
A assinatura da função clone
foi modificada, agora possui um segundo parâmetro opcional temporary
.
virtual GKObject * clone( bool addItToModel = true, bool temporary = false ) const;
Classe GKTrafficDemand¶
A função `getTotalTrips agora funciona com Matrizes OD e Estados de Tráfego.
Classe GKTrafficState¶
A seguinte função foi adicionada:
double getTotalTrips() const;
Classe GKScenarioInputData¶
A assinatura da seguinte função:
const QList< QPair<QString,QString> > & getExtensions() const;
const QList< QPair<GKFilePath,QString> > & getExtensions() const;
Classe GKSection¶
As seguintes funções para consultar o estado da geometria dado um cenário ou experimento foram adicionadas:
GKNode * getOrigin( const GKGenericScenario* scenario ) const;
GKNode * getDestination( const GKGenericScenario* scenario ) const;
GKNode * getOrigin( const GKGenericExperiment* experiment ) const;
GKNode * getDestination( const GKGenericExperiment* experiment ) const;
Classe GKSystem¶
A seguinte função mudou de comportamento:
QString tryToPutVariablePath( const QString & fileName, GKModel * model = nullptr ) const;
Classe DynamicDepartureAdjustmentExperimentResult¶
A classe DynamicDepartureAdjustmentExperimentResult
foi adicionada. Representa um Resultado de Reprogramação do Tempo de Partida Dinâmico OD.
Classe DynamicDepartureAdjustmentExperimentResultOutput¶
A classe DynamicDepartureAdjustmentExperimentResultOutput
foi adicionada. Representa um Resultado de Saída de Reprogramação do Tempo de Partida Dinâmico OD.
Classe MacroExperimentParams¶
As seguintes funções foram adicionadas:
virtual bool getBiCriteriaEnabled() const;
virtual GKColumn* getSectionTollAttr( const GKUserClass* user ) const;
virtual GKColumn* getTurningTollAttr( const GKUserClass* user ) const;
virtual void setBiCriteriaEnabled( bool enabled );
virtual void resetTollAttributes();
virtual void setSectionTollAttr( const GKUserClass* user, GKColumn* col );
virtual void setTurningTollAttr( const GKUserClass* user, GKColumn* col );
Classe GKControlJunction¶
Um novo parâmetro foi adicionado para cruzamentos atuados com fases coordenadas para definir como aplicar o parâmetro de deslocamento:
enum OffsetReferencePoint { eBeginningOfFirstCoordinatedPhase, eBeginningOfLastCoordinatedPhase, eEndOfFirstCoordinatedPhase };
void setOffsetReferencePoint(OffsetReferencePoint referencePoint );
OffsetReferencePoint getOffsetReferencePoint() const;
Estes substituem as seguintes funções:
void setMatchesOffsetWithEndOfPhase( const bool c );
bool getMatchesOffsetWithEndOfPhase() const;
Todos os usos anteriores devem ser substituídos da seguinte forma:
#junction.setMatchesOffsetWithEndOfPhase(true);
junction.setOffsetReferencePoint(GKControlJunction.eEndOfFirstCoordinatedPhase);
#junction.setMatchesOffsetWithEndOfPhase(false);
junction.setOffsetReferencePoint(GKControlJunction.eBeginningOfFirstCoordinatedPhase);
Mudanças no Aimsun Next 23.0.1¶
A seguir está uma lista de todas as classes e funções que mudaram ou foram adicionadas após a liberação do Aimsun Next 23 Versão Final. As classes com mudanças são:
Classe GKCentroidConfiguration¶
A assinatura das seguintes funções:
static GKCentroidConfiguration * getActualCentroidConfiguration( GKModel *, bool = false );
void desactivate();
static GKCentroidConfiguration * getCreateActiveCentroidConfiguration( GKModel *, bool = false );
void deactivate();
Classe GKPedestrianCentroidConfiguration¶
A assinatura da seguinte função:
void desactivate();
void deactivate();
Classe GKPTZonePlan¶
A assinatura da seguinte função:
void desactivate();
void deactivate();
Classe NSPReader¶
As classes NSPReader e NSPTreeStats relacionadas foram descontinuadas. Se você precisar recuperar informações de um arquivo APA, consulte o seguinte exemplo.
Mudanças no Aimsun Next 23¶
A seguir está uma lista de todas as funções que mudaram entre Aimsun Next 22 e Aimsun Next 23 a fim de ajudar a atualizar scripts antigos facilmente. As classes com mudanças são:
- GAnyObjectChooser
- GKCentroid
- GKCentroidSplitConnectionToNodeCmd
- GKColumn
- GKControlPlan
- GKControllerDetector
- GKSCOOTControllerDetector
- GKSCATSControllerDetector
- GKSCATSRMSControllerDetector
- OCITControllerDetector
- SiTrafficApValue
- GKDrawer
- GKDynamicAdjustmentExperiment
- GKFunctionCostContext
- GKGenerationAttractionVector
- GKGeoObject
- GKModel
- GKNode
- GKObject
- GKODMatrix
- GKPolygon
- GKRoadType
- GKRoute
- GKScenarioInputData
- GKSimulationArea
- GKTask
- GKTimeSerie
- GKTraversal
- GKType
- DTAManager
- CMacroStatsManager
- MacroAdjustmentExperiment
- MacroAdjustmentOutput
- MacroPTAdjustmentScenarioOutputData
- MacroPTExperimentParams
- MacroPTAdjustmentResult
- PTResultAdjustmentState
- GradientIterationValidationData
- OuterIterationValidationData
- DistributionOutput
- DistributionScenario
- NodeCompositor
- FourStepLoop
- FourStepLoopParams
- FourStepLoopOutputs
Classe GAnyObjectChooser¶
A seguinte assinatura da função mudou de
void setType( GKModel * amodel, GKType * atype, const ChooserMode & amode, bool listSubTypes = true );
void setType( GKType * atype, const ChooserMode & amode, bool listSubTypes = true );
O chooser não é mais definido chamando
GAnyObjectChooser.eOneObjectList
GAnyObjectChooser.ChooserMode.eOneObjectList
Classe GKCentroid¶
A seguinte função que estava recebendo um ID de cenário agora recebe o objeto cenário:
void recalculatePercentages( const GKGenericScenario * scenario );
Classe GKCentroidSplitConnectionToNodeCmd¶
A classe GKCentroidSplitConnectionToNodeCmd foi adicionada.
Um comando para mover Conexões de Centróides de nodos para seções. Todas as conexões de/para nós serão convertidas para conexões de/para as seções conectadas a esse nó.
Função setCentroid¶
void setCentroid( GKCentroid* centroid );
Classe GKColumn¶
Informações sobre uma origem GKColumn foram adicionadas. As seguintes opções são reconhecidas:
enum Origin { eUnknown, eDeveloper, eImporter, eUI, eScript };
Essas informações podem ser definidas usando a seguinte função:
void setOrigin( Origin from, const QString& originDescription = QString() );
Para recuperá-las, as seguintes funções estão disponíveis:
Origin getOrigin() const;
QString getOriginDescription() const;
As seguintes funções foram adicionadas para definir/obter a precisão de ponto flutuante ao armazenar e exibir o valor:
void setPrecision( int precision );
int getPrecision() const;
Classe GKControlPlan¶
As seguintes funções foram removidas, pois não são mais necessárias:
void updateMatchesOffset();
void updateRedToGreenYellowTimes();
Classe GKControllerDetector¶
A partir de agora, o membro "detector" está disponível apenas através das seguintes funções:
getDetector¶
GKDetector* getDetector() const;
setDetector¶
void setDetector( GKDetector* detector );
GKControllerDetector foi dividido em classes especializadas, portanto, as seguintes funções não estão mais disponíveis:
void setType( Type value );
Type getType() const;
bool getSPIP() const;
void setSPIP( bool sp );
const QString & getName() const;
void setName( const QString & aname );
int getLane() const;
void setLane( int alane );
Classe GKSCOOTControllerDetector¶
Especialização de GKControllerDetector específica para controladores Yunex UTC.
setType¶
void setType( Type value );
getType¶
Type getType() const;
Classe GKSCATSControllerDetector¶
Especialização de GKControllerDetector específica para controladores SCATS.
getSPIP¶
bool getSPIP() const;
setSPIP¶
void setSPIP( bool sp );
Classe GKSCATSRMSControllerDetector¶
Especialização de GKControllerDetector específica para controladores SCATS-RMS.
getName¶
const QString & getName() const;
setName¶
void setName( const QString & aname );
getLane¶
int getLane() const;
setLane¶
void setLane( int alane );
classe OCITControllerDetector¶
Especialização de GKControllerDetector específica para controladores OCIT.
addLine¶
void addLine( GKPublicLine* line, GKBusStop* stop, double secondsBeforeDeparture );
getBusStop¶
GKBusStop* getBusStop( GKPublicLine* line );
getSecondsBeforeDeparture¶
double getSecondsBeforeDeparture( GKPublicLine* transitLine );
setCallingPointType¶
void setCallingPointType( Type type );
getCallingPointType¶
Type getCallingPointType() const;
Classe SiTrafficApValue¶
A classe SiTrafficApValue foi renomeada para OCITApValue
Classe GKDrawer¶
A função isHidden agora recebe um const GView *.
isHidden¶
virtual bool isHidden( const GView * view ) const;
Classe GKDynamicAdjustmentExperiment¶
Duas funções membro foram adicionadas para permitir definir e obter o agrupamento dos centróides usados:
Função setCentroidGrouping¶
void setCentroidGrouping( GKGroupingType* iCentroidGrouping );
Função getCentroidGrouping¶
GKGroupingType* getCentroidGrouping() const;
A seguinte chamada de função para definir o limiar de estado mínimo foi removida:
setStateThreshold¶
void setStateThreshold( double iValue );
Classe GKFunctionCostContext¶
O atributo userClass não é recomendado para acessar o GKMobileAgent nem o GKTripPurpose. Para acessar o tipo de veículo e o propósito, duas novas funções podem ser usadas:
GKMobileAgent * getVehicle() const;
GKTripPurpose * getPurpose() const;
Classe GKGenerationAttractionVector¶
As seguintes funções foram adicionadas para completar a interface dessa classe:
setCentroidConfiguration¶
void setCentroidConfiguration( GKCentroidConfiguration * cent );
setCarAvailability¶
void setCarAvailability( const int iCarAvailability );
Classe GKGeoObject¶
A seguinte função que estava recebendo um ID de cenário agora recebe o objeto cenário:
virtual bool exists( const GKGenericScenario * scenario ) const;
Classe GKModel¶
getActiveScenarioId¶
O nome da função mudou:
quint32 getActiveScenarioId() const;
const GKGenericScenario* getActiveScenario() const;
Classe GKNode¶
A seguinte função que estava recebendo um ID de cenário agora recebe o objeto cenário:
uint getSignalPos( uint /*idSignal*/, const GKGenericScenario * scenario = nullptr ) const;
Classe GKObject¶
A seguinte função foi adicionada para completar a interface dessa classe:
cloneAsTemporary¶
virtual GKObject * cloneAsTemporary( bool addItToModel = true ) const;
Classe GKODMatrix¶
As informações resumidas foram adicionadas como Colunas. Os seguintes novos atributos podem ser usados para acessá-los:
static uint minimumValueAtt;
static uint maximumValueAtt;
static uint emptyCellsCountAtt;
static uint nonEmptyCellsCountAtt;
static uint totalValueAtt;
static uint diagonalTotalValueAtt;
/** Muda a estrutura interna da matriz para esparsa. Usa menos memória se os dados tiverem muitos zeros. */
void setMatrixSparse();
/** Calcula as informações resumidas.
* @param canAskUser Se verdadeiro e o arquivo externo não puder ser encontrado, uma caixa de diálogo perguntando pela localização será exibida. */
void calculateSummary( bool canAskUser = true ) const;
/** Invalida o resumo atual. */
void invalidateSummary() const;
GKODMatrix& operator +=(const GKODMatrix & iMatrix);
/** Garante que a matriz tenha dados. Caso a matriz seja armazenada externamente, restaura o conteúdo.
* @param canAskUser Se verdadeiro e o arquivo externo não puder ser encontrado, uma caixa de diálogo perguntando pela localização será exibida.
* Retorna falso se os dados não puderem ser restaurados.*/
bool ensureMatrixData( const QUuid & documentUUID = QUuid(), bool canAskUser = true ) const;
Classe GKPolygon¶
As seguintes funções que estavam recebendo um ID de cenário agora recebem o objeto cenário:
QSet<GKGeoObject*> classifyObjects( const GKGenericScenario * scenario, GKObjectsClassification objsToClassify, GKLayer * layer ) const;
QSet<GKGeoObject*> classifyObjects( const GKGenericScenario * scenario ) const;
QSet<GKGeoObject*> classifyObjectsInside( const GKGenericScenario * scenario, GKLayer * layer ) const;
QSet<GKGeoObject*> classifyObjectsPartiallyInside( const GKGenericScenario * scenario, GKLayer * layer ) const;
Classe GKRoadType¶
O atributo additionalVolumeAtt foi renomeado para sectionAdditionalVolumeAtt.
Os seguintes atributos foram adicionados:
uint turnAdditionalVolumeAtt
uint turnPenaltyFunctionAtt;
uint junctionDelayFunctionAtt;
Classe GKRoute¶
A seguinte função que estava recebendo um ID de cenário agora recebe o objeto cenário:
virtual bool isCorrect( int * errorID = NULL, int * indexSection = NULL, int * previousSection = NULL, const GKGenericScenario * scenario = nullptr ) const;
Classe GKScenarioInputData¶
Várias funções obsoletas que não eram usadas ao definir a configuração de saída do cenário foram removidas. A lista exaustiva de funções não disponíveis é:
bool getSystemStatistics() const;
bool getAllPTLinesStatistics() const;
bool getTransytStatistics() const;
void setTransytStatistics( bool );
bool getVehTypeStatistics() const;
bool getDeviationStatistics() const;
bool getAllNodesTurnsStatistics() const;
bool getAllSectStatistics() const;
bool getEntrancesStatistics() const;
bool getExitsStatistics() const;
bool getAllSubPathsStatistics() const;
bool getAllGroupingsStatistics() const;
void addSectListStatistics( GKSection* );
void removeSectListStatistics( GKSection * );
const QVector<GKSection*> & getSectListStatistics() const;
void clearSectListStatistics();
bool isSectionInStatistics( GKSection * ) const;
void addNodeTurnListStatistics( GKNode * aNode );
void removeNodeTurnListStatistics( GKNode * aNode );
const QVector<GKNode *> & getNodeTurnListStatistics() const;
void clearNodeTurnListStatistics();
bool isNodeInTurnStatistics( GKNode * aNode ) const;
Classe GKSimulationArea¶
A seguinte função que estava recebendo um ID de cenário agora recebe o objeto cenário:
void calculateGates( const GKTrafficDemand* trafficDemand, const GKGenericScenario * scenario );
Classe GKTask¶
A seguinte função foi adicionada para dar acesso ao identificador único de uma tarefa:
const QString & getUUID() const;
Classe GKTimeSerie¶
GKTimeSerie mudou de uma base de dimensão + posição para uma base de posição. O GKTimeSerieIndex desapareceu e agora apenas a posição é usada (como um inteiro não assinado).
Como exemplo, a função setValue mudou de:
virtual void setValue( GKTimeSerieIndex index, double value, double deviation = -1.0, double lowerValue = -1.0 )
virtual void setValue( unsigned int interval, double value, double deviation = -1.0, double lowerValue = -1.0 )
Todas as referências a dimensões, incluindo a chamada para:
int dimensions() const;
Uma nota menor: a maioria dos valores de saída e entrada que não podem ser negativos foram alterados de int para inteiro não assinado.
Os métodos agregados, como a soma, foram mudados e agora não aceitam valores diretos de QDateTime como parâmetros. Como as funções permitem um índice de início/fim ao intervalo, isso deve ser suficiente.
As funções que costumavam ter uma referência de série temporal (&) como parâmetro agora têm um ponteiro de série temporal em vez disso (*).
Adicionadas duas funções que permitem a aquisição e verificação do valor nulo da série temporal dada, pois pode ser diferente com base na descrição.
A lista completa de funções que desapareceram ou mudaram de alguma forma é:
GKTimeSerie();
unsigned int size() const;
int dimensions() const;
void setDescription( GKTSDescription * aDescription );
enum ExtraInfo { eNone, eDeviation, eBands };
ExtraInfo getExtraInfo() const;
virtual void setValue( GKTimeSerieIndex index, double value, double deviation = -1.0, double lowerValue = -1.0 );
virtual double getValue( GKTimeSerieIndex index, bool * = NULL ) const;
virtual double getDeviation( GKTimeSerieIndex index, bool * = NULL ) const;
virtual double getDeviation( const GKContext & , bool * = NULL ) const;
virtual QPair<double, double> getBand( GKTimeSerieIndex index, bool *valid = NULL ) const;
virtual QPair<double, double> getBand( const GKContext & context, bool *valid = NULL ) const;
double getMean( int dimension, const QDateTime & from = QDateTime(), const QDateTime & to = QDateTime(), bool useDate = true ) const;
double getSum( int dimension, const QDateTime & from = QDateTime(), const QDateTime & to = QDateTime(), bool useDate = true ) const;
double getMax( int dimension, const QDateTime & from = QDateTime(), const QDateTime & to = QDateTime(), bool useDate = true ) const;
double getMin( int dimension = 0, const QDateTime & from = QDateTime(), const QDateTime & to = QDateTime(), bool useDate = true ) const;
void setCustomAggregatedValue( int dimension, double value, double deviation = -1.0 );
double getCustomAggregatedValue( int dimension = 0 ) const;
double getCustomAggregatedDeviation( int dimension = 0 ) const;
double getAggregatedValue( int dimension = 0 ) const;
double getAggregatedDeviation( int dimension = 0 ) const;
double getStdDev( int dimension = 0 ) const;
double getSEMean( const GKTimeSerie & /*serie2*/ ) const;
double getTheilU( const GKTimeSerie & /*serie2*/ ) const;
void getTheilUmUcUs( const GKTimeSerie & /*serie2*/, double /*SEm*/, double * /*Um*/, double * /*Uc*/, double * /*Us*/ ) const;
double getRMS(const GKTimeSerie & /*serie1*/ ) const;
Por favor, leia a documentação do arquivo sip do GKTimeSerie para mais detalhes.
Classe GKTraversal¶
As seguintes funções que estavam recebendo um ID de cenário agora recebem o objeto cenário:
void calculateGates( const GKGenericScenario * scenario );
void calculatePublicTransport( const GKGenericScenario * scenario );
Classe GKType¶
Não é mais possível usar as seguintes funções para adicionar GKColumn a um GKType
GKColumn* addColumn( const QString & iname, const GKContents& contents , GKColumn::Type atype,
GKColumn::GKColumnType astoreType = GKColumn::eExternalTemporary, bool dynamic = false );
GKColumn* addColumn( const GKContents& contents , GKColumn::Type atype,
GKColumn::GKColumnType astoreType = GKColumn::eExternalTemporary, bool dynamic = false );
GKColumn * addColumn( const QString & iname, const QString & aname, GKColumn::Type atype,
GKColumn::GKColumnType astoreType = GKColumn::eExternal, bool dynamic = false );
em vez disso, use as que estão à frente...
-
Adiciona um GKColumn com tipo de armazenamento GKColumn::eExternal.
GKColumn * addExternalColumn( const QString & iname, const QString & aname, GKColumn::Type atype, GKColumn::Origin from = GKColumn::eDeveloper, const QString& originDescription = QString(), bool dynamic = false, int precision = -1 );
-
Adiciona um GKColumn com tipo de armazenamento GKColumn::eExternalTemporary.
GKColumn * addTemporaryColumn( const QString & iname, const QString & aname, GKColumn::Type atype, bool dynamic = false, int precision = -1 ); GKColumn * addTemporaryColumn( const QString & iname, const GKContents& contents , GKColumn::Type atype, bool dynamic = false, int precision = -1 ); GKColumn * addTemporaryColumn( const GKContents& contents, GKColumn::Type atype, bool dynamic = false, int precision = -1 );
-
Adiciona um GKColumn com tipo de armazenamento GKColumn::ePython.
GKColumn * addPythonFunctionColumn( const GKContents& contents, GKColumn::Type atype, int precision = -1 ); GKColumn * addPythonFunctionColumn( const QString & iname, const QString & aname, GKColumn::Type atype, int precision = -1 );
Classe DTAManager¶
A seguinte função foi removida:
DTAVehicleType * getVehicleType(const DTAUserClass * userclass) const;
Todos os usos anteriores dessa função agora podem usar a existente:
const DTAVehicleType * getDTAVehicleType() const;
encontrado no DTAUserClass dentro do GKContext.
Exemplo de uso:
context.userClass.getDTAVehicleType()
Classe CMacroStatsManager¶
As seguintes funções foram adicionadas para acessar a saída de estatísticas agregadas de um Atribuição Estática através do CMacroStatsManager:
getTotalSectionVolume¶
double getTotalSectionVolume( const GKSection& iSection, const bool iWeightedByPCU = true ) const;
getTotalSectionOccupancy¶
double getTotalSectionOccupancy( const GKSection& iSection ) const;
getTotalSectionCost¶
double getTotalSectionCost( const GKSection& iSection, const bool iWeightedByPCU = true ) const;
getTotalSectionCostComponent¶
double getTotalSectionCostComponent( const GKSection& iSection, const GKFunctionComponent& iComponent, const bool iWeightedByPCU = true ) const;
getTotalTurningVolume¶
double getTotalTurningVolume( const GKTurning& iTurning, const bool iWeightedByPCU = true ) const;
getTotalTurningPercentage¶
double getTotalTurningPercentage( const GKTurning& iTurning, const bool iWeightedByPCU = true ) const;
getTotalTurningCost¶
double getTotalTurningCost( const GKTurning& iTurning, const bool iWeightedByPCU = true ) const;
getTotalTurningCostComponent¶
double getTotalTurningCostComponent( const GKTurning& iTurning, const GKFunctionComponent& iComponent, const bool iWeightedByPCU = true ) const;
getTotalTrajectoryVolume¶
double getTotalTrajectoryVolume( const GKSuperNodeTrajectory& iTrajectory, const bool iWeightedByPCU = true ) const;
getTotalTrajectoryPercentage¶
double getTotalTrajectoryPercentage( const GKSuperNodeTrajectory& iTrajectory, const bool iWeightedByPCU = true ) const;
getTotalTrajectoryCost¶
double getTotalTrajectoryCost( const GKSuperNodeTrajectory& iTrajectory, const bool iWeightedByPCU = true ) const;
getTotalTrajectoryCostComponent¶
double getTotalTrajectoryCostComponent( const GKSuperNodeTrajectory& iTrajectory, const GKFunctionComponent& iComponent, const bool iWeightedByPCU = true ) const;
getTotalConnectionVolume¶
double getTotalConnectionVolume( const GKCenConnection& iConnection, const bool iWeightedByPCU = true ) const;
getTotalConnectionCost¶
double getTotalConnectionCost( const GKCenConnection& iConnection, const bool iWeightedByPCU = true ) const;
getTotalConnectionCostComponent¶
double getTotalConnectionCostComponent( const GKCenConnection& iConnection, const GKFunctionComponent& iComponent, const bool iWeightedByPCU = true ) const;
getTotalRouteVolume¶
double getTotalRouteVolume( const GKRoute& iRoute, const bool iWeightedByPCU = true ) const;
getTotalRouteCost¶
double getTotalRouteCost( const GKRoute& iRoute, const bool iWeightedByPCU = true ) const;
getTotalRouteCostComponent¶
double getTotalRouteCostComponent( const GKRoute& iRoute, const GKFunctionComponent& iComponent, const bool iWeightedByPCU = true ) const;
getTotalDetectorVolume¶
double getTotalDetectorVolume( const GKDetector& iDetector, const bool iWeightedByPCU = true ) const;
Classe MacroAdjustmentExperiment¶
As seguintes funções foram adicionadas:
getTargetSlopeDev function¶
double getTargetSlopeDev() const;
getTargetSlopeDev function¶
void setTargetSlopeDev(double targetSlopeDev);
Classe MacroAdjustmentOutput¶
As seguintes funções foram removidas:
const QVector<RegressionData> & getConvergenceData() const;
GKCentroidConfiguration * getCentroidConfiguration( ) const;
GKTimeDuration getDuration() const;
QDateTime getStart() const;
double getOriginalTrip( const GKCentroid& origin, const GKCentroid& destination, const GKUserClass& user ) const;
Classe MacroPTAdjustmentScenarioOutputData¶
A seguinte função que estava recebendo um ID de experimento agora recebe o objeto experimento:
QString getPathAssignmentResultsFileName( const GKGenericExperiment * experiment ) const;
Classe PTResultAdjustmentState¶
Esta classe foi adicionada para ajudar os usuários a acessar a demanda original e ajustada, que agrupa os seguintes dados:
Centróide de Origem¶
const GKCentroid * origin:
Centróide de Destino¶
const GKCentroid * destination;
Classe do Usuário¶
const GKUserClass * user;
Demanda Original¶
double originalDemand
Demanda Ajustada¶
double adjustedDemand
MacroPTAdjustmentResult Class¶
A forma como os valores de demanda original e ajustada são acessados mudou.
A seguinte função foi removida:
getStates¶
const QVector<MacroAdjustmentState*> & getStates() const;
E as seguintes funções foram adicionadas para fornecer acesso melhorado aos mesmos dados:
getNumberOfStates¶
unsigned int getNumberOfStates() const;
getState¶
const PTResultAdjustmentState & getState( const unsigned int iIndex ) const;
findState¶
PTResultAdjustmentState findState( const GKUserClass & iUserClass, const GKCentroid & iOrigin, const GKCentroid & iDestination ) const;
MacroPTExperimentParams Class¶
As seguintes funções foram adicionadas:
walkingOnlyFunction¶
GKFunctionCost * walkingOnlyFunction() const;
setWalkingOnlyFunction¶
void setWalkingOnlyFunction( GKFunctionCost * aFunction );
Classe GradientIterationValidationData¶
Uma nova variável membro foi adicionada:
AdjustmentRegressionData measurements_regression;
Além disso, a variável membro chamada "regression", mudou de:
AdjustmentRegressionData regression;
AdjustmentRegressionData demand_regression;
Classe OuterIterationValidationData¶
A classe "AssignmentData" foi adicionada para manter apenas os dados relevantes de uma Atribuição Estática para esta classe. Por causa disso, uma variável membro "assign_data" foi adicionada:
AssignmentData assignment_data;
Além disso, a variável membro chamada "regression", mudou de:
AdjustmentRegressionData regression;
AdjustmentRegressionData measurement_regression;
Classe DistributionOutput¶
Várias funções foram adicionadas para completar a scriptização desta classe e conceder acesso a todos os dados que contém:
getNumberOfIndices¶
unsigned int getNumberOfIndices() const;
createMatrix¶
GKODMatrix * createMatrix( const unsigned int iIndex, const bool iTemporary ) const;
getTripPurpose¶
GKTripPurpose * getTripPurpose( const unsigned int iIndex ) const;
getModes¶
std::vector< GKTransportationMode* > getModes( const unsigned int iIndex ) const;