Tuning Evacuation Visualization module configuration and creating the inner packages
The evacuation Visualization Module includes 2D/3D Visualization Systems which generate 2D and 3D representations of the simulation and provide tools for users to interact with the evacuation simulation at run-time (e.g., trigger events, modify agent properties). These systems also include the Editing System which allow users of the simulation to specify virtual evacuation environments (e.g., build a virtual city) and modify them at run-time (e.g., add/edit/delete environment objects).
1. Tunning the “evacuation-visualization” module configuration
We start by tunning the POM configuration of the “evacuation-visualiation” module to manage its dependencies.
Configuration Steps:
-
- Double click on the “pom.xml” file located inside the “evacuation-visualization” module. The Maven POM Editor should appear.
- In the opened window, click on the “pom.xml” tab. The content of the project object model (POM) should be displayed in XML format as follows:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <!-- ======================================= --> <!-- ==== Project Information === --> <!-- ======================================= --> <parent> <groupId>edu.utdallas.mavs.evacuation</groupId> <artifactId>evacuation</artifactId> <version>1.0.0-SNAPSHOT</version> </parent> <artifactId>evacuation-visualization</artifactId> <name>evacuation-visualization</name> <description>Visualization of the evacuation system</description> <packaging>jar</packaging> </project>
- Add the following dependencies’ configuration to include the dependencies used by the evacuation visualization module. You should be careful here, the group infomration should match to the information you used in Tutorial 1. The content of the project object model (POM) should be as follows:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <!-- ======================================= --> <!-- ==== Project Information === --> <!-- ======================================= --> <parent> <groupId>edu.utdallas.mavs.evacuation</groupId> <artifactId>evacuation</artifactId> <version>1.0.0-SNAPSHOT</version> </parent> <artifactId>evacuation-visualization</artifactId> <name>evacuation-visualization</name> <description>Visualization of the evacuation system</description> <packaging>jar</packaging> <!-- ======================================= --> <!-- ==== Dependencies === --> <!-- ======================================= --> <dependencies> <!-- Project Dependencies --> <dependency> <groupId>edu.utdallas.mavs.evacuation</groupId> <artifactId>evacuation-simulation</artifactId> <version>1.0.0-SNAPSHOT</version> </dependency> <!-- General Dependencies --> <dependency> <groupId>edu.utdallas.mavs.divas</groupId> <artifactId>divas-core</artifactId> <version>${divas.version}</version> </dependency> <dependency> <groupId>edu.utdallas.mavs.divas</groupId> <artifactId>divas-mts</artifactId> <version>${divas.version}</version> </dependency> <dependency> <groupId>edu.utdallas.mavs.divas</groupId> <artifactId>divas-utils</artifactId> <version>${divas.version}</version> </dependency> <dependency> <groupId>edu.utdallas.mavs.divas</groupId> <artifactId>divas-visualization</artifactId> <version>${divas.version}</version> </dependency> <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <version>${guice.version}</version> </dependency> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-core</artifactId> <version>${activeMQ.version}</version> </dependency> <dependency> <groupId>org.apache.xmlbeans</groupId> <artifactId>xmlbeans</artifactId> <version>2.5.0</version> </dependency> <dependency> <groupId>jme3</groupId> <artifactId>vecmath</artifactId> <version>${jmonkey.version}</version> </dependency> <!-- Nifty GUI --> <dependency> <groupId>jme3</groupId> <artifactId>jME3-niftygui</artifactId> <version>${jmonkey.version}</version> </dependency> <dependency> <groupId>lessvoid</groupId> <artifactId>nifty</artifactId> <version>${nifty.version}</version> </dependency> <dependency> <groupId>jme3</groupId> <artifactId>nifty-default-controls</artifactId> <version>${jmonkey.version}</version> </dependency> <dependency> <groupId>jme3</groupId> <artifactId>nifty-style-black</artifactId> <version>${jmonkey.version}</version> </dependency> </dependencies> </project>
2. Creating the inner packages
-
- Right click on the folder”src/main/java” > New > Package and create a package named “edu.utdallas.mavs.evacuation.visualization”. You can use your own rules to name the package.
- In the same way, create the following sub-packages inside the package “edu.utdallas.mavs.evacuation.visualization”:
- vis2D
- vis3D
- guice
- utils