Skip to content
Robotic Motion
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
Pathfinder-Java Update vendordeps Dec 5, 2018
Pathfinder Patch googlebench for use on athena targets, add benchmark for CDT, p… Dec 5, 2018
.clang-format Continue work on the CDT Jul 15, 2018
.gitignore Add generic way to get profile calculation Oct 8, 2018
.gitmodules Add GoogleBench Sep 2, 2018
.travis.yml Add non-version gcc-multilib for linux headers Sep 18, 2018
LICENSE Fix the Coupled model, some general housecleaning Sep 2, 2018 Add Azure Pipelines to Readme Oct 7, 2018
azure-init.yml Fix azure-init.yml format Dec 3, 2018
azure-pipelines.yml Update docker container to have git Dec 5, 2018
azure-steps.yml Only publish test results if there are tests Dec 5, 2018
build.gradle Update Toolchain plugin Dec 5, 2018
gradlew.bat Build raspbian and roborio Dec 3, 2018
settings.gradle Build raspbian and roborio Dec 3, 2018


Azure Status

Pathfinder is a robotic motion library, with logic for motion profiling, path planning and more.

Pathfinder is still under heavy development, and the structure is still very volatile, please see the issues tab if you'd like to contribute to making Pathfinder great.

Cloning (IMPORTANT!)

If you wish to clone pathfinder, ensure you do so with --recurse-submodules. Under libs/, we have a number of submodules (including Eigen and GoogleTest) which are used in the library.

Eigen is the only runtime dependency. All other dependencies are used exclusively during unit testing.

Building Pathfinder

The requirements to build Pathfinder are as follows:

  • A C++ Compiler (C++14 or later). Clang is preferred over GCC as our testing system includes the use of the Clang address sanitizer
  • A Java Compiler (JDK 9+ recommended).
  • GNUPlot Recommended. After unit testing, gnuplot is automatically run to generate graphs of the simulated test cases.

If you wish, you can run a build with benchmarks by passing -PwithBench to your gradle command.

A note on formatting

For C++ files, we include a .clang-format file in the project root. Please ensure all files are formatted using clang-format (or through your IDE if it supports the use of .clang-format) before committing.

You can’t perform that action at this time.