【问题标题】:How to place a single infinite plane in ARCore?如何在 ARCore 中放置一个无限平面?
【发布时间】:2019-12-15 22:22:39
【问题描述】:

如何使用 arcore. 我想做这个github讨论URL。 我找到了统一 A​​RCore sdk 的解决方案:link

那么如何使用 java 来实现呢?

【问题讨论】:

    标签: android augmented-reality arcore sceneform


    【解决方案1】:

    我认为您混淆了两种不同的元素。 在 ARCore 中,您有一个平面,它是映射表面,您可以在其上放置对象。您提供的示例是指 GameObject。您可以放置​​与使用相机映射的宽/长区域一样大的“平面”。因为首先,您需要映射表面。当然,您可以根据需要放置尽可能大的 GameObject,但这是

    【讨论】:

    • 感谢回复,我可以更改检测到的平面大小吗?
    • @HardikMahant 没有。检测由arcore框架进行。当然,您可以在屏幕上绘制您想要的所有内容(例如,您可以根据需要放置尽可能大的 GameObject),但这与检测到的平面无关。检测到的平面是 arcore 映射和理解的世界的一部分,您可以在这些表面上使用锚点放置对象
    • @Fixus 能否请您给我支持您的回答的参考,即 ARCore 框架限制平面检测或用户无法扩大检测到的平面的大小
    【解决方案2】:

    如果您想将检测到的平面视为无限,您可以使用Plane.isInExtent 来检查 Pose 是否在该平面中。

    如果您想将此功能与一些 Sceneform UX 功能结合使用,您可以创建自己的 TranslationController 版本,使用 isInExtent 而不是 isInPolygon(默认方式)。

    【讨论】:

    • 感谢 steven 的回复,但我认为这只有在我在飞机上拖动 3D 对象时才有效(如果我错了,请纠正我)。
    • 对于翻译控制器,这是真的。但是使用 Plane.isInExtent() 当然适用于每个操作。
    猜你喜欢
    • 2019-07-27
    • 2019-01-18
    • 2018-02-09
    • 2020-05-14
    • 1970-01-01
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多