An experimental C++ workspace exploring advanced robotic 3D printing techniques. This repository contains two specialized core libraries and their test suites:
- KRONOS – Kinematic Robotic Operations & Navigation Orchestration System
- Kinematics, motion primitives, and low-level control utilities
- MEDUSA – Multi-dimensional Extrusion & Dimensional Unified Slicing Algorithm
- Advanced slicing and path planning for multi-dimensional extrusion
src/– Source code for both librarieskronos/– Library sources and headers for kinematics/controlmedusa/– Library sources and headers for slicing/path planning
tests/– Test targets for each librarydocs/– Project documentation and thesis materialsdata/– Sample models and calibration data.clang-tidy– Clang-Tidy configuration enforcing naming rules.clang-format– Code formatting configuration
- CMake ≥ 3.22.1
- A C++17 compatible compiler (e.g., GCC, Clang, MSVC)
- A recent Clang/LLVM toolchain
- Ninja (optional but recommended for faster builds)
This repository includes a minimal Docker setup to run ROS 2 Rolling with C++ support, enabling cross-platform development and testing.
- Build the Docker image:
docker compose build- Start the container interactively:
docker compose run rosRun tests via CTest:
ctest --test-dir cmake-build-debug --output-on-failure- Parameter names must start with
a(e.g.,aCount) - Global variables with
g(e.g.,gCache) - Non-static data members with
m(e.g.,mBuffer) - Constants with
k(e.g.,kMaxSize), including class and member constants
Additionally, we enforce CamelCase for class names and camelBack for method/function names.
A .clang-format configuration is available to ensure consistent code style.
See docs/ for detailed information about:
- Thesis materials and research notes
- Code documentation generated with Doxygen
To be determined.