Dela via


Ta och ladda upp bilder med mixad verklighet

I den här artikeln skapar vi en app som kan ta bilder av en session med blandade inställningar och överföra den till en mapp på OneDrive. Vi använder kontrollen Visa i MR i det här exemplet kontroller Visa form i MR och Mätkamera fungerar också.

Vi ska utföra följande uppgifter:

  • Lägga till en 3D-objekt-kontroll för att visa och ändra ett exempel på 3D-objekt
  • Ansluta 3D-objekt-kontrollen till en Visa i MR-kontrollknapp för att se 3D-objektet i den verkliga världen
  • Lägga till en gallerikontroll för att visa bilder som tagits med kontrollen Visa i MR
  • Ladda upp foton till OneDrive med ett Microsoft Power Automate-flöde
  • Överföra bilder som tagits med blandade bilder till Dataverse

Förutsättningar

  • Skapa en tom arbetsyteapp.
  • Skapa en mapp med namnet MRPhotos på OneDrive. Du använder den här mappen för att lagra dina överladdade bilder.

Dricks

Kontrollerna för mixed reality (MR) fungerar bäst i välbelysta miljöer med strukturerade ytor. Spårning är bättre på LIDAR-aktiverade enheter.

Lägg till en knapp för att ta en bild på ett 3D-objekt i mixad verklighet

Det här exemplet har tre delar. Först lägger vi till en knapp som gör att användarna kan ta ett kort på ett 3D-objekt i mixad verklighet.

Lägg till en kontroll för 3D-objekt

Med appen öppen för redigering i Power Apps Studio:

  1. Öppna fliken Infoga och expandera Media.

  2. Välj 3D object du vill placera ett 3D-objekt på appskärmen. Dra kontrollen till skärmen om du vill placera den mer exakt.

    Kontrollen levereras med en form av formade reglagen. Om du vill kan du ändra kontrollens egenskap Source och läsa in en annan 3D-modell. I det här exemplet ska du använda URL:en https://raw.githubusercontent.com/microsoft/experimental-pcf-control-assets/master/robot_arm.glb.

    En skärmbild av en 3D-objekt-kontroll under konstruktion i Microsoft Power Apps Studio, visas med egenskapen Source.

Infoga och anslut en Visa i MR-kontroll

  1. Öppna fliken Infoga och expandera mixad verklighet.

  2. Markera kontrollen Visa i MR och placera den i appens skärm, eller dra kontrollen på skärmen för att placera den mer exakt.

  3. Ändra kontrollens egenskap Source till 3DObject1.Source. (3DObject1 är namnet på kontrollen 3D-objekt som vi lade till tidigare.) Detta uttryck styr Visa i MR för att lägga över 3D-modellen på enhetens kameraflöde.

    En skärmbild av en Visa i MR-kontroll under konstruktion i Microsoft Power Apps Studio, visas med egenskapen Source.

  4. Spara och publicera appen och kör den på den mobila enheten.

  5. Välj View in MR om du vill visa 3D-objektet med mixad verklighet. Välj kameraikonen om du vill ta en bild av MR-vyn.

Infoga en Galleri-kontroll för att visa bilder som tagits i appen

Nu ska vi lägga till ett galleri så att användarna kan visa de bilder de tagit.

  1. Redigera appen igen. Öppna fliken Infoga och placera en Vertical Galleri kontroll på skärmen.

  2. Ändra kontrollens egenskap Items till ViewInMR1.Photos. (ViewInMR1 är namnet på kontrollen Visa i MR som vi lade till tidigare.)

  3. Alternativt kan du ändra egenskapen Layout till Image and title.

    En skärmdump av ett vertikalt galleri under uppbyggnad i Microsoft Power Apps Studio, visas med dess Items och Layout-egenskaper.

  4. Förhandsgranska appen och välj View in MR om du vill skapa ett exempelfoto. Galleriet fylls i med en exempelbild.

    En skärmbild av en arbetsyteapp för skärmar som visar en 3D-modell och ett bild på modellen i ett galleri.

Anteckning

Om användare lämnar MR-vyn för att se galleriet och sedan gå in i MR-vyn igen och ta fler bilder, kommer de nya fotona att ersätta de som de tog tidigare.

Lägg till en större bild för bildgalleriet

Om du vill göra bilderna i galleriet lättare att se kan du lägga till en fullformatsbild som visas när användaren väljer en bild.

  1. Redigera appen igen. Öppna fliken Infoga och expandera Media.

  2. Välj Bild om du vill placera en Bild-kontroll på skärmen. Flytta och ändra storleken på bilden så att den blir större när en bild väljs.

    En skärmbild av en Bild-kontroll under anläggning i Microsoft Power Apps Studio.

  3. Ändra Bild-kontrollens egenskaper enligt följande: | Property | Värde | | - | - | | OnSelect | UpdateContext({vVisibleImageZoom:false}) | | Image | Gallery1.Selected.Image2 (förutsatt att gallerikontrollen är Gallery1 och den första bilden är Image2) | Synlig | vVisibleImageZoom

  4. Markera den första miniatyrbilden i Galleri-kontrollen. Ändra egenskapen OnSelect till UpdateContext({vVisibleImageZoom:true}).

    En skärmdump av en miniatyrbild i ett galleri i Microsoft Power Apps Studio med egenskapen OnSelect.

  5. Spara och publicera appen och kör den på den mobila enheten.

  6. Välj View in MR och välj sedan kameraikonen för att ta ett foto. Välj bakåtpilen högst upp på skärmen för att lämna MR-vyn.

  7. Välj förhandsgranskningen i galleriet om du vill visa en större version av bilden. Välj bilden för att dölja den.

