帧多模式比
Aframe Multiple Pattern Ratio
您好,我想使用不同比例的多种图案。谁能帮我解决这个问题。我可以使用具有不同比率的多个标记,但我无法使用具有不同比率的多个标记。
赞
模式一 (Hiro) - HIRO(默认比率为 0.50),
图案二(自定义 QR 码)比例为 0.75 - 图案,
Tag <a-scene arjs="patternRatio: 0.75">
<a-marker type="pattern" preset="hiro" vidhandler="target: #vid1">
--------
<a-marker
type="pattern"
url="https://cdn.glitch.com/e85b316e-eed9-4e96-814e-d12630bc00df%2Fpattern-qr-code.patt?v=1577440081157"
vidhandler="target: #vid2"
>
我认为实际上是不可能的,因为没有实现。您可以将 patternRatio
添加到 <a-scene>
中,但这会将相同的 patternRatio 添加到场景中的所有标记。您可以通过这种方式将 PatternRatio 添加到 component-anchor.js 内的 a-marker 组件:
// FIXME
AFRAME.registerPrimitive('a-marker', AFRAME.utils.extendDeep({}, AFRAME.primitives.getMeshMixin(), {
defaultComponents: {
'arjs-anchor': {},
'arjs-hit-testing': {},
},
mappings: {
'type': 'arjs-anchor.type',
'size': 'arjs-anchor.size',
'url': 'arjs-anchor.patternUrl',
'patternRatio': 'arjs-anchor.patternRatio', // add this line !
'value': 'arjs-anchor.barcodeValue',
'preset': 'arjs-anchor.preset',
'min-confidence': 'arjs-anchor.minConfidence',
'marker-helpers': 'arjs-anchor.markerhelpers',
'smooth': 'arjs-anchor.smooth',
'smooth-count': 'arjs-anchor.smoothCount',
'smooth-tolerance': 'arjs-anchor.smoothTolerance',
'smooth-threshold': 'arjs-anchor.smoothThreshold',
'hit-testing-render-debug': 'arjs-hit-testing.renderDebug',
'hit-testing-enabled': 'arjs-hit-testing.enabled',
}
}))
您应该在使用前重建库,运行: npm install
然后 npm run build
在主 AR.js 文件夹中。我没有测试代码,所以我不能确定这段代码是否有效。顺便说一句,添加这样的功能会很好...
您好,我想使用不同比例的多种图案。谁能帮我解决这个问题。我可以使用具有不同比率的多个标记,但我无法使用具有不同比率的多个标记。
赞 模式一 (Hiro) - HIRO(默认比率为 0.50),
图案二(自定义 QR 码)比例为 0.75 - 图案,
Tag <a-scene arjs="patternRatio: 0.75">
<a-marker type="pattern" preset="hiro" vidhandler="target: #vid1">
--------
<a-marker
type="pattern"
url="https://cdn.glitch.com/e85b316e-eed9-4e96-814e-d12630bc00df%2Fpattern-qr-code.patt?v=1577440081157"
vidhandler="target: #vid2"
>
我认为实际上是不可能的,因为没有实现。您可以将 patternRatio
添加到 <a-scene>
中,但这会将相同的 patternRatio 添加到场景中的所有标记。您可以通过这种方式将 PatternRatio 添加到 component-anchor.js 内的 a-marker 组件:
// FIXME
AFRAME.registerPrimitive('a-marker', AFRAME.utils.extendDeep({}, AFRAME.primitives.getMeshMixin(), {
defaultComponents: {
'arjs-anchor': {},
'arjs-hit-testing': {},
},
mappings: {
'type': 'arjs-anchor.type',
'size': 'arjs-anchor.size',
'url': 'arjs-anchor.patternUrl',
'patternRatio': 'arjs-anchor.patternRatio', // add this line !
'value': 'arjs-anchor.barcodeValue',
'preset': 'arjs-anchor.preset',
'min-confidence': 'arjs-anchor.minConfidence',
'marker-helpers': 'arjs-anchor.markerhelpers',
'smooth': 'arjs-anchor.smooth',
'smooth-count': 'arjs-anchor.smoothCount',
'smooth-tolerance': 'arjs-anchor.smoothTolerance',
'smooth-threshold': 'arjs-anchor.smoothThreshold',
'hit-testing-render-debug': 'arjs-hit-testing.renderDebug',
'hit-testing-enabled': 'arjs-hit-testing.enabled',
}
}))
您应该在使用前重建库,运行: npm install
然后 npm run build
在主 AR.js 文件夹中。我没有测试代码,所以我不能确定这段代码是否有效。顺便说一句,添加这样的功能会很好...