Given that I have the rigid body transformation (4x4 Matrix) of an object that is expressed in a right handed coordinate system, how can I convert it into its corresponding rigid body transformation in Unreal Engine Coordinate System?
You can construct an FTransform from an FMatrix which is a 4x4: FTransform::FTransform | Unreal Engine Documentation
What you need to do with the matrix first depends on the exact coordinate system you’re coming from. Is it Z-up?
Thank you for replying to my question.
Yes, I wanted to convert a rigid body pose from a Right Handed Coordinate system with Z-up to the Unreal Coordinate system. The aim was to convert the Pose of a rigid body from its ROS representation (geometry_msgs/Pose) into Unreal Coordinate system.
I figured a solution to this problem
If p = [px, py, pz]
and q = [qx, qy, qz, qw]
are the position and orientation components of a rigid body pose in the ROS representation, then we can determine the equivalent position and orientation components of the rigid body pose in Unreal Coordinate System as follows.
p' = [px, -py, pz] * 100
q' = [-qx, qy, -qz, qw
]