ARCore Measurment for Android

Садржи огласе
Оцена садржаја
Сви
1 хиљ.+
Преузимања
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана
Слика снимка екрана

О овој апликацији

1. Мерење растојања
Растојање је најосновније мерење у AR сцени. Израчунава се као еуклидско растојање између две 3D координате (сидра) постављене у AR сцени.

2. Мерење површине
Да би измерио површину, корисник мора поставити најмање три сидра да би формирао полигон. Већина мерења AR површине претпоставља да је површина равна раван (2D површина у 3D простору).
Алгоритам:
Најчешћи приступ је формула пертли (геодетска формула). Пошто су тачке у 3D, прво их треба пројектовати на 2D раван (користећи нормалу равни) или осигурати да све тачке леже на истој детектованој основној AR равни.

3. Мерење запремине
Запремина је знатно сложенија јер захтева дубину. Постоје два основна начина за приступ овоме:
- Метод кутије (екструзија): Измерите површину пода (као што је горе описано), а затим измерите вертикално растојање (висину).
Формула: Запремина = Површина*Висина
- Метода граничног оквира: Користите две дијагоналне угаоне тачке да бисте дефинисали 3Д коцку.
- API дубине (напредно): Користите AR Core да бисте креирали облак тачака објекта и израчунали запремину путем конвексног омотача или вокселизације. Ово је много прецизније за неправилне објекте, али захтева уређај са сензором времена лета или висококвалитетном подршком за дубину.
Пошто се упуштате у имплементацију, прави изазов у ​​AR Core-у није само математика - то је корисничко искуство и прецизност. Мерење 3Д простора на 2Д екрану може бити компликовано за кориснике.
Ево прегледа како структурирати вашу Java логику за ове функције:
1. Удаљеност (Основа)
Да бисте добили чисто мерење, требало би да користите Session hit Test() да бисте поставили сидра. Коришћење сидра осигурава да чак и ако камера помера, тачке остају „закључане“ за координате физичког света.
2. Површина (Планарна геометрија)
За површину, корисници обично желе да мере под или зид. Требало би да ограничите своје тачке на једну раван. Ако су тачке на истој хоризонталној равни (y вредности су скоро идентичне), можете игнорисати y-осу и третирати је као 2D полигонални прорачун.

Савет за имплементацију: Чувајте своје тачке у листи . Како корисник додаје нову тачку, динамички ажурирајте преглед „тренутне површине“. Формула пертли је овде стандардна јер функционише за било који полигон који се не пресеца сам по себи (неправилни облици).

3. Запремина (метод „кутије“)
Израчунавање запремине произвољног 3D објекта је веома тешко без LiDAR сензора. За стандардну Java AR Core апликацију, најпоузданији начин је метод екструдираног полигона:
1. Дефинишите основу: Корисник кликће на тачке да би дефинисао површину пода (A).

2. Дефинишите висину: Корисник кликће на тачку на поду и повлачи линију нагоре или кликће на тачку на плафону (h).

3. Израчунајте: V = A * h.

Професионални савети за тачност
API за дубину: Ако уређај то подржава, омогућите API за сирову дубину. Омогућава вам да извршите тестове погодака на „неравним“ објектима (као што су кауч или лопта) које стандардно проналажење равни може пропустити.
Изравнавање: AR координате могу да подрхтавају. Користите једноставан филтер покретног просека на пози камере или резултатима теста погодака да бисте спречили брзо скакање бројева мерења.
Предложена архитектура
Менаџер мерења: Синглтон или помоћна класа за чување листе активних сидара.
Рендерер: Рукује цртањем линија и текстуалних ознака у AR преклапању.
Конвертор јединица: Услужни програм за пребацивање између метричких (метри/цм) и империјалних (стопе/инчи).

Апликација, поред наведених функција, има додатне функције као што је локализација: енглески, шпански, француски, бугарски и немачки. Израчуната удаљеност, површина и запремина су у метрима, који се могу конвертовати у центиметре, инче, стопе.
Апликација користи AR Core за мерење удаљености, површине и запремине.
Ажурирано:
27. 8. 2026.

Безбедност података

Предуслов безбедности је да разумете како програмери прикупљају и деле ваше податке. Праксе за приватност и безбедност података могу да се разликују у зависности од коришћења, региона и узраста. Програмер је пружио те информације и може да их ажурира током времена.
  • Подаци се не деле са трећим странама
    Сазнајте више о томе како програмери објављују дељење
  • Нема прикупљених података
    Сазнајте више о томе како програмери објављују прикупљање