IceSL-vrprinter is a Gcode vizualizer and simulator.
Created by members of the team behind IceSL, IceSL-vrprinter aims to provide a way to preview, simulate and create statitics on any provided Gcode. In addition to these principles, the web version is designed to feature a text editor, to follow in real time the simulation advancement, and to edit it.
The web version of this tool is currently deployed and in use on IceSL's website.
- Automatic Gcode flavor detection, to support most of Gcodes.
- Multi-extrusion and extruders offsets support.
- Basic statistics visualization and export (layers overhang and overlap).
- Real-time Gcode editing (web version).
To build IceSL-vrprinter, you will need the following components installed on your computer:
- git
- CMake
- C++ standard libraries
- Any IDE supporting C++ (on Windows, Visual Studio is recommended)
To build IceSL-vrprinter on Linux, you will also need glfw3.
sudo apt-get install libglfw3-dev
Once the required components installed, you can fetch the source code by cloning or downloading a .zip of the source files.
git clone https://github.com/mfx-inria/icesl-vrprinter.git
Initialize and fetch the submodules dependencies.
git submodule update --init --recursive
git submodule update --recursive --remote # with git 1.8.2 or above
# or
git submodule update --recursive # with git 1.7.3 or above
Then you can, if you want, fetch the latest changes of each submodule.
git pull --recurse-submodules
You can now build the project for your IDE of choice using CMAKE, and then compile.
With the Emscriten tools properly installed on your system, you can use these helper scripts:
emcc_build.bat
for Windows.emcc_build.sh
for Linux.
Note: These helper scripts assumes that your
build
folder is directly at the root of the project. If yourbuild
folder is located elsewhere, modify the helper script accordingly. For the Windows script, it is also assumed that Emscripten is available in the PATH.
Once the Emscriten build and compilation done, you have to execute the packaging script:
www/js_package.bat
for Windows.www/js_package.sh
for Linux.
This script will bundle up default.icss
(theming file) and icesl.gcode
(the example/preview gcode) into files.data
.
You can then copy the www
folder in you webserver of choice
Note: You can copy all of the
www
folder content, exept the packaging scripts and the packaged files.
A more detailed procedure can be found in WEB-COMPILING.md
Create your own fork of the project, and submit a pull request.
Note: When contributing using a pull request, don't hesitate to be precise in the description of your contribution, and don't forget to document what you did. It will greatly help us to integrate your changes!
If you encounter a bug, or have an idea for a new feature, please fill an issue so we can discuss about it.
Note: Please be as precise as possible when filling an issue. For bug reports, please join some scripts/files that reproduce the problem. Using a label on your Issue will greatly help us tracking and processing them.
You can follow the Google C++ Style Guide for new code.