android - 如何在 ARCore View 中定位具有纬度/经度的对象?

标签 android arcore

鉴于我有用户纬度和经度,我也有一个对象的位置,我如何才能将这些坐标转换为可以在 ARCore 中正确相对位置看到的东西?

这个我试过了 https://github.com/appoly/ARCore-Location 但是,不幸的是,它并不完全有效。

基本上,我如何将 Lat/Lng 转换为下面的位置和旋转?

Session session = arFragment.getArSceneView().getSession();
float[] pos = { 0,0,-1 };     
float[] rotation = {0,0,0,1}
Anchor anchor =  session.createAnchor(new Pose(pos, rotation));        
anchorNode = new AnchorNode(anchor);
anchorNode.setRenderable(flag);        
anchorNode.setParent(arFragment.getArSceneView().getScene());

最佳答案

如果您想将 AR 对象放在您需要的坐标处: 1.检查每一帧坐标是否在你的视野中

  1. 计算用户坐标到ar坐标的距离

  2. 翻译成 ar 世界 - 例如,您可以在 google 中找到如何使用 arcore 计算距离的示例。您可以使用它来计算从用户到 ar 对象位置的距离

  3. 根据以上信息将ar对象放置在特定对象上

请记住,计算距离也可用于缩放以使其尽可能真实。例如,当物体距离较远时它应该较小,如果用户较近则它应该较大

关于android - 如何在 ARCore View 中定位具有纬度/经度的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55194959/

相关文章:

javascript - ngCookies保存在chrome中但不保存在android中

augmented-reality - 是否可以将增强现实和眼镜与 ARCore 集成?

android - 用于 ARCore 的 NDK API?

android - 使用 OCR 移动视觉将图像锚定到检测到的文本

java - 如何使用ARCore创建运动的线图?

android - StackOverFlow 错误 : Stack size 1036KB in AsyncTask

android - 如何在 Android 中的 SQlite 中使用准备好的语句?

java - Augmented Faces API (ARCore) - 如何使用 Android Studio 中的按钮将 mask 替换为另一个 mask

java - 从 float 操作按钮获取颜色并用它来更改编辑文本上的背景颜色

android - 表情符号在缩放 TextView 时变得不可见