blob: 232c2b68e8888241c1290b94491ef9e72f636ca6 [file] [log] [blame]
James Kuszmaul9c3db182024-02-09 22:02:18 -08001#include "frc971/vision/target_map_utils.h"
James Kuszmaul18008f82023-02-23 20:52:50 -08002
James Kuszmaul9c3db182024-02-09 22:02:18 -08003namespace frc971::vision {
James Kuszmaul18008f82023-02-23 20:52:50 -08004Eigen::Matrix<double, 4, 4> PoseToTransform(
5 const frc971::vision::TargetPoseFbs *pose) {
6 const frc971::vision::Position *position = pose->position();
7 const frc971::vision::Quaternion *quaternion = pose->orientation();
8 return (Eigen::Translation3d(
9 Eigen::Vector3d(position->x(), position->y(), position->z())) *
10 Eigen::Quaterniond(quaternion->w(), quaternion->x(), quaternion->y(),
11 quaternion->z()))
12 .matrix();
13}
James Kuszmaul9c3db182024-02-09 22:02:18 -080014} // namespace frc971::vision