0

我想获取活动物体的宽度和高度,例如水瓶、笔记本、键盘等。所以我的问题是如何使用 ARCore 和 Sceneform SDK android 获取活动物体的宽度和高度。

示例:像谷歌测量应用程序。

4

2 回答 2

0

这是获取两个锚点之间距离的方法:

float getMetersBetweenAnchors(Anchor anchor1, Anchor anchor2) {
    float[] distance_vector = anchor1.getPose().inverse()
            .compose(anchor2.getPose()).getTranslation();
    float totalDistanceSquared = 0;
    for (int i = 0; i < 3; ++i)
        totalDistanceSquared += distance_vector[i] * distance_vector[i];
    return (float) Math.sqrt(totalDistanceSquared);
}
于 2018-10-10T07:14:41.363 回答
0

ARCore 的坐标系使用米,因此您必须创建两个锚点并计算它们之间的距离。只需使用锚点的世界位置,减去它们和结果向量的长度。

于 2018-08-25T07:21:41.163 回答