A simple http server is sufficient to run the simulation, no other backend is needed.
Additional a standalone application is available that runs on Electron and requires Node.js.
Download the latest version as zip or clone this repository using git:
git clone https://github.com/tensorware/aos-simulation.git
Browse into the repository root folder and start a webserver: (e.g. builtin python webserver)
python3 -m http.server 8080
The simulation is now available via http://127.0.0.1:8080.
First install Node.js and then run npm install
from the repository root folder. This installs Electron with the version defined in package.json. Start the application with:
npx electron .
Settings of the simulation can also be defined by url and command line parameters. Here some examples:
Set drone position: https://aos.tensorware.app/#preset=demo&drone.eastWest=-35&drone.northSouth=-35
npx electron . --preset=demo --drone.eastWest=-35 --drone.northSouth=-35
Overwrite preset values: https://aos.tensorware.app/#preset=demo&forest.size=10&forest.persons.count=2
npx electron . --preset=demo --forest.size=10 --forest.persons.count=2
Capture and export data (single-run): https://aos.tensorware.app/#preset=demo&drone.camera.view=90&capture=true
npx electron . --preset=demo --drone.camera.view=90 --capture=true
Capture and export data (multi-run): https://aos.tensorware.app/#preset=demo&drone.camera.view=[90,80,70]&capture=true
npx electron . --preset=demo --drone.camera.view=[90,80,70] --capture=true
Source code is written in plain JavaScript, no additional build is required.
The ESLint version defined in package.json and the corresponding .eslintrc.json file is configured for basic syntax checking.
Settings for VSCode are available in launch.json, settings.json and tasks.json.
Additional extensions may be installed: