Skip to content

tf2_2d

  • Software
  • Navigation and mapping
  • Library

A C++ library of 2D geometry classes (vectors, rotations, transforms) modeled on tf2's 3D classes, with conversion to and from tf2 message types.

Made by Locus Robotics, United States (checked on github.com/locusrobotics (opens in a new tab)).

Source on GitHub: github.com/locusrobotics/tf2_2d (opens in a new tab). Facts read at commit a4231c8 (opens in a new tab).

Licenses

Code
BSD-3-Clause (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (BSD-3-Clause) at commit a4231c8 (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Provides 2D Vector2, Rotation and Transform types that mirror the 3D geometry classes in tf2.
  • Supplies fromMsg() and toMsg() conversions between the 2D types and tf2 messages, including Stamped variants.
  • Implements the usual transformation math, such as adding vectors, rotating vectors and multiplying transforms.
  • Keeps every Rotation angle wrapped to the range (-Pi, Pi], so arithmetic on angles needs no manual wrapping.
  • Caches sine and cosine values in Rotation objects, so repeated rotations avoid recomputing trig functions and the cache carries over to copies and inverses.

Written by Robotheca from the project's README (opens in a new tab) at commit a4231c8.

Getting started

Difficulty
Intermediate

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
25 Sept 2026 on devel
Latest release
None published on GitHub

Checked on GitHub on 16 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.