我研究了multimarker
的{{1}}文档,我在实现某种QR码方面遇到了一些麻烦。
我想要,例如:
一组6个标记在图片上的位置不同,当且仅当所有这些标记都存在时,某些视频会显示在它们的原点(我想使用某种类型的CORNER标记,如QR-Code系统)。
怎么做?根据我所看到的,在多标记上,例如,如果在6中存在1,则显示该对象。
答案 0 :(得分:0)
通过查看ARToolKit代码,您可以看到MultiMarker在内部被处理为一个由多个Pattern组成的单个Marker:
https://github.com/prose/gatekeeper
https://github.com/artoolkit/artoolkit5/blob/master/lib/SRC/ARWrapper/ARMarker.cpp#L344
这就是为什么只要在多标记配置中配置的标记之一可见,ARToolKit将始终返回true。
考虑到这一点,“多标记”不是您想达到目标的方法。
但是,您可以单独配置每个标记并将其添加为“单标记”。然后,您可以查询是否所有这些“单标记”都可见。
如果是这样,您可以计算所有这些“单标记”的来源并在那里渲染您的对象。
如果你看一下,你可以了解如何配置几个'单标记':
https://github.com/artoolkit/artoolkit5/blob/master/lib/SRC/ARWrapper/ARMarkerMulti.cpp#L75
此处也举例说明如何将标记设置到相同的坐标系中(并计算它们之间的距离),您可以将其作为计算几个标记之间原点的起点:
http://augmentmy.world/moving-cars-augmented-reality
我知道这些不是iOS示例,但到目前为止我只完成了Android。此外,ARWrapper接口在Android和iOS上应该是相同的,这意味着两者之间应该没有太大区别。
我希望有帮助