Ladda upp foton till OneDrive med ett Power Automate-flöde

Senast ska vi skapa ett arbetsflöde i fönstret Power Automate. Arbetsflödet överför bilder från appen till en mapp med namnet MRPhotos på OneDrive.

Skapa ett flöde i Power Automate

  1. Redigera appen. Välj på appförfattarmenyn Power Automate > Skapa nytt flöde.

  2. Sök efter och markera den Power Apps knappmall.

    En skärmbild på Power Automate mallsidan där knappmallen Power Apps är markerad.

  3. I fönstret Skapa ditt flöde, välj Redigera i avancerat läge.

  4. Markera Power Apps knappen högst upp i fönstret och ange ett nytt namn för flödet. I det här exemplet kommer vi att namnge flödet ladda upp MR-bild.

    En skärmbild av redigeringsfönstret Power Automate där arbetsflödesnamnet förser dig med ett namn.

  5. Markera Power Apps knappen högst upp i fönstret och ange ett nytt namn för flödet. I det här exemplet kommer vi att namnge flödet ladda upp MR-bild.

    En skärmbild av redigeringsfönstret Power Automate där PowerApps steget är markerat för borttagning.

  6. Sök efter PowerApps (V2) och välj PowerApps (V2)-utlösaren.

    En skärmbild av redigeringsfönstret Power Automate där PowerApps (V2)-utlösaren markerad.

  7. Klicka på Lägg till indata och klicka sedan på Fil.

  8. Ändra etiketten Arkivinnehåll till Bild.

    En skärmbild av redigeringsfönstret Power Automate där etiketten för filinmatning ändras till Bild.

  9. Välj Nytt steg. Sök efter OneDrive skapa fil och välj åtgärden Skapa fil.

    En skärmbild av redigeringsfönstret Power Automate där OneDrive åtgärden Skapa fil är markerad.

  10. I Mappsökväg, välj mappikonen och navigera till MRPhotos mapp som du skapade tidigare.

  11. I Filnamn, ange @{triggerBody()?['file']?['name']} (Texten ändras till "file.name.")

  12. I Filinnehåll, ange @{triggerBody()['file']['contentBytes']} (Texten ändras till "Image.")

  13. Spara ditt flöde.

Det kompletta flödet bör se ut så här:

En skärmbild av redigeringsfönstret Power Automate med det färdiga arbetsflödet som visas.

Anslut arbetsflödet till en knapp i appen

  1. Återgå till appen i Power Apps Studio. Ditt flöde visas nu under Tillgängliga flöden.

    Skärmbild av Power Apps Studio datarutan med det flöde som visas.

  2. Öppna fliken Infoga och välj Knapp. Placera knappkontrollen på skärmen och ändra storlek på den efter behov.

  3. Ändra kontrollens egenskap Text till ladda upp foton.

  4. I formelfältet högst upp i fönstret Power Apps välj egenskap OnSelect. Välj Åtgärd > Power Automate > Ladda upp MR-bild.

    En skärmdump av en knappkontroll under uppbyggnad i Power Apps Studio, med ett flöde lagt till kontrollens OnSelect-egenskap.

    Knappkontrollens egenskap OnSelect ändras till UploadMRPhoto.Run(.

  5. För att ladda upp det senast tagna fotot, klistra in följande kod efter öppningsparentesen: {file:{name:GUID() & ".png", contentBytes:Last(ViewInMR1.Photos).ImageURI}})

    En skärmdump av en knappkontrolls OnSelect-egenskap i Power Apps Studio formelfältet, som laddar upp det senast tagna fotot.

    Om du placerade knappkontrollen inne i galleriet, klistra in följande kod istället: {fil: {name:GUID() & ".png", contentBytes:ThisItem.ImageURI}})

    En skärmdump av en knappkontrolls OnSelect-egenskap i Power Apps Studio formelfältet, när knappen är i ett galleri.

    Om du vill att knappen ska överföra alla bilder som tagits tar du bort UploadMRPhoto.Run( och klistra in följande kod: ForAll(ViewInMR1.Photos, UploadMRPhoto.Run({file:{name:GUID() & ".png", contentBytes:ImageURI}}))

    En skärmdump av en knappkontrolls OnSelect-egenskap i Power Apps Studio formelfältet, som laddar upp alla foton.

  6. Förhandsgranska appen och välj Vy i MR och välj sedan Överför bilder. Kontrollera mappen MRPhotos i OneDrive och kontrollera att exempelfotot har överförts.

Lägga till offlinefunktioner i appen

Du kan använda appen även om du har begränsad eller ingen nätverksanslutning med funktionerna SaveData och LoadData funktioner.

Överföra bilder som tagits med blandade bilder till Dataverse

Du kan lägga till bilder i Dataverse tabeller med hjälp av en kolumn av typen Bilddata. Bildkolumner i Dataverse har två obligatoriska fält – Fullständig och Värde – som kan anges till ImageURI-utdata för MR-kontrollerna.

Till exempel, om du vill ladda upp det första fotot som tagits av kontrollen Markup in MR till en Dataverse kolumn kallad Bild:

    Image: {Full: First(MarkupInMR.Photos).ImageURI, Value: First(MarkupInMR.Photos).ImageURI}

Se även

Anteckning

Kan du berätta om dina inställningar för dokumentationsspråk? Svara i en kort undersökning. (observera att undersökningen är på engelska)

Undersökningen tar ungefär sju minuter. Inga personuppgifter samlas in (sekretesspolicy).