Dela via


Skapare för inomhuskartor

Kommentar

Azure Maps Creator-tillbakadragning

Inomhuskartetjänsten för Azure Maps Creator är nu inaktuell och kommer att dras tillbaka den 25-09-30. Mer information finns i Meddelande om slut på livslängd för Azure Maps Creator.

Den här artikeln beskriver begrepp och verktyg som gäller för Azure Maps Creator. Vi rekommenderar att du läser den här artikeln innan du börjar använda Azure Maps Creator API och SDK.

Du kan använda Creator för att utveckla program med kartfunktioner som baseras på kartdata inomhus. I den här artikeln beskrivs hur du laddar upp, konverterar, skapar och använder dina kartdata. Vanligtvis slutförs arbetsflödet av två olika personer med olika expertområden och ansvarsområden:

  • Kartskapare: ansvarar för att kurera och förbereda kartdata.
  • Användare av mappningsdata för skapare: använder kundkartdata i program.

Följande diagram illustrerar hela arbetsflödet.

Arbetsflöde för mappning av skapardata

Skapa Azure Maps Creator

Om du vill använda Creator-tjänster måste en Azure Maps Creator-resurs skapas och associeras till ett Azure Maps-konto med prisnivån Gen 2. Information om hur du skapar en Azure Maps Creator-resurs i Azure finns i Hantera Azure Maps Creator.

Dricks

Prisinformation finns i avsnittet Skapare i Priser för Azure Maps.

Skaparautentisering

Creator ärver IAM-inställningar (Azure Maps Access Control). Alla API-anrop för dataåtkomst måste skickas med autentiserings- och auktoriseringsregler.

Användningsdata för skapare ingår i dina Azure Maps-användningsdiagram och aktivitetslogg. Mer information finns i Hantera autentisering i Azure Maps.

Viktigt!

Vi rekommenderar att du använder:

  • Microsoft Entra-ID i alla lösningar som skapas med ett Azure Maps-konto med hjälp av Creator-tjänster. Mer information om Microsoft Entra-ID finns i Microsoft Entra-autentisering.

  • Inställningar för rollbaserad åtkomstkontroll. Med de här inställningarna kan kartskapare fungera som Rollen Azure Maps-datadeltagare och användare av mappningsdata för Skapare kan fungera som Azure Maps-dataläsare. Mer information finns i Auktorisering med rollbaserad åtkomstkontroll.

Typer av skapardataobjekt

Creator-tjänster skapar, lagrar och använder olika datatyper som definieras och beskrivs i följande avsnitt. Ett skapardataobjekt kan vara av följande typer:

  • Konverterade data
  • Datamängd
  • Paneluppsättning
  • style
  • Mappningskonfiguration
  • Routningsuppsättning

Ladda upp ett ritningspaket

Skaparen samlar in kartdata inomhus genom att konvertera ett uppladdat ritningspaket. Ritningspaketet representerar en konstruerad eller ombyggd anläggning. Information om krav för ritningspaket finns i Krav för ritningspaket.

Följ stegen som beskrivs i artikeln Så här skapar du dataregister för att ladda upp ritningspaketet till ditt Azure Storage-konto och registrera det sedan i ditt Azure Maps-konto.

Viktigt!

Se till att anteckna värdet för den unika identifieraren (udid) och du behöver det. udid Krävs för att konvertera det uppladdade paketet till kartdata inomhus.

Konvertera ett ritningspaket

Konverteringstjänsten konverterar ett uppladdat ritningspaket till kartdata inomhus. Konverteringstjänsten verifierar också paketet. Valideringsproblem klassificeras i två typer:

  • Fel: Om några fel identifieras misslyckas konverteringsprocessen. När ett fel inträffar tillhandahåller konverteringstjänsten en länk till det fristående webbprogrammet Azure Maps Drawing Error Visualizer . Du kan använda Visualiseraren för ritningsfel för att inspektera varningar och fel i ritningspaketet som inträffade under konverteringsprocessen. När du har åtgärdat felen kan du försöka ladda upp och konvertera paketet.
  • Varningar: Om några varningar identifieras lyckas konverteringen. Vi rekommenderar dock att du granskar och löser alla varningar. En varning innebär att en del av konverteringen ignorerades eller korrigerades automatiskt. Om du inte kan lösa varningarna kan det leda till fel i senare processer. Mer information finns i Varningar och fel för ritningspaket.

Skapa kartdata inomhus

Azure Maps Creator tillhandahåller följande tjänster som stöder skapande av kartor:

Datauppsättningar

