Mercurial Hosting > traffic-intelligence
diff python/storage.py @ 628:977407c9f815
corrected bugs in loading interactions (index shifted) and added functionalities to play/plot interactions
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Mon, 16 Feb 2015 11:58:51 +0100 |
parents | dc2d0a0d7fe1 |
children | 3058e00887bc |
line wrap: on
line diff
--- a/python/storage.py Mon Feb 16 08:41:14 2015 +0100 +++ b/python/storage.py Mon Feb 16 11:58:51 2015 +0100 @@ -518,27 +518,17 @@ indicatorTypeNum = -1 tmpIndicators = {} for row in cursor: - if row[0] != interactionNum: # save interaction and create new interaction - if interactionNum >= 0: - interactions.append(events.Interaction(interactionNum, moving.TimeInterval(row[3],row[4]), roadUserNumbers[0], roadUserNumbers[1])) - interactions[-1].indicators = tmpIndicators - tmpIndicators = {} + if row[0] != interactionNum: interactionNum = row[0] - roadUserNumbers = row[1:3] + interactions.append(events.Interaction(interactionNum, moving.TimeInterval(row[3],row[4]), row[1], row[2])) + interactions[-1].indicators = {} if indicatorTypeNum != row[5]: - if indicatorTypeNum >= 0: - indicatorName = events.Interaction.indicatorNames[indicatorTypeNum] - tmpIndicators[indicatorName] = indicators.SeverityIndicator(indicatorName, indicatorValues) + indicatorName = events.Interaction.indicatorNames[indicatorTypeNum] + indicatorValues = {row[6]:row[7]} + interactions[-1].indicators[indicatorName] = indicators.SeverityIndicator(indicatorName, indicatorValues) indicatorTypeNum = row[5] - indicatorValues = {row[6]:row[7]} else: indicatorValues[row[6]] = row[7] - if interactionNum >= 0: - if indicatorTypeNum >= 0: - indicatorName = events.Interaction.indicatorNames[indicatorTypeNum] - tmpIndicators[indicatorName] = indicators.SeverityIndicator(indicatorName, indicatorValues) - interactions.append(events.Interaction(interactionNum, moving.TimeInterval(row[3],row[4]), roadUserNumbers[0], roadUserNumbers[1])) - interactions[-1].indicators = tmpIndicators except sqlite3.OperationalError as error: printDBError(error) return []