|
Repository Summary
Checkout URI | https://github.com/ros-industrial-consortium/tesseract.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-06-16 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
tesseract_collision | 0.30.0 |
tesseract_common | 0.30.0 |
tesseract_environment | 0.30.0 |
tesseract_geometry | 0.30.0 |
tesseract_kinematics | 0.30.0 |
tesseract_scene_graph | 0.30.0 |
tesseract_srdf | 0.30.0 |
tesseract_state_solver | 0.30.0 |
tesseract_support | 0.30.0 |
tesseract_urdf | 0.30.0 |
tesseract_visualization | 0.30.0 |
README
Tesseract
Platform | CI Status |
---|---|
Linux (Focal) | |
Windows | |
Lint (Clang-Format) | |
Lint (CMake-Format) | |
Lint (Clang-Tidy) | |
Lint (CodeCov) |
The planning framework (Tesseract) was designed to be light weight, limiting the number of dependencies, mainly only using standard libraries like, eigen, boost, orocos and to the packages below. The core packages are ROS agnostic and have full python support.
Dependencies
Tesseract Setup Wizard and Visualization Tools
Python Installation
A self contained Tesseract Python package is available on PyPI for Windows 10+, Ubuntu 20.04, and Ubuntu 22.04. This package contains Tesseract, Tesseract Planning, and all dependencies in the single package. Packages are available for Python 3.7 - 3.10.
To install on Windows:
python -m pip install tesseract-robotics tesseract-robotics-viewer
To install on Ubuntu 20.04 and Ubuntu 22.04:
sudo apt install python3-pip python3-numpy
# The supplied version of pip on Ubuntu 20.04 is too old for manylinux_2_31, upgrade pip
python3 -m pip install -U pip
python3 -m pip install --user tesseract_robotics tesseract_robotics_viewer
Tesseract Core Packages
- tesseract – This is the main class that manages the major component Environment, Forward Kinematics, Inverse Kinematics and loading from various data.
- tesseract_command_language – This package contains a generic command language to support motion and process planning similar to industrial teach pendants
- tesseract_collision – This package contains a common interface for collision checking prividing several implementation of a Bullet collision library and FCL collision library. It includes both continuous and discrete collision checking for convex-convex, convex-concave and concave-concave shapes.
- tesseract_common – This package contains common functionality needed by the majority of the packages.
- tesseract_environment – This package contains the Tesseract Environment which provides functionality to add,remove,move and modify links and joint. It also manages adding object to the contact managers and provides the ability.
- tesseract_geometry – This package contains geometry types used by Tesseract including primitive shapes, mesh, convex hull mesh, octomap and signed distance field.
- tesseract_kinematics – This package contains a common interface for Forward and Inverse kinematics for Chains, Trees and Graphs including implementation using KDL and OPW Kinematics.
- tesseract_scene_graph – This package contains the scene graph which is the data structure used to manage the connectivity of objects in the environment. It inherits from boost graph and provides addition functionality for adding,removing and modifying Links and Joints along with search implementation.
- tesseract_support – This package contains support data used for unit tests and examples throughout Tesseract.
- tesseract_visualization – This package contains visualization utilities and libraries.
Related Repositories
Documentation
Evolution
How to create:
- Create Video:
gource -1280x720 -seconds-per-day 0.2 --auto-skip-seconds 0.2 --disable-bloom -background d0d3d4 --hide filenames,mouse,progress -o - | ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i - -vcodec libx264 -preset ultrafast -pix_fmt yuv420p -crf 1 -threads 0 -bf 0 gource.mp4
- Create Gif:
ffmpeg -i gource.mp4 -r 10 -vf "scale=800:-1,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" tesseract_evolution.gif
Docker Development Container
It common to leverage docker to develop for different distributions of Ubuntu, so a docker compose file has been provided to simplify this process for Tesseract development.
Initial setup, you must create directories for the different distributions to save Qt Creator configs so they persist.
mkdir ~/.config/QtProjectDocker
mkdir ~/.config/QtProjectDocker/focal
mkdir ~/.config/QtProjectDocker/noetic
mkdir ~/.config/QtProjectDocker/jammy
File truncated at 100 lines see the full file
CONTRIBUTING
Any contribution that you make to this repository will be under the Apache 2 License, as dictated by that license:
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.