En datauppsättning är en samling funktioner för inomhuskartor. Funktionerna på inomhuskartan representerar anläggningar som definieras i ett konverterat ritningspaket. När du har skapat en datauppsättning med datauppsättningstjänsten kan du skapa valfritt antal paneluppsättningar.

Utvecklare kan när som helst använda datauppsättningstjänsten för att lägga till eller ta bort anläggningar i en befintlig datauppsättning. Mer information om hur du uppdaterar en befintlig datauppsättning med hjälp av API:et finns i tilläggsalternativen i Datauppsättningstjänsten. Ett exempel på hur du uppdaterar en datauppsättning finns i Dataunderhåll.

Paneluppsättningar

En paneluppsättning är en samling vektordata som representerar en uppsättning enhetliga rutnätspaneler. Utvecklare kan använda tileset-tjänsten för att skapa paneluppsättningar från en datauppsättning.

Om du vill återspegla olika innehållssteg kan du skapa flera paneluppsättningar från samma datauppsättning. Du kan till exempel göra en paneluppsättning med möbler och utrustning, och en annan paneluppsättning utan möbler och utrustning. Du kan välja att generera en paneluppsättning med de senaste datauppdateringarna och en annan paneluppsättning utan de senaste datauppdateringarna.

Förutom vektordata tillhandahåller paneluppsättningen metadata för kartrenderingsoptimering. Metadata för paneluppsättningar innehåller till exempel en minsta och högsta zoomnivå för paneluppsättningen. Metadata innehåller också en avgränsningsruta som definierar paneluppsättningens geografiska omfattning. Ett program kan använda en avgränsningsruta för att programmatiskt ange rätt mittpunkt. Mer information om metadata för paneluppsättningar finns i Paneluppsättningslista.

När en paneluppsättning har skapats hämtas den med hjälp av renderingstjänsten.

Om en paneluppsättning blir inaktuell och inte längre är användbar kan du ta bort paneluppsättningen. Information om hur du tar bort paneluppsättningar finns i Dataunderhåll.

Kommentar

En paneluppsättning är oberoende av datauppsättningen som den skapades från. Om du skapar paneluppsättningar från en datauppsättning och sedan uppdaterar datauppsättningen uppdateras inte paneluppsättningarna.

Om du vill återspegla ändringar i en datauppsättning måste du skapa nya paneluppsättningar. På samma sätt påverkas inte datauppsättningen om du tar bort en paneluppsättning.

Anpassad formatering (förhandsversion)

Ett format definierar det visuella utseendet på en karta. Den definierar vilka data som ska ritas, ordningen för att rita in dem och hur du formaterar data när du ritar dem. Azure Maps Creator-format stöder MapLibre-standarden för formatlager och sprites.

När du konverterar ett ritningspaket efter att du har laddat upp det till ditt Azure Maps-konto tillämpas standardformat på elementen på kartan. Med den anpassade formateringstjänsten kan du anpassa kartans visuella utseende. Du kan göra detta genom att redigera JSON-formatet manuellt och importera det till ditt Azure Maps-konto med hjälp av Format – Skapa HTTP-begäran, men den rekommenderade metoden är att använda redigeringsprogrammet för visuellt format. Mer information finns i Skapa anpassade format för inomhuskartor.

Exempellager i filen style.json:

{
	"id": "indoor_unit_gym_label",
	"type": "symbol",
	"filter": ["all", ["has","floor0"], ["any", ["==", "categoryName", "room.gym"]]],
	"layout": {
		"visibility": "none",
		"icon-image": "gym",
		"icon-size": {"stops": [[17.5, 0.7], [21, 1.1]]},
		"symbol-avoid-edges": true,
		"symbol-placement": "point",
		"text-anchor": "top",
		"text-field": "{name}",
		"text-font": ["SegoeFrutigerHelveticaMYingHei-Medium"],
		"text-keep-upright": true,
		"text-letter-spacing": 0.1,
		"text-offset": [0, 1.05],
		"text-size": {"stops": [[18, 5], [18.5, 6.5], [19, 8], [19.5, 9.5], [20, 11]]}
	},
	"metadata": {"microsoft.maps:layerGroup": "labels_indoor"},
	"minzoom": 17.5,
	"paint": {
		"text-color": "rgba(0, 0, 0, 1)",
		"text-halo-blur": 0.5,
		"text-halo-color": "rgba(255, 255, 255, 1)",
		"text-halo-width": 1,
		"text-opacity": ["step", ["zoom"], 0, 18, 1]
	},
	"source-layer": "Indoor unit"
},
Lageregenskaper beskrivning
id Namnet på lagret
type Återgivningstypen för det här lagret.
Några av de vanligaste typerna är:
fyllning: En fylld polygon med en valfri kantlinje.
Linje: En linjelinje.
Symbol: En ikon eller en textetikett.
fill-extrusion: En extruderad (3D) polygon.
filter Endast funktioner som matchar filtervillkoren visas.
layout Layoutegenskaper för lagret.
minzoom Ett tal mellan 0 och 24 som representerar den minsta zoomnivån för lagret. Vid zoomnivåer som är mindre än minzoomen är lagret dolt.
måla Standardfärgegenskaper för det här lagret.
source-layer En källa tillhandahåller data från en vektorpanelkälla som visas på en karta. Krävs för vektorpanelkällor. för alla andra källtyper, inklusive GeoJSON-källor.

