【问题标题】:How to get detect multiple markers with AR.js如何使用 AR.js 检测多个标记
【发布时间】:2018-08-10 11:29:45
【问题描述】:

我正在尝试检测不同的标记。一个是名为and1painting.patt 的图案,另一个是预设的'hiro'

当我显示 hiro 模式时,它被 and1painting.patt 标记检测到。例如。在下面的代码中,当我显示 hiro 标记时,它总是显示蓝色框而不是红色。思考为什么?我对已经在 repo 中的 sample1.patt 进行了尝试,但它也不起作用。

<!doctype HTML>
<html>
<script src="https://aframe.io/releases/0.6.1/aframe.min.js"></script>
<script src="https://cdn.rawgit.com/jeromeetienne/AR.js/1.5.0/aframe/build/aframe-ar.js"> </script>
  <body style='margin : 0px; overflow: hidden;'>
    <a-scene embedded arjs='sourceType: webcam;'>
        <a-marker type='pattern' patternUrl='Data/and1painting.patt'>
            <a-box position='0 0.5 0' material='opacity: 0.5; side:double; color:blue;'>
            </a-box>
        </a-marker>
        <!-- handle marker with hiro preset -->
        <a-marker preset='hiro'>
            <a-box position='0 0.5 0' material='opacity: 0.5; side:double; color:red;'>
            </a-box>
        </a-marker>
        <a-entity camera></a-entity>
    </a-scene>
  </body>
</html>

【问题讨论】:

  • 检查自定义标记是否在您的代码中没有 hiro 标记的情况下工作,如果没有,请尝试像我在这里描述的另一个构建:stackoverflow.com/questions/45820170/…
  • 我尝试使用 AR.js 附带的其他标记之一——“sample1.patt”,但它不起作用。只有当我使用

标签: augmented-reality aframe ar.js


【解决方案1】:

不幸的是,AR.JS 目前仍然严重损坏: https://github.com/jeromeetienne/AR.js/pull/236

如果您关注问题中的 cmets,您可以破解自己的方法来获得有效的解决方案。

【讨论】:

  • 好像就是这样。我从“合并”评论中假设它已修复。如果原始开发人员无法跟上它,也许需要分叉。超级好用的库
【解决方案2】:

实际上,ar.js 并没有那么糟糕。上面的代码中存在语法错误,这就是它不起作用的原因。调用模式文件的正确语法是简单的 'url = ' 而不是 'patternUrl = ''。

试试这个:

a-marker type='pattern' url='Data/and1painting.patt'

我知道它有效,因为我花了很长时间才弄明白。

【讨论】:

    猜你喜欢
    • 2017-12-01
    • 2020-09-30
    • 1970-01-01
    • 2019-06-27
    • 2019-01-21
    • 2018-10-06
    • 2020-01-19
    • 2021-06-15
    • 2021-08-29
    相关资源
    最近更新 更多