vadere merge requestshttps://gitlab.lrz.de/vadere/vadere/-/merge_requests2019-07-04T13:18:11+02:00https://gitlab.lrz.de/vadere/vadere/-/merge_requests/73Dev/meshing2019-07-04T13:18:11+02:00Zoennchen, BenediktDev/meshinghttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/74Insert missing scenario parameters2019-07-09T16:47:48+02:00Ghost UserInsert missing scenario parametershttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/75Encapsulated logic to parse CLI arguments into new class "VadereArgumentParser"2019-07-11T17:55:30+02:00Ghost UserEncapsulated logic to parse CLI arguments into new class "VadereArgumentParser"This new class is used by:
- VadereApplication
- VadereConsole
- PostVisualization
Now, all Vadere applications have a unified interface to pass arguments on command line.
Watch out: The method "VadereConsole.addSubCommandsToPar...This new class is used by:
- VadereApplication
- VadereConsole
- PostVisualization
Now, all Vadere applications have a unified interface to pass arguments on command line.
Watch out: The method "VadereConsole.addSubCommandsToParser()" should be moved to "VadereArgumentParser".https://gitlab.lrz.de/vadere/vadere/-/merge_requests/70Single config2019-07-12T10:50:46+02:00Ghost UserSingle configAccording to #243, Vadere should read all configuration parameters from a single file.
Provide following functionality:
- Use OS-specific location to store config file (home directory preferred).
- Write default config file if no ...According to #243, Vadere should read all configuration parameters from a single file.
Provide following functionality:
- Use OS-specific location to store config file (home directory preferred).
- Write default config file if no config file exists or errors occur while reading existing config file.
- Add flag `--config-file <path/to/file>` to all(!) Vadere applications (i.e., GUI, Console, PostVis, ...).
Furthermore, remove old config code. I.e., the `preferences.put(...)` calls and the corresponding `ApplicationWriter.savePreferences()` calls.https://gitlab.lrz.de/vadere/vadere/-/merge_requests/76add features to TikzGenerator2019-07-12T18:33:27+02:00Schuhbaeck, Stefanadd features to TikzGenerator* Add config to choose if all or only alive trajectories are drawn
* Draw walking direction in Tikz
* create nodes for pedestrian instead of circles. Each pedestrian node
has a name 'ped_ID' to reference the node in tikz.
* add named c...* Add config to choose if all or only alive trajectories are drawn
* Draw walking direction in Tikz
* create nodes for pedestrian instead of circles. Each pedestrian node
has a name 'ped_ID' to reference the node in tikz.
* add named coordinate at Centroid for all scenario elements:
* source: (src_<ID>)
* target: (trg_<ID>)
* absorbingArea: (absorb_<ID>)
* obstacle: (obs_<ID>)
* stairs: (str_<ID>)
* measurementArea: (mrmtA_<ID>)
* add style classes:
* trajectory: i.e. thickness
* pedestrian: default color
* ped_circle: defines shape of circular pedestrians (not for groups)
* selected: style for selected pedestrian
* group: styl (all) groups.https://gitlab.lrz.de/vadere/vadere/-/merge_requests/78Migration issue 2542019-07-15T09:01:43+02:00Schuhbaeck, StefanMigration issue 254* fix #254: Migration assistant will add default values for new members.
* migrate to version 1.1: include default values for new members in json* fix #254: Migration assistant will add default values for new members.
* migrate to version 1.1: include default values for new members in jsonhttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/77Check to catch undetected error in TestEvacuationTimeProcessor2019-07-15T09:17:23+02:00Ghost UserCheck to catch undetected error in TestEvacuationTimeProcessorsee https://gitlab.lrz.de/vadere/vadere/issues/249#note_396973see https://gitlab.lrz.de/vadere/vadere/issues/249#note_396973https://gitlab.lrz.de/vadere/vadere/-/merge_requests/79Vadere manager2019-07-18T10:51:20+02:00Schuhbaeck, StefanVadere managerSchuhbaeck, StefanSchuhbaeck, Stefanhttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/80Dev/poly gui2019-07-26T15:14:57+02:00Zoennchen, BenediktDev/poly gui+ Improvements to EikMesh: EikMesh is now able to mesh very thin corridors using less mesh points.
+ .poly files which define the geometry of the topography can now generated in the topographyCreator tab i.e. without starting the simulat...+ Improvements to EikMesh: EikMesh is now able to mesh very thin corridors using less mesh points.
+ .poly files which define the geometry of the topography can now generated in the topographyCreator tab i.e. without starting the simulation beforehand.https://gitlab.lrz.de/vadere/vadere/-/merge_requests/65Resolve "New flag to compute metric for the quality of the StepCircleOptimizer"2019-07-30T15:09:52+02:00Ghost UserResolve "New flag to compute metric for the quality of the StepCircleOptimizer"Closes #241
Closes #256
## TODO
* [x] use new scenarios and measure optimal/found solution
* [x] write test processor
* compute max/min/mean/stddev between optimal and found solution
* write tests that check for certa...Closes #241
Closes #256
## TODO
* [x] use new scenarios and measure optimal/found solution
* [x] write test processor
* compute max/min/mean/stddev between optimal and found solution
* write tests that check for certain values
* [x] Change the footstep processor to the new `EventtimePedestrianIdKey`, this makes reading data a lot easier (no variable column size for each row).
* [x] There needs to be a configuration to turn this feature on (IMPORTANT: for testing, the feature is set to true hard coded!!)
* [x] Integrate TestProcessor which checks that all pedestrians get to the source. -> Not possible, processors are buggy #249
* [x] First solve #256, otherwise the vadere.conf files break without manual adaptation on local computer
Wait for #242 and #243 to be solved.
https://gitlab.lrz.de/vadere/vadere/-/merge_requests/81Misc gui fixes2019-07-31T18:06:16+02:00Schuhbaeck, StefanMisc gui fixes* make SplitPane's resizable (close #24)
* introduce line numbers to json text views
* introduce code folding to json text views* make SplitPane's resizable (close #24)
* introduce line numbers to json text views
* introduce code folding to json text viewshttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/82Coordiate reference2019-07-31T18:33:03+02:00Schuhbaeck, StefanCoordiate reference* add coordinate reference to topography (close #251)
* refactor osm2vadere.py and add additional features to convert openstreetmap xml data into vadere topography
* new version 1.3* add coordinate reference to topography (close #251)
* refactor osm2vadere.py and add additional features to convert openstreetmap xml data into vadere topography
* new version 1.3https://gitlab.lrz.de/vadere/vadere/-/merge_requests/84Rename class "LastFootSteps" to "FootstepHistory"2019-09-16T13:13:56+02:00Ghost UserRename class "LastFootSteps" to "FootstepHistory"- [x] Rename class `LastFootSteps` to `FootstepHistory`
- [x] Move usage of renamed class `FootstepHistory` from `VTractory` to `Pedestrian`
- [x] Implement migration `JsonTransformationV1_3ToV1_4` to update all scenario files
- [x] Appl...- [x] Rename class `LastFootSteps` to `FootstepHistory`
- [x] Move usage of renamed class `FootstepHistory` from `VTractory` to `Pedestrian`
- [x] Implement migration `JsonTransformationV1_3ToV1_4` to update all scenario files
- [x] Apply migration `JsonTransformationV1_3ToV1_4` to all scenario files
Watch out: Everywhere were `VTrajectory.add()` is called, additionally call "FootstepHistory.add()" now.https://gitlab.lrz.de/vadere/vadere/-/merge_requests/83Resolve "Change PedestrianPositionProcessor to use interpolation of Pedestria...2019-09-17T15:25:10+02:00Ghost UserResolve "Change PedestrianPositionProcessor to use interpolation of PedestrianFootStepProcessor"Closes #260
Closes #262
* [x] Simplify tests
* [x] Write text into CHANGELOG
* [x] Write tests for the interpolation method
* [x] overwrite `Pedestrian.getPosition()` with `Pedestrian.getPosition(simTimeSec)`, which would then u...Closes #260
Closes #262
* [x] Simplify tests
* [x] Write text into CHANGELOG
* [x] Write tests for the interpolation method
* [x] overwrite `Pedestrian.getPosition()` with `Pedestrian.getPosition(simTimeSec)`, which would then use the interpolation method?
* [x] in `clearFootSteps()` should we keep the last entry (which can be used for interpolation)? --> No, new field `currentFootStep`, this is because there the whole list is saved & used in "FootStepProcessors" and they would need to make sure to ignore double occurrences
* [x] Look at code where pedestrian.getPosition() would make sense to get exchanged to the interpolated position? E.g. in NelderMead or OverlapProcessor? --> This would be in a new issue/branch then
* [x] Remove the "currentFootStep" field in Pedestrian again and use the "LastFootSteps" provided in VTrajectory (then with a minimum capacity of 1)?
* [x] resolve #263 first
* [x] How to deal with requested interpolation if a Pedestrian has an outdated FootStep? Check with @hm-kleinmei
```
if(currentFootStep == null){
return getPosition();
}else{
if(time > currentFootStep.getEndTime()){
// This happens for example if a pedestrian is waiting (see Events)
// TODO: check with Bene K. if this is okay, or a better way?
return currentFootStep.getEnd();
}else{
return FootStep.interpolateFootStep(currentFootStep, time);
}
}
```https://gitlab.lrz.de/vadere/vadere/-/merge_requests/85Use FootStepProcessor in Postviz and as default trajectory output processor2019-10-08T08:28:49+02:00Ghost UserUse FootStepProcessor in Postviz and as default trajectory output processorCloses #253Closes #253https://gitlab.lrz.de/vadere/vadere/-/merge_requests/87remove hard coded path from test client. add short api name to easy use of cm...2019-10-28T11:29:22+01:00Schuhbaeck, Stefanremove hard coded path from test client. add short api name to easy use of cmdClienthttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/89[GUI] Visualization: make interpolation configurable.2019-11-04T16:29:47+01:00Zoennchen, Benedikt[GUI] Visualization: make interpolation configurable.The interpolation for the visualization can now be deactivated and activated (for the PostVis and OnlineVis). For the PostVis it is active by default. For the OnlineVis it is inactive by default.The interpolation for the visualization can now be deactivated and activated (for the PostVis and OnlineVis). For the PostVis it is active by default. For the OnlineVis it is inactive by default.Zoennchen, BenediktZoennchen, Benedikthttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/90remove fine tune condition in brute force2019-11-05T18:25:30+01:00Ghost Userremove fine tune condition in brute forceClose #278Close #278https://gitlab.lrz.de/vadere/vadere/-/merge_requests/91TraCI and Cache handling update2019-11-15T13:48:38+01:00Schuhbaeck, StefanTraCI and Cache handling update### Added
- TraCI commands:
* getHash: return Scenario hash for given scenario
* CompoundObject implementation to allow complex get/set commands (i.e. create pedestrian hat
random location during simulation run)
- osm2vadere ...### Added
- TraCI commands:
* getHash: return Scenario hash for given scenario
* CompoundObject implementation to allow complex get/set commands (i.e. create pedestrian hat
random location during simulation run)
- osm2vadere converter:
* it is possible to specify a way with the tag `area-of-intrest` (AOI). If this is present and the
corresponding command line argument is given, only elements within the bounding box of the
AOI will be converted.
- Add INET environment export:
* create an INET environment xml file based on the current topography. For now only prism shapes
are possible with a fixed height of 5m.
- vadere-console `utils` subCommand:
* A miscellaneous collector of simple function operating on a single scenario file.
* -f (input [required])
* -o (ouput file or directory depending on method m [optional])
* -m (name of method.) See subparser help for allowed functions.
* currently implementd:
* `getHash`: Hash value of given scenario. (-o option ignored)
* `binCache`: calculate binary cache (-o must be a directory. If missing it will be created)
* `txtCache`: calculate text based cache (-o must be a directory. If missing it will be created)
### Changed
- CachePath lookup:
The new cache lookup now allows a 'global' lookup. Previously all cache files are saved in
a `__cache__` folder relative (as sibling) to the currently running scenario file. This works
good for local testing and runs. However, if one scenario is duplicated and integrated in other
projects the same cache would be created at multiple locations. The current solution would be
to enter an absolute path as the `cacheDir` but this will break interoperatbility between
windows and linux as well as sharing scenario files with other users. CacheDir Lookup order:
1. `cacheDir` is an absolute path: Use it; and log the path to console.
2. `cacheDir` is relative and `Vadere.cache.useGlobalCacheBaseDir=false` (default):
save cache in a `__cache__` folder relative (as sibling) to the currently running scenario file
3. `cacheDir` is relative and `Vadere.cache.useGlobalCacheBaseDir=true`:
Lookup `Vadere.cache.flobalCacheBaseDir` and use this as the base path for the relative
`cacheDir` path. `Vadere.cache.flobalCacheBaseDir` defaults to `${user.home}\.cache\vadere`Schuhbaeck, StefanSchuhbaeck, Stefanhttps://gitlab.lrz.de/vadere/vadere/-/merge_requests/92Test client stsc2019-11-18T19:05:25+01:00Schuhbaeck, StefanTest client stsc