Mappningskonfiguration

Kartkonfigurationen är en matris med konfigurationer. Varje konfiguration består av en baskarta och ett eller flera lager, där varje lager består av en tupppel + för formatpaneler.

Kartkonfigurationen används när du instansierar inomhushanteraren för ett kartobjekt när du utvecklar program i Azure Maps. Det refereras med hjälp av mapConfigurationId eller alias. Kartkonfigurationer är oföränderliga. När du gör ändringar i en befintlig kartkonfiguration skapas en ny kartkonfiguration, vilket resulterar i en annan mapConfingurationId. Varje gång du skapar en kartkonfiguration med hjälp av ett alias som redan används av en befintlig kartkonfiguration pekar den på den nya kartkonfigurationen.

Följande JSON är ett exempel på en standardmappningskonfiguration. I följande tabell finns en beskrivning av varje element i filen:

{
    "version": 1.0,
    "description": "This is the default Azure Maps map configuration for facility ontology tilesets.",
    "defaultConfiguration": "indoor_light",
    "configurations": [
        {
            "name": "indoor_light",
            "displayName": "Indoor light",
            "description": "A base style for Azure Maps.",
            "thumbnail": "indoor_2022-01-01.png",
            "baseMap": "microsoft_light",
            "layers": [
                {
                    "tilesetId": "fa37d225-924e-3f32-8441-6128d9e5519a",
                    "styleId": "microsoft-maps:indoor_2022-01-01"
                }
            ]
        },
        {
            "name": "indoor_dark",
            "displayName": "Indoor dark",
            "description": "A base style for Azure Maps.",
            "thumbnail": "indoor_dark_2022-01-01.png",
            "baseMap": "microsoft_dark",
            "layers": [
                {
                    "tilesetId": "fa37d225-924e-3f32-8441-6128d9e5519a",
                    "styleId": "microsoft-maps:indoor_dark_2022-01-01"
                }
            ]
        }
    ]
}
Egenskaper för formatmallsobjekt beskrivning
Name Namnet på formatmallen.
displayName Formatmallens visningsnamn.
description Användardefinierad beskrivning av formatet.
miniatyr Använd för att ange miniatyrbilden som används i formatväljaren för det här formatet. Mer information finns i formatväljarens kontroll.
baseMap Använd för att ange baskartans formatmall.
Lager Lagermatrisen består av en eller flera paneluppsättningar + formatupplar , var och en är ett lager av kartan. Detta möjliggör flera byggnader på en karta, där varje byggnad representeras i en egen paneluppsättning.

Ytterligare information

Wayfinding (förhandsversion)

Med Wayfinding-tjänsten kan du ge dina kunder den kortaste vägen mellan två punkter i en anläggning. När du har importerat dina kartdata inomhus och skapat din datauppsättning kan du använda den för att skapa en routningsuppsättning. Routningsuppsättningen innehåller de data som krävs för att generera sökvägar mellan två punkter. Wayfinding-tjänsten tar hänsyn till saker som minsta bredd på öppningar och kan eventuellt utesluta hissar eller trappor när du navigerar mellan nivåer som ett resultat.

Creator wayfinding drivs av Havok.

Wayfinding-sökvägar

När en vägfiningssökväg har genererats hittar den den kortaste sökvägen mellan två punkter i den angivna anläggningen. Varje våning i resan representeras som ett separat ben, liksom alla trappor eller hissar som används för att flytta mellan våningarna.

Till exempel kan den första delen av sökvägen vara från ursprunget till hissen på den våningen. Nästa ben är hissen, och sedan är den sista etappen vägen från hissen till målet. Den uppskattade restiden beräknas också och returneras i HTTP-svarets JSON.

Struktur

För att wayfinding ska fungera måste anläggningsdata innehålla en struktur. Wayfinding-tjänsten beräknar den kortaste sökvägen mellan två valda punkter i en anläggning. Tjänsten skapar sökvägen genom att navigera runt strukturer, till exempel väggar och andra ogenomträngliga strukturer.

