Pārbaudiet, vai objekts ietilps telpā, izmantojot jauktu realitāti
Varat izmantot Mērīšanas kameras vadīklu, lai noteiktu, vai noteikta lieluma objekts ietilps noteiktā vietā. Šajā rakstā mēs šim nolūkam izveidosim pamatnes programmu.
Padoms
Jauktās realitātes (MR) komponenti vislabāk darbojas labi izgaismotā vidē ar plakanas tekstūras virsmām. Izsekošana ir labāka ierīcēs ar LIDAR iespējotām ierīcēm.
Vispirms, izveidosim tukšu pamatnes programmu. Pēc tam lietotājam tiks pievienots veids, kā ievadīt minimālo profilu, attiecībā uz kuru testēt (tas ir, vismazākā vieta, kurā atradīsies objekts, kuru vēlamies ievietot).
Atlasiet cilni Ievietot . Ekrānā ievietojiet un novietojiet trīs Teksta etiķešu vadīklas.
Attiecīgi mainiet Teksta rekvizītu uz Minimālais platums, Minimālais dziļums un Minimālais augstums.
Atlasiet cilni Ievietot . Ievietojiet trīs Teksta ievades vadīklas un novietojiet tās pa labi no trim etiķetēm.
Pārdēvējiet teksta ievades vadīklas attiecīgi uz minWidth, minDepth un minHeight.
Atlasiet visas trīs teksta ievades vadīklas. Mainiet grupas rekvizītu Formāts uz Skaitlis un iestatiet noklusējuma Rekvizītu uz 1.0.
Pēc tam mēs pievienosim Mērīšanas kameras vadīklu, lai ļautu lietotājam mērīt trīsdimensionālu platību. Mēs piesaistīsim mērvienības ar datu tabulu vēlāka izmantošanai.
Atlasiet cilni Ievietot un izvērsiet Multivide.
Atlasiet Mērījumu kamera, lai ievietotu to programmas ekrānā. Aizvelciet šo vadīklu ekrāna apakšdaļā.
Mainiet attēla vadīklas rekvizītus, kā norādīts tālāk:
Rekvizīta nosaukums vērtība Kur Mērvienības Pēdas vai metri Atlasiet cilnē Rekvizīti Mērījuma tips Skaļums Atlasiet cilnē Rekvizīti Lodziņa zīmēšana Šajā datumā Atlasiet cilnē Rekvizīti Vienumi Tabula({etiķete:"Testa apjoms"}) Ievadiet cilnē Papildu ItemsLabels "etiķete" Ievadiet cilnē Papildu OnMixedRealitySelect Set(testVolume, LookUp(MeasureInMR1.Measurements, Etiķete = "Testa apjoms")); Ievadiet cilnē Papildu
Elementu, ItemsLabels un OnMixedRealitySelect Mērīšanas kameras rekvizītiem jābūt līdzīgiem šādiem piemēriem, kad esat pabeidzis:
Izmantojot Elementus, tajos esošā formula tver mērītās telpas dimensijas datu tabulā ar nosaukumu "Testa apjoms." Lauks OnSelectedRealitySelect iestata mainīgajam ar nosaukumu "testVolume" vērtības, kas ir tvertas tabulā "Testa apjoms".
Beigās tiks pievienotas teksta etiķetes, lai parādītu paņemtos mērvienību un testa rezultātus (tas ir, vai objekts ietilps mērītā vietā).
Atlasiet cilni Ievietot . Ekrānā ievietojiet un novietojiet četras Teksta etiķešu vadīklas.
Mainiet etiķetes vadīklas Teksts rekvizītu. (Mājiens: nokopējiet formulu un ielīmējiet to formulas joslā vai rekvizītu cilnē Papildu.)
Pirmā etiķete:
If(IsBlankOrError(testVolume), "No Measurement captured", If(testVolume.Height >= Value(minHeight.Text) && ((testVolume.BoundingWidth >= Value(minWidth.Text) && testVolume.BoundingDepth >= Value(minDepth.Text)) || (testVolume.BoundingWidth >= Value(minDepth.Text) && testVolume.BoundingDepth >= Value(minWidth.Text))), "Fit Test Succeeded", "Fit Test Failed"))
Izmantojot šo formulas vērtību, etiķetes teksts tiek iestatīts atbilstoši tam, vai pārbaude izdevās vai neizdevās, pamatojoties uz minimālajām aizturēšanas prasībām, kas nepieciešamas, lai noturētu objektu, kuru vēlamies ietilpt. Ja pārbaude netika palaista tāpēc, ka netika veikti mērījumi vai radās kļūda, etiķetes teksts to norāda.
Otrā etiķete:
Concatenate("Bounding Width: ", Text(testVolume.BoundingWidth))
Izmantojot šo formulas vērtību, etiķetes tekstu iestata uz "Ierobežojošais platums:", bet pēc tam — mērītās vietas platuma joslu.
Trešā etiķete:
Concatenate("Bounding Depth: ", Text(testVolume.BoundingDepth))
Izmantojot šo formulas vērtību, etiķetes tekstu iestata uz "Ierobežojošais dziļums:", bet pēc tam — mērītās vietas dziļuma joslu.
Ceturtā etiķete:
Concatenate("Bounding Height: ", Text(testVolume.Height))
Izmantojot šo formulas vērtību, etiķetes tekstu iestata uz "Ierobežojošais augstums:", bet pēc tam — mērītās vietas augstuma joslu.
Programmai tagad vajadzētu izskatīties šādi:
Atlasiet priekšskatījuma pogu, lai programmu palaistu priekšskatījuma režīmā. Atlasiet Mērīšanas kamera, lai aizpildītu etiķetes ar datiem. Lai pārbaudītu, vai etiķešu saistīšana darbojas, ievadiet jaunas vērtības teksta ievades laukos.
Veicot testu, Ierobežojošā platuma un Ierobežojošā platuma vērtības var tikt mainītas.
Saglabājiet un publicējiet savu programmu. Atveriet to ierīcē ar iespējotu jaukto realitāti, lai pārbaudītu, vai objekts ar norādītajām dimensijām iederēsies jebkuru fiksēto mērvienību robežās.
Programma, ko izveidojām, testē atsevišķu dimensiju kopu, ko lietotājs norāda programmas izpildes laikā. Taču to var paplašināt, lai testētu pret datu avotu, lietojot šo formulas vērtību kā Filtru.
Piemēram, pieņemsim, ka mūsu programmā ir ietverta atsauce uz Dataverse tabulu ar nosaukumu Produkti, kurā ir ietvertas trīs kolonnas: Platums, Dziļums un Augstums (atbilstoši katra produkta dimensijām). Lai filtrētu kolekciju, kas parādītu tikai mērvienības, kas der mērītam apjomam, var lietot šādu formulu.
If(IsBlankOrError(testVolume), Products,
Filter(Products, testVolume.Height >= Height &&
((testVolume.BoundingWidth >= Width && testVolume.BoundingDepth >= Depth) ||
(testVolume.BoundingWidth >= Depth && testVolume.BoundingDepth >= Width))))
Piezīme
Kādas ir jūsu dokumentācijas valodas preferences? Aizpildiet īsu aptauju. (ņemiet vērā, ka aptauja ir angļu valodā)
Aptaujai būs nepieciešamas aptuveni septiņas minūtes. Nekādi personas dati netiks vākti (paziņojums par konfidencialitāti).