For full documentation, see the ROS wiki or check out some working demos.
JSDoc can be found on the Robot Web Tools website.
This project is released as part of the Robot Web Tools effort.
Pre-built files can be found in either ros3d.js or ros3d.min.js.
Alternatively, you can use the current release via the Robot Web Tools CDN: (full) | (min)
ros3djs depends on:
EventEmitter2. The current supported version is 0.4.14. The current supported version can be found on the Robot Web Tools CDN: (full) | (min)
three.js. The current supported version is r88. The current supported version can be found on the Robot Web Tools CDN: (full) | (min)
THREE.ColladaLoader. The current supported version is r88. The current supported version can be found on the Robot Web Tools CDN: (full)
THREE.STLLoader. The current supported version is r88. The current supported version can be found on the Robot Web Tools CDN: (full)
(ROS)ColladaLoader. We support patched version of ColladaLoader to workaround ros-visualization/rviz#1045. This version can be found on the Robot Web Tools CDN: (full)
roslibjs. The current supported version is 0.20.0. The current supported version can be found on the Robot Web Tools CDN: (full) | (min)
Grunt is used for building, including concatenating, minimizing, documenting, linting, and testing.
- Install Node.js and its package manager, NPM
sudo apt-get install nodejs nodejs-legacy npm
- Install Grunt
sudo npm install -g grunt-cli
sudo rm -rf ~/.npm ~/tmp
- Install the Grunt tasks specific to this project
cd /path/to/ros3djs/
npm install .
- (Optional) To generate the documentation, you'll need to setup Java. Documentation generation is not required for patches.
echo "export JAVA_HOME=/usr/lib/jvm/default-java/jre" >> ~/.bashrc
source ~/.bashrc
- Install Node.js and its package manager, NPM
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update && sudo apt-get install nodejs phantomjs
- Install Grunt
sudo npm install -g grunt-cli
sudo rm -rf ~/.npm ~/tmp
- Install the Grunt tasks specific to this project
cd /path/to/ros3djs/
npm install .
- (Optional) To generate the documentation, you'll need to setup Java. Documentation generation is not required for patches.
echo "export JAVA_HOME=/usr/lib/jvm/default-java/jre" >> ~/.bashrc
source ~/.bashrc
- Install Node.js and its package manager, NPM
- Go to Node.js Downloads
- Download and install the Universal pkg file.
- Install Grunt and the test runner Karma
sudo npm install -g grunt-cli karma
- Install the Grunt tasks specific to this project
cd /path/to/ros3djs/
npm install .
Before proceeding, please confirm you have installed the dependencies above.
To run the build tasks:
cd /path/to/ros3djs/
grunt build
grunt build
will concatenate and minimize the files under src and replace ros3d.js and ros3d.min.js in the build directory. It will also run the linter and test cases. This is what Travis CI runs when a Pull Request is submitted.
grunt dev
will watch for any changes to any of the src/ files and automatically concatenate and minimize the files. This is ideal for those developing as you should only have to run grunt dev
once.
grunt doc
will rebuild all JSDoc for the project.
Utilizes mocha and chai for in browser testing.
To run tests simply open tests/index.html
in a web browser
There are a variety of examples of the different things that can be done with ros3djs.
There are also some examples of how ros3djs can be used in different environments:
- Classic html script tag inclusion
- Modular html script tag inclusion
- Modular import for a Single Page Application
ros3djs is released with a BSD license. For full terms and conditions, see the LICENSE file.
See the AUTHORS.md file for a full list of contributors.