Как я могу расположить объект в виде рамки в левом нижнем углу маркера и сделать его ширину равной ширине маркера? - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь создать базовую c сцену AR. JS с NFT (так что это не просто базовое c отслеживание на основе маркеров; оно отслеживает собственное изображение), используя A-frame для размещения вниз и расположите мои объекты, но я заметил, что, например: если я помещу в сцену рамку размером 1 * 1 * 1, она появится в разных местах на разных устройствах. А также, если я не увеличу масштаб до 200, он будет выглядеть как очень-очень крошечная коробка.

Например: если я пытаюсь просмотреть свою сцену на своем телефоне, объект появляется в точном центре маркера, но если я проверю его на другом телефоне, он почти полностью появится за пределами маркера. Кроме того, если я проверю его с помощью веб-камеры, он снова появится в другом месте и даже в другом размере.

Интересно, есть ли возможность сделать маркерные изображения внизу слева (или другое) поверните точку 0 0 0, чтобы я мог более точно позиционировать свои объекты, а также установить ширину объекта равной ширине изображений маркера, чтобы мне не приходилось увеличивать объект таким образом.

1 Ответ

0 голосов
/ 05 мая 2020

В данный момент есть возможность отобразить модель в центре маркера NFT. Это потому, что AR. js зависит от jsartoolkit5 , и этот последний еще не имеет этой функции. Но если вы знаете ширину, высоту и dpi, вы можете отобразить объект в центре создателя с помощью следующей формулы (псевдокод):

obj.position.y = (marker.height / marker.dpi * 2.54 * 10)/2.0;
obj.position.x = (marker.width / marker.dpi * 2.54 * 10)/2.0;

При создании маркера вы можете получить ширину, высоту и dpi. или с помощью приложения отображения dispFeatureSet, распространяемого Artoolkit5 SDK, вы можете найти двоичные файлы здесь https://github.com/artoolkitx/artoolkit5/releases/tag/5.4.0 или с веб-сайта artookitx https://www.artoolkitx.org/docs/downloads/

...