Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Mérőkamera vezérlővel meghatározhatja, hogy egy ismert méretű objektum elfér-e egy adott térben. Ebben a cikkben egy vászonalapú alkalmazást hozunk létre erre a célra.
Tipp.
A vegyes valóság (MR) vezérlői a legjobban jól megvilágított környezetben, lapos szerkezetű felületekkel működnek. A nyomon követés jobb a LIDAR-kompatibilis eszközökön.
Minimális méreteket tartalmazó beviteli mezők hozzáadása vászonalapú alkalmazáshoz
Először üres vászonalapú alkalmazást hozunk létre. Ezután hozzáadunk egy lehetőséget, hogy a felhasználó megadja a minimális méreteket, amelyekkhez képest tesztelni szeretné azt (vagyis a legkisebb helyet, amelybe a beilleszteni kívánt objektum belefér).
Válassza a Beszúrás lapot. Szúrjon be és helyezzen el három szövegcímke-vezérlőt a képernyőn.
Módosítsa a feliratok Szöveg tulajdonságát Minimális szélességre, Minimális mélységre és Minimális magasságra.
Válassza a Beszúrás lapot. Szúrjon be három szövegbeviteli vezérlőt, és helyezze őket a három címke jobb oldalára.
Nevezze át a szövegbeviteli vezérlőket minWidth , minDepth ésminHeight névre.
Válassza ki mindhárom szövegbeviteli vezérlőt. Módosítsa a csoport Formátum tulajdonságát Szám értékre , és állítsa az Alapértelmezett tulajdonságot 1.0-ra .
A mérőkamera vezérlő hozzáadása és kötése
Ezután hozzáadjuk a Mérőkamera vezérlőt, amely lehetővé teszi a felhasználó számára a háromdimenziós tér mérését. A mért értékeket későbbi felhasználás érdekében adattáblához kötjük.
Válassza a Beszúrás fület, és bontsa ki a Média csomópontot.
Válassza a Mérőkamera lehetőséget a vezérlő alkalmazásképernyőre helyezéséhez. Húzza ezt a vezérlőt az alkalmazás képernyőjének aljához közel.
A vezérlő tulajdonságait a következők szerint módosítsa:
Tulajdonság neve Érték Hol Mértékegység Láb vagy méter Válassza ki a Tulajdonságok lapon Mérés típusa Volume Válassza ki a Tulajdonságok lapon Mező megrajzolása A következőn: Válassza ki a Tulajdonságok lapon Cikkek Table({label:"Tesztmennyiség")} Lépjen be a Speciális lapra ItemsLabels "címke" Lépjen be a Speciális lapra OnMixedRealitySelect Set(testVolume, LookUp(MeasureInMR1.Measurements, label = "Tesztmennyiség")); Lépjen be a Speciális lapra
A Measurement-kameravezérlő Items,ItemsLabels és OnMixedRealitySelect tulajdonságainak az alábbi példákhoz hasonlóan kell kinézniük, ha végzett:
Az Elemek képlete rögzíti a mért terület méreteit a "Teszttérfogat" nevű adattáblában. Az OnMixedRealitySelect képlete egy "testVolume" nevű változót állít be a "Test Volume" táblában rögzített értékekre.
Eredmények megjelenítése
Végül szöveges címkéket adunk hozzá, hogy megjelenítsük a végzett méréseket és a teszt eredményét (vagyis hogy az objektum befér-e a mért térbe).
Válassza a Beszúrás lapot. Szúrjon be és helyezzen el négy Szövegcímke vezérlőt a képernyőn.
Módosítsa a címkevezérlők Szöveg tulajdonságát az alábbiak szerint. (Tipp: Másolja ki az egyes képleteket, és illessze be a szerkesztőlécre vagy a Speciális tulajdonságok lap, amelyik tetszik.)
Első címke:
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"))
Ez a képlet a címke szövegét aszerint állítja be, hogy a teszt sikeres vagy sikertelen volt-e, a kívánt objektum befogadásához szükséges minimális méretek alapján. Ha a teszt nem futott le, vagy azért, mert nem történt mérés, vagy mert hiba történt, a címke szövege ezt megjeleníti.
Második címke:
Concatenate("Bounding Width: ", Text(testVolume.BoundingWidth))
Ez a képlet a címke szövegét "Határolószélesség:" értékre állítja, amelyet a mért tér szélességi mérete követ.
Harmadik címke:
Concatenate("Bounding Depth: ", Text(testVolume.BoundingDepth))
Ez a képlet a címke szövegét "Határolómélység:" értékre állítja, amelyet a mért tér mélységi mérete követ.
Negyedik címke:
Concatenate("Bounding Height: ", Text(testVolume.Height))
Ez a képlet a címke szövegét "Határolómagasság:" értékre állítja, amelyet a mért tér magassági mérete követ.
Az alkalmazásképernyő most a következőhöz hasonlóan néz ki:
Az alkalmazás tesztelése
Az előzetes verzió gomb kiválasztásával az alkalmazás előzetes verzióban futtatatható. Válassza a Mérőkamera lehetőséget a címkék adatokkal való feltöltéséhez. Annak ellenőrzéséhez, hogy a címkekötések működnek-e, írjon be új értékeket a szövegbeviteli mezőkbe.
A határolószélesség és a határoló mélység értékei felcserélhetők a teszt végrehajtása során.
Mentse és tegye közzé az alkalmazást. Nyissa meg egy vegyes valóságot támogató eszközön, hogy tesztelje, hogy a megadott méretekkel rendelkező objektum belefér-e bármelyik rögzített mérés határain belül.
Adatforrás szűrése
Az általunk létrehozott alkalmazás egyetlen dimenziókészletet tesztel, amelyet a felhasználó ad meg az alkalmazás futtatásakor. Azonban kiterjesztheti bármely adatforrásra való tesztelésre, ha a képletet Filter predikátumként alkalmazza.
Tegyük fel például, hogy az alkalmazás tartalmaz egy hivatkozást egy Dataverse Termékek nevű táblára, amely három oszlopot tartalmaz: Szélesség, Mélység és Magasság (az egyes termékek méreteinek megfelelően). Ha a kollekciót úgy akarjuk szűrni, hogy csak azokat a méréseket jelenítse meg, amelyek beleférnek egy mért térfogatba, a következő képletet alkalmazhatjuk.
If(IsBlankOrError(testVolume), Products,
Filter(Products, testVolume.Height >= Height &&
((testVolume.BoundingWidth >= Width && testVolume.BoundingDepth >= Depth) ||
(testVolume.BoundingWidth >= Depth && testVolume.BoundingDepth >= Width))))