Lodrät inträngning

Om det valda ursprunget och målet finns på olika våningar avgör wayfinding-tjänsten vilka vertikalaPenetrationsobjekt som trappor eller hissar som är tillgängliga som möjliga vägar för att navigera vertikalt mellan nivåer. Som standard används det alternativ som resulterar i den kortaste sökvägen.

Wayfinding-tjänsten inkluderar trappor eller hissar i en sökväg baserat på värdet av den vertikala penetrationens direction egenskap. Mer information om riktningsegenskapen finns i verticalPenetration i artikeln Facility Ontology. Mer information om andra faktorer som kan påverka sökvägsvalet mellan golvnivåer finns i dokumentationen avoidFeatures minWidth och i dokumentationen för api:et för wayfinding .

Mer information finns i artikeln om wayfinding-tjänsten för inomhuskartor.

Använda inomhuskartor

Rendera – Hämta API för kartpanel

API:et för Azure Maps [Render - Get Map Tile] har utökats för att stödja Creator-paneluppsättningar.

Program kan använda API:et Render – Get Map Tile för att begära paneluppsättningar. Paneluppsättningarna kan sedan integreras i en kartkontroll eller SDK. Ett exempel på en kartkontroll som använder renderingstjänsten finns i Modulen Inomhuskartor.

API för webbfunktionstjänst

Du kan använda webbfunktionstjänsten (WFS) för att fråga efter datauppsättningar. WFS följer api-funktionerna för Open Geospatial Consortium. Du kan använda WFS-API:et för att fråga efter funktioner i själva datauppsättningen. Du kan till exempel använda WFS för att hitta alla mellanstora mötesrum för en specifik anläggning och golvnivå.

Alias-API

Creator-tjänster som Conversion, Dataset och Tileset returnerar en identifierare för varje resurs som skapas från API:erna. Med alias-API :et kan du tilldela ett alias för att referera till en resursidentifierare.

Modul för inomhuskartor

Azure Maps Web SDK innehåller modulen Inomhuskartor. Den här modulen erbjuder utökade funktioner till Azure Maps Map Control-biblioteket . Modulen Inomhuskartor renderar inomhuskartor som skapats i Creator. Den integrerar widgetar som golvväljare som hjälper användarna att visualisera de olika våningarna.

Du kan använda modulen Inomhuskartor för att skapa webbprogram som integrerar kartdata inomhus med andra Azure Maps-tjänster. De vanligaste programinställningarna är att lägga till kunskap från andra kartor – till exempel väg, bilder, väder och transit – till inomhuskartor.

Modulen Inomhuskartor har också stöd för dynamisk kartformatering för mer information. Mer information finns i Förbättra dina inomhuskartor med funktionsformat för realtidskartor.

Azure Maps-integrering

När du börjar utveckla lösningar för inomhuskartor kan du identifiera sätt att integrera befintliga Azure Maps-funktioner. Du kan till exempel implementera tillgångsspårning eller säkerhetsscenarier med hjälp av Geofence-tjänsten med inomhuskartor för Creator. Du kan till exempel använda Geofence-API:et för att avgöra om en arbetare kommer in i eller lämnar specifika inomhusområden.

Dataunderhåll

Du kan använda API:et Azure Maps Creator List, Update och Delete för att lista, uppdatera och ta bort dina datauppsättningar och paneluppsättningar.

Kommentar

När du granskar en lista med objekt för att avgöra om du vill ta bort dem bör du överväga effekten av borttagningen på alla beroende API:er eller program. Om du till exempel tar bort en paneluppsättning som används av ett program med hjälp av API:et [Rendera – Hämta kartpanel] kan programmet inte återge paneluppsättningen.

Exempel: Uppdatera en datauppsättning

I följande exempel visas hur du uppdaterar en datauppsättning, skapar en ny paneluppsättning och tar bort en gammal paneluppsättning:

  1. Följ stegen i avsnitten Ladda upp ett ritpaket och Konvertera ett ritpaket för att ladda upp och konvertera det nya ritningspaketet.
  2. Använd Skapa datauppsättning för att lägga till konverterade data i den befintliga datauppsättningen.
  3. Använd Paneluppsättning Skapa för att generera en ny paneluppsättning från den uppdaterade datauppsättningen.
  4. Spara det nya tilesetId för nästa steg.
  5. Om du vill aktivera visualiseringen av den uppdaterade campusdatauppsättningen uppdaterar du identifieraren för paneluppsättningen i ditt program. Om den gamla paneluppsättningen inte längre används kan du ta bort den.