Preizkusite, ali se bo predmet prilegal prostoru z uporabo mešane resničnosti

Lahko uporabite Merilna kamera nadzor, da se ugotovi, ali bo predmet znane velikosti ustrezal določenemu prostoru. V tem članku bomo ustvarili platneno aplikacijo, ki bo naredila prav to.

Nasvet

Kontrolniki mešane resničnosti (MR) najbolje delujejo v dobro osvetljenih okoljih z ravnimi površinami. Sledenje je boljše na napravah, ki podpirajo LIDAR.

V aplikacijo za platno dodajte vnosna polja za najmanjše mere

Najprej bomo ustvarili aplikacijo za prazno platno. Nato bomo dodali način, da uporabnik vnese minimalne dimenzije za testiranje (to je najmanjši prostor, v katerem bo predmet, ki ga želimo prilegati).

  1. Ustvarite aplikacijo za prazno platno.

  2. Izberite Vstavi zavihek. Vstavite in postavite tri Besedilna oznaka kontrole na zaslonu.

  3. Spremenite Besedilo lastnost nalepk do Najmanjša širina, globina, in Najmanjša višina, oz.

    Posnetek zaslona besedilne oznake v izdelavi Microsoft Power Apps Studio, prikazan poleg njegovih lastnosti.

  4. Izberite Vstavi zavihek. Vstavite tri Vnos besedila kontrolniki in jih postavite desno od treh oznak.

  5. Preimenujte kontrolnike za vnos besedila v minWidth, ·, in minVišina, oz.

    Posnetek zaslona kontrolnika za vnos besedila v izdelavi Microsoft Power Apps Studio, prikazan poleg njegovih lastnosti.

  6. Izberite vse tri kontrole za vnos besedila. Spremenite skupino Format lastnine do Številka in nastavite Privzeto lastnine do 1.0.

    Posnetek zaslona treh kontrolnikov za vnos besedila v izdelavi Microsoft Power Apps Studio, prikazan poleg lastnosti izbrane skupine.

Dodajte in povežite Merilna kamera nadzor

Nato bomo dodali Merilna kamera nadzor, ki uporabniku omogoča merjenje tridimenzionalnega prostora. Meritve bomo povezali s podatkovno tabelo za kasnejšo uporabo.

  1. Izberite Vstavi zavihek in razširite mediji.

  2. Izberite Merilna kamera da postavite kontrolnik na zaslon aplikacije. Povlecite kontrolnik blizu dna zaslona.

  3. Spremenite lastnosti kontrolnika na naslednji način:

    Ime lastnosti Vrednost Kje
    Merska enota Noge ali metri Izberite na Lastnosti zavihek
    Vrsta meritve Prostornina Izberite na Lastnosti zavihek
    Risanje škatle Vklopi Izberite na Lastnosti zavihek
    Elementi Tabela ({ oznaka: "Test Volume"}) Vstopite na Napredno zavihek
    ItemsLabels "oznaka" Vstopite na Napredno zavihek
    OnMixedRealitySelect Set(test Volume, LookUp(MeasureInMR1.Measurements, Label = "Test Volume")); Vstopite na Napredno zavihek

The Predmeti, nalepke, in OnMixedRealitySelect lastnosti Merilna kamera nadzor bi moral izgledati kot naslednji primeri, ko končate:

Posnetek zaslona Measure in 3D control v izdelavi Microsoft Power Apps Studio, prikazan poleg njegovih lastnosti Items in ItemsLabels.

Posnetek zaslona Measure in 3D control v izdelavi Microsoft Power Apps Studio, prikazan poleg njegove lastnosti OnMixedRealitySelect.

Formula v Predmeti zajame dimenzije izmerjenega prostora v podatkovno tabelo z imenom "Test Volume". Formula v OnMixedRealitySelect nastavi spremenljivko z imenom "testVolume" na vrednosti, zajete v tabeli "Test Volume".

Prikaži rezultate

