AR.js多个标记失败

问题描述 投票:0回答:1

我使用2种自定义模式,并试图让AR.js识别它们。这两个标记的是,我已经使用AR.js Marker Training制成模式6x6的条形码,并把下载的图纹到该文件夹​​(如500.patt和600.patt)。其结果是确定的这两个标记,当我表现出来的单一标志物显示出的画面。

另外,我想,当一个标记被识别得到的反应(这就是为什么在控制台打印在那里),但尽管这两个标志形状绘制,也有在控制台没有打印。

我的代码:

`<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ar.js</title>

</head>
<!-- include A-Frame obviously -->
<script src="https://aframe.io/releases/0.6.0/aframe.min.js"></script>
<!-- include ar.js for A-Frame -->
<script src="https://jeromeetienne.github.io/AR.js/aframe/build/aframe-ar.js"></script>
<body style='margin : 0px; overflow: hidden;'>
  <a-scene embedded arjs="patternRatio: 0.90">
    <!-- create your content here. just a box for now -->
    <!-- define a camera which will move according to the marker position -->
    <a-marker-camera type='pattern' url='500.patt'>
        <a-box position='0 0.5 0' material='opacity: 0.5; color: red;'></a-box>
        console.log(500);
    </a-marker-camera>
    <a-marker-camera type='pattern' url='600.patt'>
        <a-sphere position='0 0.5 0' material='opacity: 0.5; color: blue;'></a-sphere>
        console.log(600);
    </a-marker-camera>
  </a-scene>
</body>
</html>`

结果:bugs

如何让我的模式识别只显示一个项目,并打印正确的图案识别?

谢谢

javascript ar.js
1个回答
1
投票

如何当一个标记被认可的东西登录到控制台:

AFRAME.registerComponent('registerevents', {
    init: function () {
        var marker = this.el;
        marker.addEventListener('markerFound', function() {
            var markerId = marker.id;
            console.log('! markerFound', markerId);
            // do additional things you want to do
        });
        marker.addEventListener('markerLost', function() {
            var markerId = marker.id;
            console.log('! markerLost', markerId);
            // do additional things you want to do
        });
    }
});

然后registerevents组件添加到您的标记:

<a-marker id="marker" preset='hiro' registerevents>

这应该这样做。

© www.soinside.com 2019 - 2024. All rights reserved.