A C++17 header-only templated library for things such as:
- Vectors
- Planes
- Ellipsoids
- Points
- Lines
- Rays
- and more to come
This library uses Google Highway for the SIMD optimisations.
Simply run:
git clone --recurse-submodules https://github.com/RoBr-01/RTB-Robins-ToolBox.gitOr add it to your project as a git submodule.
Purely as an example, adapt to your own needs as necessary:
add_subdirectory(whereveritis/RTB)
target_link_libraries(${PROJECT_NAME} PRIVATE RTB)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/whereveritis/RTB/inc)To get started either include the specific module you need or use:
#include <RTB.hpp>To include everything.
Then you can do:
RTB::Vector3f myvector;
myvector.NormalizeInPlace();And so on.
This project uses GoogleTest, you can enable the tests by passing
-DBUILD_TESTS=TRUE
Doxygen documentation can be generated by running:
doxygenIn the root of the project. The "docs" folder is automatically generated.