Na koncu bomo dodali besedilne oznake za prikaz meritev, ki so bile opravljene, in rezultat testa (to je, ali se bo predmet prilegal v izmerjeni prostor).

  1. Izberite Vstavi zavihek. Vstavite in postavite štiri Besedilna oznaka kontrole na zaslonu.

  2. Spremenite Besedilo lastnost kontrolnikov oznake, kot sledi. (Namig: kopirajte vsako formulo in jo prilepite v vrstico s formulo ali na Napredno zavihek lastnosti, kar vam je ljubše.)

    • Prva oznaka:

          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"))
      

      Ta formula nastavi besedilo oznake glede na to, ali je bil test uspešen ali neuspešen, na podlagi najmanjših dimenzij, potrebnih za držanje predmeta, ki ga želimo prilegati. Če se test ni izvedel, ker niso bile zajete meritve ali je prišlo do napake, besedilo oznake to odraža.

      Posnetek zaslona kontrolnika besedilne oznake v izdelavi Microsoft Power Apps Studio, prikazan z lastnostjo Besedilo v vrstici s formulo in zavihku z naprednimi lastnostmi.

    • Druga oznaka:

          Concatenate("Bounding Width: ", Text(testVolume.BoundingWidth))
      

      Ta formula nastavi besedilo oznake na "Bounding Width:", ki ji sledi dimenzija širine izmerjenega prostora.

    • Tretja oznaka:

          Concatenate("Bounding Depth: ", Text(testVolume.BoundingDepth))
      

      Ta formula nastavi besedilo oznake na "Bounding Depth: ", ki ji sledi dimenzija globine izmerjenega prostora.

    • Četrta oznaka:

          Concatenate("Bounding Height: ", Text(testVolume.Height))
      

      Ta formula nastavi besedilo oznake na "Bounding Height: ", ki ji sledi dimenzija višine izmerjenega prostora.

Zaslon aplikacije naj bi zdaj izgledal takole:

Posnetek zaslona končnega zaslona aplikacije.

Preskus aplikacije

Izberite gumb za predogled, da zaženete aplikacijo v načinu za predogled. Izberite Merilna kamera za zapolnitev oznak s podatki. Če želite preveriti, ali povezave nalepk delujejo, vnesite nove vrednosti v polja za vnos besedila.

Posnetek zaslona aplikacije v načinu predogleda po vnosu novih minimalnih dimenzij.

Vrednosti za Mejna širina in Mejna globina lahko zamenjate, ko opravite test.

Shranite in objavite svojo aplikacijo. Odprite ga na napravi z omogočeno mešano resničnostjo, da preizkusite, ali se bo predmet z določenimi dimenzijami ujemal z mejami katere koli zajete meritve.

Filtriranje vir podatkov

Aplikacija, ki smo jo ustvarili, testira en sam niz dimenzij, ki jih določi uporabnik, ko se aplikacija zažene. Lahko pa ga razširite za testiranje proti kateremu koli vir podatkov, tako da uporabite formulo kot Filter predikat.

Recimo, da naša aplikacija vsebuje sklicevanje na a Dataverse poimenovana tabela Izdelki ki vključuje tri stolpce: Premer, ·, in Višina (ustreza dimenzijam posameznega izdelka). Za filtriranje zbirke tako, da prikažemo samo meritve, ki bi ustrezale izmerjeni prostornini, lahko uporabimo naslednjo formulo.

    If(IsBlankOrError(testVolume), Products,
    Filter(Products, testVolume.Height >= Height &&
        ((testVolume.BoundingWidth >= Width && testVolume.BoundingDepth >= Depth) ||
        (testVolume.BoundingWidth >= Depth && testVolume.BoundingDepth >= Width))))

Glejte tudi

Opomba

Ali nam lahko poveste, kateri je vaš prednostni jezik za dokumentacijo? Izpolnite kratko anketo. (upoštevajte, da je v angleščini)

Z anketo boste porabili približno sedem minut. Ne zbiramo nobenih osebnih podatkov (izjava o zasebnosti).