计算TangoPoseData的距离

时间:2015-09-08 04:40:31

标签: java google-project-tango

我的Project Tango设备记录了两次Java TangoPoseData观察。如何计算这两个观测值之间的距离(以米为单位)?

1 个答案:

答案 0 :(得分:0)

来自Coordinate Pair Frames Documentation

  

对于所有坐标系对,测量单位为米。

也...

  

Project Tango使用右手的本地级框架作为START_OF_SERVICE和AREA_DESCRIPTION坐标系。该惯例将Z轴设置为与重力对齐,Z +向上指向,并且X-Y平面垂直于与地平面局部齐平的重力。

因此,对于使用 START_OF_SERVICE和AREA_DESCRIPTION坐标系的坐标,坐标可以与JTS Topology Suite等标准库一起使用。

public static Coordinate coordinate(TangoPoseData pose){

    return new Coordinate(pose.translation[TangoPoseData.INDEX_TRANSLATION_X],
                pose.translation[TangoPoseData.INDEX_TRANSLATION_Y],
                pose.translation[TangoPoseData.INDEX_TRANSLATION_Z]);
}

坐标提供distance method

double distanceInMeters = coordinate(pose1).distance(coordinate(pose2));