...
 
Commits (8)
......@@ -69,6 +69,7 @@ ProjectView.startDialog.text=Create a new Project or load an existing project
ProjectView.startDialog.button1=Load Project
ProjectView.startDialog.button2=Create Project
ProjectView.btnNewButton.text=New button
ProjectView.runOnline.text=Run selected scenarios online
ProjectView.btnRunAllTests.text=Run all scenarios
ProjectView.mntmRunSelectetTests.text=Run selected scenario
ProjectView.mntmRunSelectedTests.text=Run selected scenarios
......
......@@ -69,6 +69,7 @@ ProjectView.startDialog.text=Erstellen oder laden Sie ein existierendes Projekt
ProjectView.startDialog.button1=Projekt laden
ProjectView.startDialog.button2=Projekt erstellen
ProjectView.btnNewButton.text=Neuer Button
ProjectView.runOnline.text=Ausgew\u00E4hlte Szenarien online ausf\u00FChren
ProjectView.btnRunAllTests.text=Alle Szenarios ausf\u00FChren
ProjectView.mntmRunSelectetTests.text=Ausgew\u00E4hlte Szenarios ausf\u00FChren
ProjectView.mntmRunSelectedTests.text=Ausgew\u00E4hlte Szenarios ausf\u00FChren
......
......@@ -20,9 +20,11 @@ public class DefaultModeAdapter implements IMode {
@Override
public void mouseClicked(final MouseEvent event) {
panelModel.setMousePosition(event.getPoint());
panelModel.setSelectedElement(panelModel.getMousePosition());
panelModel.notifyObservers();
if(panelModel.isTopgraphyAvailable()) {
panelModel.setMousePosition(event.getPoint());
panelModel.setSelectedElement(panelModel.getMousePosition());
panelModel.notifyObservers();
}
}
@Override
......@@ -41,47 +43,53 @@ public class DefaultModeAdapter implements IMode {
@Override
public void mouseDragged(MouseEvent e) {
panelModel.setMousePosition(e.getPoint());
if(panelModel.isTopgraphyAvailable()) {
panelModel.setMousePosition(e.getPoint());
JScrollBar hBar = panelModel.getScrollPane().getHorizontalScrollBar();
JScrollBar vBar = panelModel.getScrollPane().getVerticalScrollBar();
JScrollBar hBar = panelModel.getScrollPane().getHorizontalScrollBar();
JScrollBar vBar = panelModel.getScrollPane().getVerticalScrollBar();
double diffX = (lastDragPos.getX() + hDiff) - e.getX();
double diffY = (lastDragPos.getY() + vDiff) - e.getY();
lastDragPos = e.getPoint();
double diffX = (lastDragPos.getX() + hDiff) - e.getX();
double diffY = (lastDragPos.getY() + vDiff) - e.getY();
lastDragPos = e.getPoint();
// the cap of 100 and the 0.001 are "empirical" values :) the idea is that faster dragging
// also results in faster scrolling. values bigger than 0.001 seem to cause weird side
// effects
hDiff = hBar.getWidth() * (Math.abs(diffX) < 100 ? diffX : Math.signum(diffX) * 100) * 0.001;
vDiff = vBar.getHeight() * (Math.abs(diffY) < 100 ? diffY : Math.signum(diffY) * 100) * 0.001;
// the cap of 100 and the 0.001 are "empirical" values :) the idea is that faster dragging
// also results in faster scrolling. values bigger than 0.001 seem to cause weird side
// effects
hDiff = hBar.getWidth() * (Math.abs(diffX) < 100 ? diffX : Math.signum(diffX) * 100) * 0.001;
vDiff = vBar.getHeight() * (Math.abs(diffY) < 100 ? diffY : Math.signum(diffY) * 100) * 0.001;
hBar.setValue((int) (hBar.getValue() + hDiff));
vBar.setValue((int) (vBar.getValue() + vDiff));
hBar.setValue((int) (hBar.getValue() + hDiff));
vBar.setValue((int) (vBar.getValue() + vDiff));
panelModel.notifyObservers();
panelModel.notifyObservers();
}
}
@Override
public void mouseMoved(MouseEvent e) {
panelModel.setMousePosition(e.getPoint());
panelModel.notifyObservers();
if(panelModel.isTopgraphyAvailable()) {
panelModel.setMousePosition(e.getPoint());
panelModel.notifyObservers();
}
}
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
if (e.getWheelRotation() > 0) {
if (panelModel.zoomOut()) {
panelModel.notifyScaleListeners();
panelModel.notifyObservers();
}
delay();
} else if (e.getWheelRotation() < 0) {
if (panelModel.zoomIn()) {
panelModel.notifyScaleListeners();
panelModel.notifyObservers();
if(panelModel.isTopgraphyAvailable()) {
if (e.getWheelRotation() > 0) {
if (panelModel.zoomOut()) {
panelModel.notifyScaleListeners();
panelModel.notifyObservers();
}
delay();
} else if (e.getWheelRotation() < 0) {
if (panelModel.zoomIn()) {
panelModel.notifyScaleListeners();
panelModel.notifyObservers();
}
delay();
}
delay();
}
}
......
......@@ -16,54 +16,60 @@ public class RectangleSelectionMode extends DefaultModeAdapter {
@Override
public void mousePressed(final MouseEvent event) {
panelModel.setMousePosition(event.getPoint());
if (SwingUtilities.isMiddleMouseButton(event)) {
super.mousePressed(event);
} else {
panelModel.setStartSelectionPoint(event.getPoint());
if(panelModel.isTopgraphyAvailable()) {
panelModel.setMousePosition(event.getPoint());
if (SwingUtilities.isMiddleMouseButton(event)) {
super.mousePressed(event);
} else {
panelModel.setStartSelectionPoint(event.getPoint());
// Set default dimension of selection shape to current GridResolution.
// If mouse is dragged smaller selection shapes are still possible.
double width = panelModel.getGridResolution();
double height = width;
VRectangle shape = new VRectangle(panelModel.getMousePosition().x,
panelModel.getMousePosition().y, width, height);
panelModel.setSelectionShape(shape);
// Set default dimension of selection shape to current GridResolution.
// If mouse is dragged smaller selection shapes are still possible.
double width = panelModel.getGridResolution();
double height = width;
VRectangle shape = new VRectangle(panelModel.getMousePosition().x,
panelModel.getMousePosition().y, width, height);
panelModel.setSelectionShape(shape);
}
panelModel.notifyObservers();
}
panelModel.notifyObservers();
}
@Override
public void mouseReleased(final MouseEvent event) {
panelModel.hideSelection();
panelModel.notifyObservers();
if(panelModel.isTopgraphyAvailable()) {
panelModel.hideSelection();
panelModel.notifyObservers();
}
}
@Override
public void mouseDragged(MouseEvent event) {
panelModel.setMousePosition(event.getPoint());
panelModel.showSelection();
if(panelModel.isTopgraphyAvailable()) {
panelModel.setMousePosition(event.getPoint());
panelModel.showSelection();
if (SwingUtilities.isMiddleMouseButton(event)) {
super.mouseDragged(event);
} else if (panelModel.isSelectionVisible()) {
VPoint startSelectionPosition = panelModel.getStartSelectionPoint();
VPoint cursorPosition = panelModel.getMousePosition();
if (SwingUtilities.isMiddleMouseButton(event)) {
super.mouseDragged(event);
} else if (panelModel.isSelectionVisible()) {
VPoint startSelectionPosition = panelModel.getStartSelectionPoint();
VPoint cursorPosition = panelModel.getMousePosition();
double x = Math.min(startSelectionPosition.x, cursorPosition.x);
double y = Math.min(startSelectionPosition.y, cursorPosition.y);
double minValue = Math.min(0.1, panelModel.getGridResolution());
double width = Math.max(Math.abs(startSelectionPosition.x - cursorPosition.x), minValue);
double height = Math.max(Math.abs(startSelectionPosition.y - cursorPosition.y), minValue);
double x = Math.min(startSelectionPosition.x, cursorPosition.x);
double y = Math.min(startSelectionPosition.y, cursorPosition.y);
double minValue = Math.min(0.1, panelModel.getGridResolution());
double width = Math.max(Math.abs(startSelectionPosition.x - cursorPosition.x), minValue);
double height = Math.max(Math.abs(startSelectionPosition.y - cursorPosition.y), minValue);
// to get nice floating numbers.
double factor = Math.max(10, 1 / panelModel.getGridResolution());
width = Math.round(width * factor) / factor;
height = Math.round(height * factor) / factor;
// to get nice floating numbers.
double factor = Math.max(10, 1 / panelModel.getGridResolution());
width = Math.round(width * factor) / factor;
height = Math.round(height * factor) / factor;
panelModel.setSelectionShape(new VRectangle(x, y, width, height));
panelModel.setSelectionShape(new VRectangle(x, y, width, height));
}
panelModel.notifyObservers();
}
panelModel.notifyObservers();
}
}
......@@ -3,14 +3,15 @@ package org.vadere.gui.components.model;
import java.awt.*;
public class DefaultConfig {
private Color obstacleColor = Color.BLACK;
private Color sourceColor = Color.GREEN;
private Color targetColor = Color.ORANGE;
private Color obstacleColor = new Color(0.7f,0.7f,0.7f);
private Color sourceColor = new Color(0.3333333333333333f, 0.6588235294117647f, 0.40784313725490196f);
private Color targetColor = new Color(0.8666666666666667f, 0.51764705882352946f, 0.32156862745098042f);
private Color densityColor = Color.RED;
private Color stairColor = Color.PINK;
private Color pedestrianColor = Color.BLUE;
private Color stairColor = new Color(0.5058823529411764f, 0.4470588235294118f, 0.6980392156862745f);
private Color pedestrianColor = new Color(0.2980392156862745f, 0.4470588235294118f, 0.7901960784313725f);
private boolean changed = false;
public DefaultConfig() {}
public DefaultConfig(final DefaultConfig config) {
......
......@@ -126,6 +126,10 @@ public interface IDefaultModel<T extends DefaultConfig> extends Iterable<Scenari
*/
VPoint getMousePosition();
default boolean isTopgraphyAvailable() {
return true;
}
/**
* Return the start selection position.
*
......
......@@ -24,6 +24,7 @@ public class OnlineVisualization implements PassiveCallback {
*/
public class ObservationAreaSnapshotData {
public final double simTimeInSec;
public final int simulationId;
public final Topography scenario;
public final IPotentialField potentialFieldTarget;
public final Agent selectedAgent;
......@@ -31,10 +32,12 @@ public class OnlineVisualization implements PassiveCallback {
public ObservationAreaSnapshotData(
final double simTimeInSec,
final int simulationId,
@NotNull final Topography scenario,
@Nullable final IPotentialField potentialFieldTarget,
@Nullable final IPotentialField potentialField,
@Nullable final Agent selectedAgent) {
this.simulationId = simulationId;
this.simTimeInSec = simTimeInSec;
this.scenario = scenario;
this.potentialFieldTarget = potentialFieldTarget;
......@@ -47,6 +50,7 @@ public class OnlineVisualization implements PassiveCallback {
private OnlineVisualisationWindow onlineVisualisationPanel;
private OnlineVisualizationModel model;
private Topography scenario;
private int simulationId;
/**
* Target potential.
......@@ -67,6 +71,7 @@ public class OnlineVisualization implements PassiveCallback {
this.window = new MainPanel(model);
this.window.setVisible(enableVisualization);
this.onlineVisualisationPanel = new OnlineVisualisationWindow(window, model);
this.simulationId = 0;
// this.window.addSelectShapeListener(onlineVisualisationPanel);
}
......@@ -106,6 +111,11 @@ public class OnlineVisualization implements PassiveCallback {
this.model.notifyObservers();
}
@Override
public void restart(double simTimeInSec) {
simulationId++;
}
/**
* Pushes (by copy) required data from current simulation into data queues
* for being displayed by draw thread (thread-safe). These may be for
......@@ -125,12 +135,11 @@ public class OnlineVisualization implements PassiveCallback {
pedPotentialField = IPotentialField.copyAgentField(potentialField, selectedAgent, new VRectangle(model.getTopographyBound()), 0.1);
}
ObservationAreaSnapshotData data = new ObservationAreaSnapshotData(simTimeInSec, scenario.clone(), pft, pedPotentialField, selectedAgent);
ObservationAreaSnapshotData data = new ObservationAreaSnapshotData(simTimeInSec, simulationId, scenario.clone(), pft, pedPotentialField, selectedAgent);
model.pushObservationAreaSnapshot(data);
}
}
public JPanel getVisualizationPanel() {
return onlineVisualisationPanel;
}
......
......@@ -43,6 +43,8 @@ public class OnlineVisualizationModel extends SimulationModel<DefaultSimulationC
private double simTimeInSec;
private int simulationId;
private boolean drawArrows;
/**
......@@ -107,6 +109,7 @@ public class OnlineVisualizationModel extends SimulationModel<DefaultSimulationC
OnlineVisualization.ObservationAreaSnapshotData observationAreaSnapshot =
observationAreaSnapshots.getFirst();
simTimeInSec = observationAreaSnapshot.simTimeInSec;
simulationId = observationAreaSnapshot.simulationId;
// potentialFieldTarget might be null!
potentialFieldTarget = observationAreaSnapshot.potentialFieldTarget;
......@@ -144,11 +147,19 @@ public class OnlineVisualizationModel extends SimulationModel<DefaultSimulationC
.map(ped -> ped.getPosition())
.collect(Collectors.toList()));
}
return true;
}
}
public int getSimulationId() {
return simulationId;
}
@Override
public boolean isTopgraphyAvailable() {
return topography != null;
}
public void pushObservationAreaSnapshot(final OnlineVisualization.ObservationAreaSnapshotData observationAreaSnapshotData) {
if (observationAreaSnapshots.size() > 0) {
observationAreaSnapshots.pop();
......
......@@ -16,13 +16,18 @@ public class OnlinevisualizationRenderer extends SimulationRenderer {
private final OnlineVisualizationModel model;
private static final double MIN_ARROW_LENGTH = 0.1;
private final Map<Integer, VPoint> lastPedestrianPositions;
private final Map<Integer, VPoint> pedestrianDirections;
private final Map<Integer, LinkedList<VPoint>> pedestrianPositions;
private Map<Integer, VPoint> lastPedestrianPositions;
private Map<Integer, VPoint> pedestrianDirections;
private Map<Integer, LinkedList<VPoint>> pedestrianPositions;
private int simulationId = 0;
public OnlinevisualizationRenderer(final OnlineVisualizationModel model) {
super(model);
this.model = model;
init();
}
private void init() {
this.pedestrianDirections = new HashMap<>();
this.lastPedestrianPositions = new HashMap<>();
this.pedestrianPositions = new HashMap<>();
......@@ -32,6 +37,21 @@ public class OnlinevisualizationRenderer extends SimulationRenderer {
public void render(final Graphics2D targetGraphics2D, int x, int y, int width, int height) {
synchronized (model.getDataSynchronizer()) {
if (model.popDrawData()) {
if(simulationId != model.getSimulationId()) {
init();
simulationId = model.getSimulationId();
}
for (Agent ped : model.getAgents()) {
if (!pedestrianPositions.containsKey(ped.getId())) {
pedestrianPositions.put(ped.getId(), new LinkedList());
}
// reverse the point order
pedestrianPositions.get(ped.getId()).addFirst(ped.getPosition());
}
super.render(targetGraphics2D, x, y, width, height);
}
}
......@@ -42,6 +62,21 @@ public class OnlinevisualizationRenderer extends SimulationRenderer {
public void render(final Graphics2D targetGraphics2D, int width, int height) {
synchronized (model.getDataSynchronizer()) {
if (model.popDrawData()) {
if(simulationId != model.getSimulationId()) {
init();
simulationId = model.getSimulationId();
}
for (Agent ped : model.getAgents()) {
if (!pedestrianPositions.containsKey(ped.getId())) {
pedestrianPositions.put(ped.getId(), new LinkedList());
}
// reverse the point order
pedestrianPositions.get(ped.getId()).addFirst(ped.getPosition());
}
super.render(targetGraphics2D, width, height);
}
}
......@@ -63,13 +98,6 @@ public class OnlinevisualizationRenderer extends SimulationRenderer {
VPoint position = ped.getPosition();
agentRender.render(ped, nonGroupColor, g);
if (!pedestrianPositions.containsKey(ped.getId())) {
pedestrianPositions.put(ped.getId(), new LinkedList());
}
// reverse the point order
pedestrianPositions.get(ped.getId()).addFirst(ped.getPosition());
if (model.config.isShowTrajectories()) {
renderTrajectory(g, pedestrianPositions.get(ped.getId()), ped);
}
......
package org.vadere.gui.projectview.control;
import org.vadere.gui.projectview.model.ProjectViewModel;
import org.vadere.gui.projectview.view.VTable;
import java.awt.event.ActionEvent;
import javax.swing.*;
public class ActionRunSelectedScenariosOnline extends AbstractAction {
private final ProjectViewModel model;
private final VTable scenarioTable;
public ActionRunSelectedScenariosOnline(final String name, final ProjectViewModel model, final VTable scenarioTable) {
super(name);
this.model = model;
this.scenarioTable = scenarioTable;
}
@Override
public void actionPerformed(final ActionEvent e) {
if (model.runScenarioIsOk()) {
model.getProject().runScenarios(model.getScenarios(scenarioTable.getSelectedRows()));
}
}
}
......@@ -25,6 +25,7 @@ import org.vadere.gui.projectview.control.ActionRenameScenario;
import org.vadere.gui.projectview.control.ActionRunAllScenarios;
import org.vadere.gui.projectview.control.ActionRunOutput;
import org.vadere.gui.projectview.control.ActionRunSelectedScenarios;
import org.vadere.gui.projectview.control.ActionRunSelectedScenariosOnline;
import org.vadere.gui.projectview.control.ActionSaveAsProject;
import org.vadere.gui.projectview.control.ActionSaveProject;
import org.vadere.gui.projectview.control.ActionSeeDiscardChanges;
......@@ -313,14 +314,16 @@ public class ProjectView extends JFrame implements ProjectFinishedListener, Sing
ActionCloseApplication closeApplicationAction =
new ActionCloseApplication(Messages.getString("ProjectView.mntmExit.text"), model);
setAcceleratorFromLocalizedShortcut(closeApplicationAction, "ProjectView.mntmExit.shortcut");
ActionAddScenario addScenarioAction =
new ActionAddScenario(Messages.getString("ProjectView.mntmNew_1.text"), model);
setAcceleratorFromLocalizedShortcut(addScenarioAction, "ProjectView.mntmNew_1.shortcut");
addToProjectSpecificActions(addScenarioAction);
buildMenuBar(closeApplicationAction, addScenarioAction);
buildContentPane();
/*ActionRunSelectedScenariosOnline runSelectedScenariosOnline = new ActionRunSelectedScenariosOnline(
Messages.getString("ProjectView.runOnline.text"), model, scenarioTable);*/
buildMenuBar(closeApplicationAction, addScenarioAction);
buildOutputTablePopup();
buildScenarioTablePopup(addScenarioAction);
buildToolBar();
......@@ -414,6 +417,9 @@ public class ProjectView extends JFrame implements ProjectFinishedListener, Sing
mnScenario.add(mntmNew_1);
mnScenario.add(mntmGenerateScenarioFromOutput);
//JMenuItem mntmRunOnline = new JMenuItem(runSelectedScenariosOnline);
//mnScenario.add(mntmRunOnline);
JMenu mnHelp = new JMenu(Messages.getString("ProjectView.mnHelp.text"));
menuBar.add(mnHelp);
......
......@@ -109,7 +109,7 @@
"attributesSimulation" : {
"finishTime" : 200.0,
"simTimeStepLength" : 0.4,
"realTimeSimTimeRatio" : 0.0,
"realTimeSimTimeRatio" : 0.4,
"writeSimulationData" : true,
"visualizationEnabled" : true,
"printFPS" : false,
......@@ -186,13 +186,13 @@
"type" : "RECTANGLE"
},
"interSpawnTimeDistribution" : "org.vadere.state.scenario.ConstantDistribution",
"distributionParameters" : [ 1.0 ],
"spawnNumber" : 300,
"maxSpawnNumberTotal" : -1,
"distributionParameters" : [ 5.0 ],
"spawnNumber" : 1,
"maxSpawnNumberTotal" : 40,
"startTime" : 0.0,
"endTime" : 0.0,
"endTime" : 20.0,
"spawnAtRandomPositions" : true,
"useFreeSpaceOnly" : true,
"useFreeSpaceOnly" : false,
"targetIds" : [ 1 ],
"groupSizeDistribution" : [ 1.0 ],
"dynamicElementType" : "PEDESTRIAN"
......
{
"name" : "bridge_coordinates_kai",
"description" : "",
"release" : "0.6",
"processWriters" : {
"files" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOutputFile",
"filename" : "postvis.trajectories",
"processors" : [ 1, 2 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOverlapOutputFile",
"filename" : "overlaps.csv",
"processors" : [ 3 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.NoDataKeyOutputFile",
"filename" : "overlapCount.txt",
"processors" : [ 4 ]
} ],
"processors" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianPositionProcessor",
"id" : 1
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianTargetIdProcessor",
"id" : 2
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianOverlapProcessor",
"id" : 3
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.NumberOverlapsProcessor",
"id" : 4,
"attributesType" : "org.vadere.state.attributes.processor.AttributesNumberOverlapsProcessor",
"attributes" : {
"pedestrianOverlapProcessorId" : 3
}
} ],
"isTimestamped" : true
},
"scenario" : {
"mainModel" : "org.vadere.simulator.models.osm.OptimalStepsModel",
"attributesModel" : {
"org.vadere.state.attributes.models.AttributesOSM" : {
"stepCircleResolution" : 4,
"numberOfCircles" : 1,
"varyStepDirection" : false,
"stepLengthIntercept" : 0.4625,
"stepLengthSlopeSpeed" : 0.2345,
"stepLengthSD" : 0.036,
"movementThreshold" : 0.0,
"optimizationType" : "NELDER_MEAD",
"movementType" : "ARBITRARY",
"dynamicStepLength" : false,
"updateType" : "EVENT_DRIVEN",
"seeSmallWalls" : false,
"minimumStepLength" : false,
"targetPotentialModel" : "org.vadere.simulator.models.potential.fields.PotentialFieldTargetGrid",
"pedestrianPotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldPedestrianCompactSoftshell",
"obstaclePotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldObstacleCompactSoftshell",
"submodels" : [ ]
},
"org.vadere.state.attributes.models.AttributesPotentialCompactSoftshell" : {
"pedPotentialIntimateSpaceWidth" : 0.45,
"pedPotentialPersonalSpaceWidth" : 1.2,
"pedPotentialHeight" : 50.0,
"obstPotentialWidth" : 0.8,
"obstPotentialHeight" : 6.0,
"intimateSpaceFactor" : 1.2,
"personalSpacePower" : 1,
"intimateSpacePower" : 1
},
"org.vadere.state.attributes.models.AttributesFloorField" : {
"createMethod" : "HIGH_ACCURACY_FAST_MARCHING",
"potentialFieldResolution" : 0.1,
"obstacleGridPenalty" : 0.1,
"targetAttractionStrength" : 1.0,
"timeCostAttributes" : {
"standardDeviation" : 0.7,
"type" : "OBSTACLES",
"obstacleDensityWeight" : 3.5,
"pedestrianSameTargetDensityWeight" : 3.5,
"pedestrianOtherTargetDensityWeight" : 3.5,
"pedestrianWeight" : 3.5,
"queueWidthLoading" : 1.0,
"pedestrianDynamicWeight" : 6.0,
"loadingType" : "CONSTANT"
}
}
},
"attributesSimulation" : {
"finishTime" : 200.0,
"simTimeStepLength" : 0.4,
"realTimeSimTimeRatio" : 0.0,
"writeSimulationData" : true,
"visualizationEnabled" : true,
"printFPS" : false,
"digitsPerCoordinate" : 2,
"useFixedSeed" : true,
"fixedSeed" : -3213925745664992646,
"simulationSeed" : 0,
"runInOnlineMode" : true,
"onlineModeSubscriber" : "tcp://localhost:5012",
"onlineModePublisher" : "tcp://localhost:5049"
},
"topography" : {
"attributes" : {
"bounds" : {
"x" : 564280.0,
"y" : 5933391.0,
"width" : 50.0,
"height" : 50.0
},
"boundingBoxWidth" : 0.5,
"bounded" : true
},
"obstacles" : [ {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564330.2959240791,
"y" : 5933433.506680049
}, {
"x" : 564311.2959240791,
"y" : 5933433.506680049
}, {
"x" : 564300.9318720899,
"y" : 5933401.544835466
}, {
"x" : 564312.1291207125,
"y" : 5933396.936819093
}, {
"x" : 564330.1291207125,
"y" : 5933396.936819093
} ]
},
"id" : 1
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564309.9431192318,
"y" : 5933389.478288522
}, {
"x" : 564309.9431192318,
"y" : 5933391.478288522
}, {
"x" : 564287.7114777192,
"y" : 5933401.030658626
}, {
"x" : 564280.3263510215,
"y" : 5933402.349890053
}, {
"x" : 564280.3263510215,
"y" : 5933390.349890053
} ]
},
"id" : 2
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564283.8886836024,
"y" : 5933411.251412248
}, {
"x" : 564290.0683166787,
"y" : 5933406.240937642
}, {
"x" : 564295.4593781466,
"y" : 5933403.808810473
}, {
"x" : 564303.4638894079,
"y" : 5933436.907734532
}, {
"x" : 564280.4638894079,
"y" : 5933436.907734532
} ]
},
"id" : -1
} ],
"stairs" : [ ],
"targets" : [ {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564280.3,
"y" : 5933402.3
}, {
"x" : 564280.1,
"y" : 5933403.7
}, {
"x" : 564280.5,
"y" : 5933414.2
}, {
"x" : 564283.9,
"y" : 5933411.2
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
}, {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564313.9,
"y" : 5933391.2
}, {
"x" : 564309.9,
"y" : 5933391.5
}, {
"x" : 564312.3,
"y" : 5933397.0
}, {
"x" : 564316.4,
"y" : 5933395.9
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
} ],
"sources" : [ {
"id" : -1,
"shape" : {
"x" : 564304.3,
"y" : 5933435.5,
"width" : 8.0,
"height" : 4.4,
"type" : "RECTANGLE"
},
"interSpawnTimeDistribution" : "org.vadere.state.scenario.ConstantDistribution",
"distributionParameters" : [ 1.0 ],
"spawnNumber" : 0,
"maxSpawnNumberTotal" : -1,
"startTime" : 0.0,
"endTime" : 0.0,
"spawnAtRandomPositions" : false,
"useFreeSpaceOnly" : true,
"targetIds" : [ 1 ],
"groupSizeDistribution" : [ 1.0 ],
"dynamicElementType" : "PEDESTRIAN"
} ],
"dynamicElements" : [ ],
"attributesPedestrian" : {
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0
},
"attributesCar" : {
"id" : -1,
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0,
"length" : 4.5,
"width" : 1.7,
"direction" : {
"x" : 1.0,
"y" : 0.0
}
}
}
}
}
\ No newline at end of file
{
"name" : "bridge_coordinates_kai_NAVIGATION",
"description" : "",
"release" : "0.6",
"processWriters" : {
"files" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOutputFile",
"filename" : "postvis.trajectories",
"processors" : [ 1, 2 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOverlapOutputFile",
"filename" : "overlaps.csv",
"processors" : [ 3 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.NoDataKeyOutputFile",
"filename" : "overlapCount.txt",
"processors" : [ 4 ]
} ],
"processors" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianPositionProcessor",
"id" : 1
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianTargetIdProcessor",
"id" : 2
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianOverlapProcessor",
"id" : 3
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.NumberOverlapsProcessor",
"id" : 4,
"attributesType" : "org.vadere.state.attributes.processor.AttributesNumberOverlapsProcessor",
"attributes" : {
"pedestrianOverlapProcessorId" : 3
}
} ],
"isTimestamped" : true
},
"scenario" : {
"mainModel" : "org.vadere.simulator.models.osm.OptimalStepsModel",
"attributesModel" : {
"org.vadere.state.attributes.models.AttributesOSM" : {
"stepCircleResolution" : 18,
"numberOfCircles" : 1,
"varyStepDirection" : false,
"stepLengthIntercept" : 0.4625,
"stepLengthSlopeSpeed" : 0.2345,
"stepLengthSD" : 0.036,
"movementThreshold" : 0.0,
"optimizationType" : "NELDER_MEAD",
"movementType" : "ARBITRARY",
"dynamicStepLength" : false,
"updateType" : "EVENT_DRIVEN",
"seeSmallWalls" : false,
"minimumStepLength" : false,
"targetPotentialModel" : "org.vadere.simulator.models.potential.fields.PotentialFieldTargetGrid",
"pedestrianPotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldPedestrianCompactSoftshell",
"obstaclePotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldObstacleCompactSoftshell",
"submodels" : [ ]
},
"org.vadere.state.attributes.models.AttributesPotentialCompactSoftshell" : {
"pedPotentialIntimateSpaceWidth" : 0.45,
"pedPotentialPersonalSpaceWidth" : 1.2,
"pedPotentialHeight" : 50.0,
"obstPotentialWidth" : 0.8,
"obstPotentialHeight" : 6.0,
"intimateSpaceFactor" : 1.2,
"personalSpacePower" : 1,
"intimateSpacePower" : 1
},
"org.vadere.state.attributes.models.AttributesFloorField" : {
"createMethod" : "HIGH_ACCURACY_FAST_MARCHING",
"potentialFieldResolution" : 0.1,
"obstacleGridPenalty" : 0.1,
"targetAttractionStrength" : 1.0,
"timeCostAttributes" : {
"standardDeviation" : 0.7,
"type" : "NAVIGATION",
"obstacleDensityWeight" : 3.5,
"pedestrianSameTargetDensityWeight" : 3.5,
"pedestrianOtherTargetDensityWeight" : 3.5,
"pedestrianWeight" : 3.5,
"queueWidthLoading" : 1.0,
"pedestrianDynamicWeight" : 6.0,
"loadingType" : "CONSTANT"
}
}
},
"attributesSimulation" : {
"finishTime" : 200.0,
"simTimeStepLength" : 0.4,
"realTimeSimTimeRatio" : 0.0,
"writeSimulationData" : true,
"visualizationEnabled" : true,
"printFPS" : false,
"digitsPerCoordinate" : 2,
"useFixedSeed" : true,
"fixedSeed" : -3213925745664992646,
"simulationSeed" : 0,
"runInOnlineMode" : false,
"onlineModeSubscriber" : "tcp://localhost:5010",
"onlineModePublisher" : "tcp://localhost:5011"
},
"topography" : {
"attributes" : {
"bounds" : {
"x" : 564280.0,
"y" : 5933391.0,
"width" : 50.0,
"height" : 50.0
},
"boundingBoxWidth" : 0.5,
"bounded" : true
},
"obstacles" : [ {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564330.2959240791,
"y" : 5933433.506680049
}, {
"x" : 564311.2959240791,
"y" : 5933433.506680049
}, {
"x" : 564300.9318720899,
"y" : 5933401.544835466
}, {
"x" : 564312.1291207125,
"y" : 5933396.936819093
}, {
"x" : 564330.1291207125,
"y" : 5933396.936819093
} ]
},
"id" : 1
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564309.9431192318,
"y" : 5933389.478288522
}, {
"x" : 564309.9431192318,
"y" : 5933391.478288522
}, {
"x" : 564287.7114777192,
"y" : 5933401.030658626
}, {
"x" : 564280.3263510215,
"y" : 5933402.349890053
}, {
"x" : 564280.3263510215,
"y" : 5933390.349890053
} ]
},
"id" : 2
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564283.8886836024,
"y" : 5933411.251412248
}, {
"x" : 564290.0683166787,
"y" : 5933406.240937642
}, {
"x" : 564295.4593781466,
"y" : 5933403.808810473
}, {
"x" : 564303.4638894079,
"y" : 5933436.907734532
}, {
"x" : 564280.4638894079,
"y" : 5933436.907734532
} ]
},
"id" : -1
} ],
"stairs" : [ ],
"targets" : [ {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564280.3,
"y" : 5933402.3
}, {
"x" : 564280.1,
"y" : 5933403.7
}, {
"x" : 564280.5,
"y" : 5933414.2
}, {
"x" : 564283.9,
"y" : 5933411.2
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
}, {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 564313.9,
"y" : 5933391.2
}, {
"x" : 564309.9,
"y" : 5933391.5
}, {
"x" : 564312.3,
"y" : 5933397.0
}, {
"x" : 564316.4,
"y" : 5933395.9
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
} ],
"sources" : [ {
"id" : -1,
"shape" : {
"x" : 564304.3,
"y" : 5933435.5,
"width" : 8.0,
"height" : 4.4,
"type" : "RECTANGLE"
},
"interSpawnTimeDistribution" : "org.vadere.state.scenario.ConstantDistribution",
"distributionParameters" : [ 1.0 ],
"spawnNumber" : 4,
"maxSpawnNumberTotal" : -1,
"startTime" : 0.0,
"endTime" : 100.0,
"spawnAtRandomPositions" : false,
"useFreeSpaceOnly" : true,
"targetIds" : [ 1 ],
"groupSizeDistribution" : [ 1.0 ],
"dynamicElementType" : "PEDESTRIAN"
} ],
"dynamicElements" : [ ],
"attributesPedestrian" : {
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0
},
"attributesCar" : {
"id" : -1,
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0,
"length" : 4.5,
"width" : 1.7,
"direction" : {
"x" : 1.0,
"y" : 0.0
}
}
}
}
}
\ No newline at end of file
{
"name" : "bridge_coordinates_kai_origin_0",
"description" : "",
"release" : "0.6",
"processWriters" : {
"files" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOutputFile",
"filename" : "postvis.trajectories",
"processors" : [ 1, 2 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOverlapOutputFile",
"filename" : "overlaps.csv",
"processors" : [ 3 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.NoDataKeyOutputFile",
"filename" : "overlapCount.txt",
"processors" : [ 4 ]
} ],
"processors" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianPositionProcessor",
"id" : 1
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianTargetIdProcessor",
"id" : 2
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianOverlapProcessor",
"id" : 3
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.NumberOverlapsProcessor",
"id" : 4,
"attributesType" : "org.vadere.state.attributes.processor.AttributesNumberOverlapsProcessor",
"attributes" : {
"pedestrianOverlapProcessorId" : 3
}
} ],
"isTimestamped" : true
},
"scenario" : {
"mainModel" : "org.vadere.simulator.models.osm.OptimalStepsModel",
"attributesModel" : {
"org.vadere.state.attributes.models.AttributesOSM" : {
"stepCircleResolution" : 18,
"numberOfCircles" : 1,
"varyStepDirection" : false,
"stepLengthIntercept" : 0.4625,
"stepLengthSlopeSpeed" : 0.2345,
"stepLengthSD" : 0.036,
"movementThreshold" : 0.0,
"optimizationType" : "NELDER_MEAD",
"movementType" : "ARBITRARY",
"dynamicStepLength" : false,
"updateType" : "EVENT_DRIVEN",
"seeSmallWalls" : false,
"minimumStepLength" : false,
"targetPotentialModel" : "org.vadere.simulator.models.potential.fields.PotentialFieldTargetGrid",
"pedestrianPotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldPedestrianCompactSoftshell",
"obstaclePotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldObstacleCompactSoftshell",
"submodels" : [ ]
},
"org.vadere.state.attributes.models.AttributesPotentialCompactSoftshell" : {
"pedPotentialIntimateSpaceWidth" : 0.45,
"pedPotentialPersonalSpaceWidth" : 1.2,
"pedPotentialHeight" : 50.0,
"obstPotentialWidth" : 0.8,
"obstPotentialHeight" : 6.0,
"intimateSpaceFactor" : 1.2,
"personalSpacePower" : 1,
"intimateSpacePower" : 1
},
"org.vadere.state.attributes.models.AttributesFloorField" : {
"createMethod" : "HIGH_ACCURACY_FAST_MARCHING",
"potentialFieldResolution" : 0.1,
"obstacleGridPenalty" : 0.1,
"targetAttractionStrength" : 1.0,
"timeCostAttributes" : {
"standardDeviation" : 0.7,
"type" : "UNIT",
"obstacleDensityWeight" : 3.5,
"pedestrianSameTargetDensityWeight" : 3.5,
"pedestrianOtherTargetDensityWeight" : 3.5,
"pedestrianWeight" : 3.5,
"queueWidthLoading" : 1.0,
"pedestrianDynamicWeight" : 6.0,
"loadingType" : "CONSTANT"
}
}
},
"attributesSimulation" : {
"finishTime" : 200.0,
"simTimeStepLength" : 0.4,
"realTimeSimTimeRatio" : 0.0,
"writeSimulationData" : true,
"visualizationEnabled" : true,
"printFPS" : false,
"digitsPerCoordinate" : 2,
"useFixedSeed" : true,
"fixedSeed" : -3213925745664992646,
"simulationSeed" : 0,
"runInOnlineMode" : false,
"onlineModeSubscriber" : "tcp://localhost:5010",
"onlineModePublisher" : "tcp://localhost:5011"
},
"topography" : {
"attributes" : {
"bounds" : {
"x" : 0.0,
"y" : 0.0,
"width" : 50.0,
"height" : 50.0
},
"boundingBoxWidth" : 0.5,
"bounded" : true
},
"obstacles" : [ {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 50.295924079138786,
"y" : 42.50668004900217
}, {
"x" : 31.295924079138786,
"y" : 42.50668004900217
}, {
"x" : 20.931872089859098,
"y" : 10.544835465960205
}, {
"x" : 32.12912071251776,
"y" : 5.936819093301892
}, {
"x" : 50.12912071251776,
"y" : 5.936819093301892
} ]
},
"id" : 1
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 29.94311923184432,
"y" : -1.52171147800982
}, {
"x" : 29.94311923184432,
"y" : 0.47828852199018
}, {
"x" : 7.711477719247341,
"y" : 10.030658625997603
}, {
"x" : 0.32635102153290063,
"y" : 11.349890053272247
}, {
"x" : 0.32635102153290063,
"y" : -0.6501099467277527
} ]
},
"id" : 2
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 3.88868360244669,
"y" : 20.25141224823892
}, {
"x" : 10.068316678749397,
"y" : 15.240937641821802
}, {
"x" : 15.45937814656645,
"y" : 12.808810473419726
}, {
"x" : 23.463889407925308,
"y" : 45.90773453190923
}, {
"x" : 0.46388940792530775,
"y" : 45.90773453190923
} ]
},
"id" : -1
} ],
"stairs" : [ ],
"targets" : [ {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 0.30000000004656613,
"y" : 11.299999999813735
}, {
"x" : 0.09999999997671694,
"y" : 12.700000000186265
}, {
"x" : 0.5,
"y" : 23.200000000186265
}, {
"x" : 3.900000000023283,
"y" : 20.200000000186265
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
}, {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 33.90000000002328,
"y" : 0.20000000018626451
}, {
"x" : 29.900000000023283,
"y" : 0.5
}, {
"x" : 32.300000000046566,
"y" : 6.0
}, {
"x" : 36.40000000002328,
"y" : 4.900000000372529
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
} ],
"sources" : [ {
"id" : -1,
"shape" : {
"x" : 24.300000000046566,
"y" : 44.5,
"width" : 8.0,
"height" : 4.4,
"type" : "RECTANGLE"
},
"interSpawnTimeDistribution" : "org.vadere.state.scenario.ConstantDistribution",
"distributionParameters" : [ 1.0 ],
"spawnNumber" : 4,
"maxSpawnNumberTotal" : -1,
"startTime" : 0.0,
"endTime" : 100.0,
"spawnAtRandomPositions" : false,
"useFreeSpaceOnly" : true,
"targetIds" : [ 1 ],
"groupSizeDistribution" : [ 1.0 ],
"dynamicElementType" : "PEDESTRIAN"
} ],
"dynamicElements" : [ ],
"attributesPedestrian" : {
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0
},
"attributesCar" : {
"id" : -1,
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0,
"length" : 4.5,
"width" : 1.7,
"direction" : {
"x" : 1.0,
"y" : 0.0
}
}
}
}
}
\ No newline at end of file
{
"name" : "bridge_coordinates_kai_origin_0_NAVIGATION",
"description" : "",
"release" : "0.6",
"processWriters" : {
"files" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOutputFile",
"filename" : "postvis.trajectories",
"processors" : [ 1, 2 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.TimestepPedestrianIdOverlapOutputFile",
"filename" : "overlaps.csv",
"processors" : [ 3 ]
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.outputfile.NoDataKeyOutputFile",
"filename" : "overlapCount.txt",
"processors" : [ 4 ]
} ],
"processors" : [ {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianPositionProcessor",
"id" : 1
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianTargetIdProcessor",
"id" : 2
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.PedestrianOverlapProcessor",
"id" : 3
}, {
"type" : "org.vadere.simulator.projects.dataprocessing.processor.NumberOverlapsProcessor",
"id" : 4,
"attributesType" : "org.vadere.state.attributes.processor.AttributesNumberOverlapsProcessor",
"attributes" : {
"pedestrianOverlapProcessorId" : 3
}
} ],
"isTimestamped" : true
},
"scenario" : {
"mainModel" : "org.vadere.simulator.models.osm.OptimalStepsModel",
"attributesModel" : {
"org.vadere.state.attributes.models.AttributesOSM" : {
"stepCircleResolution" : 18,
"numberOfCircles" : 1,
"varyStepDirection" : false,
"stepLengthIntercept" : 0.4625,
"stepLengthSlopeSpeed" : 0.2345,
"stepLengthSD" : 0.036,
"movementThreshold" : 0.0,
"optimizationType" : "NELDER_MEAD",
"movementType" : "ARBITRARY",
"dynamicStepLength" : false,
"updateType" : "EVENT_DRIVEN",
"seeSmallWalls" : false,
"minimumStepLength" : false,
"targetPotentialModel" : "org.vadere.simulator.models.potential.fields.PotentialFieldTargetGrid",
"pedestrianPotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldPedestrianCompactSoftshell",
"obstaclePotentialModel" : "org.vadere.simulator.models.potential.PotentialFieldObstacleCompactSoftshell",
"submodels" : [ ]
},
"org.vadere.state.attributes.models.AttributesPotentialCompactSoftshell" : {
"pedPotentialIntimateSpaceWidth" : 0.45,
"pedPotentialPersonalSpaceWidth" : 1.2,
"pedPotentialHeight" : 50.0,
"obstPotentialWidth" : 0.8,
"obstPotentialHeight" : 6.0,
"intimateSpaceFactor" : 1.2,
"personalSpacePower" : 1,
"intimateSpacePower" : 1
},
"org.vadere.state.attributes.models.AttributesFloorField" : {
"createMethod" : "HIGH_ACCURACY_FAST_MARCHING",
"potentialFieldResolution" : 0.1,
"obstacleGridPenalty" : 0.1,
"targetAttractionStrength" : 1.0,
"timeCostAttributes" : {
"standardDeviation" : 0.7,
"type" : "NAVIGATION",
"obstacleDensityWeight" : 3.5,
"pedestrianSameTargetDensityWeight" : 3.5,
"pedestrianOtherTargetDensityWeight" : 3.5,
"pedestrianWeight" : 3.5,
"queueWidthLoading" : 1.0,
"pedestrianDynamicWeight" : 6.0,
"loadingType" : "CONSTANT"
}
}
},
"attributesSimulation" : {
"finishTime" : 200.0,
"simTimeStepLength" : 0.4,
"realTimeSimTimeRatio" : 0.0,
"writeSimulationData" : true,
"visualizationEnabled" : true,
"printFPS" : false,
"digitsPerCoordinate" : 2,
"useFixedSeed" : true,
"fixedSeed" : -3213925745664992646,
"simulationSeed" : 0,
"runInOnlineMode" : false,
"onlineModeSubscriber" : "tcp://localhost:5010",
"onlineModePublisher" : "tcp://localhost:5011"
},
"topography" : {
"attributes" : {
"bounds" : {
"x" : 0.0,
"y" : 0.0,
"width" : 50.0,
"height" : 50.0
},
"boundingBoxWidth" : 0.5,
"bounded" : true
},
"obstacles" : [ {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 50.295924079138786,
"y" : 42.50668004900217
}, {
"x" : 31.295924079138786,
"y" : 42.50668004900217
}, {
"x" : 20.931872089859098,
"y" : 10.544835465960205
}, {
"x" : 32.12912071251776,
"y" : 5.936819093301892
}, {
"x" : 50.12912071251776,
"y" : 5.936819093301892
} ]
},
"id" : 1
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 29.94311923184432,
"y" : -1.52171147800982
}, {
"x" : 29.94311923184432,
"y" : 0.47828852199018
}, {
"x" : 7.711477719247341,
"y" : 10.030658625997603
}, {
"x" : 0.32635102153290063,
"y" : 11.349890053272247
}, {
"x" : 0.32635102153290063,
"y" : -0.6501099467277527
} ]
},
"id" : 2
}, {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 3.88868360244669,
"y" : 20.25141224823892
}, {
"x" : 10.068316678749397,
"y" : 15.240937641821802
}, {
"x" : 15.45937814656645,
"y" : 12.808810473419726
}, {
"x" : 23.463889407925308,
"y" : 45.90773453190923
}, {
"x" : 0.46388940792530775,
"y" : 45.90773453190923
} ]
},
"id" : -1
} ],
"stairs" : [ ],
"targets" : [ {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 0.30000000004656613,
"y" : 11.299999999813735
}, {
"x" : 0.09999999997671694,
"y" : 12.700000000186265
}, {
"x" : 0.5,
"y" : 23.200000000186265
}, {
"x" : 3.900000000023283,
"y" : 20.200000000186265
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
}, {
"id" : 1,
"absorbing" : true,
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 33.90000000002328,
"y" : 0.20000000018626451
}, {
"x" : 29.900000000023283,
"y" : 0.5
}, {
"x" : 32.300000000046566,
"y" : 6.0
}, {
"x" : 36.40000000002328,
"y" : 4.900000000372529
} ]
},
"waitingTime" : 0.0,
"waitingTimeYellowPhase" : 0.0,
"parallelWaiters" : 0,
"individualWaiting" : true,
"deletionDistance" : 0.1,
"startingWithRedLight" : false,
"nextSpeed" : -1.0
} ],
"sources" : [ {
"id" : -1,
"shape" : {
"x" : 24.300000000046566,
"y" : 44.5,
"width" : 8.0,
"height" : 4.4,
"type" : "RECTANGLE"
},
"interSpawnTimeDistribution" : "org.vadere.state.scenario.ConstantDistribution",
"distributionParameters" : [ 1.0 ],
"spawnNumber" : 4,
"maxSpawnNumberTotal" : -1,
"startTime" : 0.0,
"endTime" : 100.0,
"spawnAtRandomPositions" : false,
"useFreeSpaceOnly" : true,
"targetIds" : [ 1 ],
"groupSizeDistribution" : [ 1.0 ],
"dynamicElementType" : "PEDESTRIAN"
} ],
"dynamicElements" : [ ],
"attributesPedestrian" : {
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0
},
"attributesCar" : {
"id" : -1,
"radius" : 0.195,
"densityDependentSpeed" : false,
"speedDistributionMean" : 1.34,
"speedDistributionStandardDeviation" : 0.26,
"minimumSpeed" : 0.5,
"maximumSpeed" : 2.2,
"acceleration" : 2.0,
"length" : 4.5,
"width" : 1.7,
"direction" : {
"x" : 1.0,
"y" : 0.0
}
}
}
}
}
\ No newline at end of file
s2ucre
\ No newline at end of file
......@@ -214,8 +214,14 @@
<artifactId>annotation</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>s2ucre</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<dependency>
<groupId>net.sourceforge.argparse4j</groupId>
<artifactId>argparse4j</artifactId>
<version>0.4.3</version>
......