Delen via


Vereisten voor tekenpakketten

Notitie

Buitengebruikstelling van Azure Maps Creator

De indoor kaartservice van Azure Maps Creator is nu afgeschaft en wordt buiten gebruik gesteld op 30-9-25. Zie einde levensduuraankondiging van Azure Maps Creator voor meer informatie.

U kunt geüploade tekenpakketten converteren naar kaartgegevens met behulp van de Azure Maps Conversion-service. In dit artikel worden de tekenpakketvereisten voor de Conversie-API beschreven. Als u een voorbeeldpakket wilt weergeven, kunt u het voorbeeldtekeningspakket downloaden.

Vereisten

Het tekenpakket bevat tekeningen die zijn opgeslagen in DWG-indeling. Dit is de systeemeigen bestandsindeling voor AutoCAD-software® van Autodesk.

U kunt elke CAD-software kiezen om de tekeningen in het tekenpakket te produceren.

De conversieservice converteert het tekenpakket naar kaartgegevens. De conversieservice werkt met de AutoCAD DWG-bestandsindeling AC1032.

Woordenlijst

Hier volgen enkele termen en definities die belangrijk zijn tijdens het lezen van dit artikel.

Term Definitie
Laag Een AutoCAD DWG-laag uit het tekenbestand.
Entity Een AutoCAD DWG-entiteit uit het tekenbestand.
Xref Een bestand in de AutoCAD DWG-bestandsindeling, gekoppeld aan de primaire tekening als externe verwijzing.
Niveau Een gedeelte van een gebouw op een vaste hoogte. Bijvoorbeeld de vloer van een gebouw.
Functie Een exemplaar van een object dat is geproduceerd vanuit de Conversieservice die een geometrie combineert met metagegevensinformatie.
Functieklassen Een algemene blauwdruk voor functies. Een eenheid is bijvoorbeeld een functieklasse en een kantoor is een functie.

Structuur van tekenpakket

Een tekenpakket is een .zip archief met de volgende bestanden:

  • DWG-bestanden in AutoCAD DWG-bestandsindeling.
  • Een manifest.json-bestand dat de DWG-bestanden in het tekenpakket beschrijft.

Het tekenpakket moet worden gezipt in één archiefbestand, met de extensie .zip. De DWG-bestanden kunnen op elke manier in het pakket worden georganiseerd, maar het manifestbestand moet zich in de hoofdmap van het zip-pakket bevinden. In de volgende secties worden de vereisten voor de DWG-bestanden, het manifestbestand en de inhoud van deze bestanden beschreven. Als u een voorbeeldpakket wilt weergeven, kunt u het voorbeeldtekeningspakket downloaden.

DWG-bestandsconversieproces

De conversieservice doet het volgende voor elk DWG-bestand:

  • Extraheert functieklassen:
    • Niveaus
    • Eenheden
    • Zones
    • Openingen
    • Muren
    • Verticale penetraties
  • Produceert een faciliteitfunctie .
  • Produceert een minimale set standaardcategoriefuncties waarnaar wordt verwezen door andere functies:
    • kamer
    • structuur
    • muur
    • opening.door
    • zone
    • faciliteit

Vereisten voor DWG-bestanden

Er is één DWG-bestand vereist voor elk niveau van de faciliteit. Alle gegevens van één niveau moeten zijn opgenomen in één DWG-bestand. Eventuele externe verwijzingen (xrefs) moeten zijn gebonden aan de bovenliggende tekening. Een faciliteit met drie niveaus heeft bijvoorbeeld drie DWG-bestanden in het tekenpakket.

Elk DWG-bestand moet voldoen aan de volgende vereisten:

  • Het DWG-bestand moet de lagen Buiten en Eenheid definiëren. U kunt desgewenst de volgende lagen definiëren: Wall, Door, UnitLabel, Zone en ZoneLabel.
  • Het DWG-bestand kan geen functies van meerdere niveaus bevatten.
  • Het DWG-bestand kan geen functies van meerdere faciliteiten bevatten.
  • De DWG moet verwijzen naar hetzelfde meetsysteem en dezelfde maateenheid als andere DWG-bestanden in het tekenpakket.

Vereisten voor DWG-laag

Elke DWG-laag moet voldoen aan de volgende regels:

  • Een laag moet uitsluitend functies van één klasse bevatten. Eenheden en wanden kunnen zich bijvoorbeeld niet in dezelfde laag bevinden.
  • Eén klasse functies kan worden vertegenwoordigd door meerdere lagen.
  • Zelf snijdende veelhoeken zijn toegestaan, maar worden automatisch gerepareerd. Wanneer ze zijn hersteld, genereert de Conversieservice een waarschuwing. Het is raadzaam om de herstelde resultaten handmatig te inspecteren, omdat ze mogelijk niet overeenkomen met de verwachte resultaten.
  • Elke laag heeft een ondersteunde lijst met entiteitstypen. Alle andere entiteitstypen in een laag worden genegeerd. Tekstentiteiten worden bijvoorbeeld niet ondersteund op de wandlaag.

De volgende tabel bevat een overzicht van de ondersteunde entiteitstypen en geconverteerde kaartfuncties voor elke laag. Als een laag niet-ondersteunde entiteitstypen bevat, negeert de conversieservice deze entiteiten.

Laag Entiteitstypen Geconverteerde functies
Buitenkant VEELHOEK, POLYLIJN (gesloten), CIRKEL of BELETSELTEKEN (gesloten) Niveaus
Eenheid VEELHOEK, POLYLIJN (gesloten), CIRKEL of BELETSELTEKEN (gesloten) Eenheden en verticale penetraties
Muur VEELHOEK, POLYLIJN (gesloten), CIRKEL of ELLIPS (gesloten), Structuren
Deur VEELHOEK, POLYLIJN, LIJN, CIRKEL, CIRKEL Openingen
Zone VEELHOEK, POLYLIJN (gesloten), CIRKEL of BELETSELTEKEN (gesloten) Zones
UnitLabel Tekst (één regel) Niet van toepassing. Deze laag kan alleen eigenschappen toevoegen aan de eenheidsfuncties van de laag Eenheden. Zie de laag UnitLabel voor meer informatie.
ZoneLabel Tekst (één regel) Niet van toepassing. Deze laag kan alleen eigenschappen toevoegen aan zonefuncties van de ZonesLayer. Zie de ZoneLabel-laag voor meer informatie.

In de volgende secties worden de vereisten voor elke laag beschreven.

Buitenlaag

Het DWG-bestand voor elk niveau moet een laag bevatten om de perimeter van dat niveau te definiëren. Deze laag wordt de buitenlaag genoemd. Als een faciliteit bijvoorbeeld twee niveaus bevat, moet deze twee DWG-bestanden hebben, met een buitenlaag voor elk bestand.

Ongeacht hoeveel entiteitstekeningen zich in de buitenlaag bevinden, bevat de resulterende faciliteitgegevensset slechts één niveaufunctie voor elk DWG-bestand. Bijkomend:

  • Buitenkanten moeten worden getekend als VEELHOEK, POLYLIJN (gesloten), CIRKEL of ELLIPS (gesloten).
  • Buitenkanten kunnen overlappen, maar worden opgelost in één geometrie.
  • De resulterende niveaufunctie moet ten minste 4 vierkante meter zijn.
  • Resulterende niveaufunctie mag niet groter zijn dan 400.000 vierkante meter.

Als de laag meerdere overlappende PolyLines bevat, worden deze opgelost in één functie Niveau. Als de laag meerdere niet-overlappende polylijnen bevat, heeft de resulterende functie Niveau een multi-polygonale weergave.

U kunt een voorbeeld van de buitenlaag zien als de overzichtslaag in het voorbeeldtekeningspakket.

Eenheidslaag

Het DWG-bestand voor elk niveau definieert een laag met eenheden. Eenheden zijn bevaarbare ruimten in het gebouw, zoals kantoren, gangen, trappen en liften. Als de VerticalPenetrationCategory eigenschap is gedefinieerd, worden bevaarbare eenheden die meerdere niveaus omvatten, zoals liften en trappen, geconverteerd naar verticale penetratiefuncties. Verticale penetratiefuncties die elkaar overlappen, krijgen er één setidtoegewezen.

De laag Eenheden moet voldoen aan de volgende vereisten:

  • Eenheden moeten worden getekend als VEELHOEK, POLYLIJN (gesloten), CIRKEL of ELLIPS (gesloten).
  • Eenheden moeten binnen de grenzen van de buitenperimeter van de faciliteit vallen.
  • Eenheden mogen niet gedeeltelijk overlappen.
  • Eenheden mogen geen zelf snijdende geometrie bevatten.

Geef een eenheid een naam door een tekstobject in de UnitLabel-laag te maken en plaats het object vervolgens binnen de grenzen van de eenheid. Zie de laag UnitLabel voor meer informatie.

U ziet een voorbeeld van de laag Eenheden in het voorbeeldtekeningspakket.

Wandlaag

Het DWG-bestand voor elk niveau kan een laag bevatten die de fysieke gebieden van muren, kolommen en andere bouwstructuur definieert.

  • Wanden moeten worden getekend als VEELHOEK, POLYLIJN (gesloten), CIRKEL of ELLIPS (gesloten).
  • De wandlaag of -lagen mogen alleen geometrie bevatten die wordt geïnterpreteerd als bouwstructuur.

U ziet een voorbeeld van de laag Muren in het voorbeeldtekeningspakket.

Deurlaag

U kunt een DWG-laag opnemen die deuren bevat. Elke deur moet de rand van een eenheid van de eenheidslaag overlappen.

Deuropeningen in een Azure Maps-gegevensset worden weergegeven als een segment met één regel dat meerdere eenheidsgrenzen overlapt. In de volgende afbeeldingen ziet u hoe Azure Maps de geometrie van de deurlaag converteert naar het openen van functies in een gegevensset.

Vier afbeeldingen met de stappen voor het genereren van openingen

Zonelaag

Het DWG-bestand voor elk niveau kan een zonelaag bevatten die de fysieke gebieden van zones definieert. Een zone is een niet-bevaarbare ruimte die kan worden benoemd en weergegeven. Zones kunnen meerdere niveaus omvatten en worden gegroepeerd met behulp van de eigenschap zoneSetId.

  • Zones moeten worden getekend als POLYGON, POLYLIJN (gesloten) of ELLIPSE (gesloten).
  • Zones kunnen overlappen.
  • Zones kunnen binnen of buiten de buitenperimeter van de faciliteit vallen.

Geef een zone een naam door een tekstobject in de ZoneLabel-laag te maken en het tekstobject binnen de grenzen van de zone te plaatsen. Zie ZoneLabel-laag voor meer informatie.

U ziet een voorbeeld van de zonelaag in het voorbeeldtekeningspakket.

UnitLabel-laag

Het DWG-bestand voor elk niveau kan een UnitLabel-laag bevatten. De UnitLabel-laag voegt een naameigenschap toe aan eenheden die zijn geëxtraheerd uit de eenheidslaag. Eenheden met een naameigenschap kunnen meer details bevatten die zijn opgegeven in het manifestbestand.

  • Eenheidslabels moeten entiteiten met één regel zijn.
  • Eenheidslabels moeten volledig binnen de grenzen van hun eenheid vallen.
  • Eenheden mogen niet meerdere tekstentiteiten bevatten in de Laag UnitLabel.

U ziet een voorbeeld van de Laag UnitLabel in het voorbeeldtekeningspakket.

ZoneLabel-laag

Het DWG-bestand voor elk niveau kan een ZoneLabel-laag bevatten. Met deze laag wordt een naameigenschap toegevoegd aan zones die zijn geëxtraheerd uit de zonelaag. Zones met een naameigenschap kunnen meer details bevatten die zijn opgegeven in het manifestbestand.

  • Zoneslabels moeten entiteiten met één regel zijn.
  • Zoneslabels moeten binnen de grenzen van hun zone vallen.
  • Zones mogen niet meerdere tekstentiteiten bevatten in de ZoneLabel-laag.

U ziet een voorbeeld van de ZoneLabel-laag in het voorbeeldtekeningspakket.

Vereisten voor manifestbestanden

De zip-map moet een manifestbestand bevatten op het hoofdniveau van de map en het bestand moet de naam manifest.json hebben. Hierin worden de DWG-bestanden beschreven waarmee de Conversieservice de inhoud kan parseren. Alleen de bestanden die door het manifest worden geïdentificeerd, worden opgenomen. Bestanden die zich in de zip-map bevinden, maar die niet correct worden vermeld in het manifest, worden genegeerd.

Hoewel er vereisten zijn wanneer u de manifestobjecten gebruikt, zijn niet alle objecten vereist. In de volgende tabel ziet u de vereiste en optionele objecten voor versie 1.1 van de Conversieservice.

Notitie

Tenzij anders opgegeven, staan alle eigenschappen met een tekenreekseigenschapstype duizend tekens toe.

Object Vereist Beschrijving
version true Manifestschemaversie. Op dit moment wordt alleen versie 1.1 ondersteund.
directoryInfo true Geeft een overzicht van de geografische en contactgegevens van de faciliteit. Het kan ook worden gebruikt om een geografische en contactgegevens van een bewoner te beschrijven.
buildingLevels true Hiermee geeft u de niveaus van de gebouwen en de bestanden die het ontwerp van de niveaus bevatten.
georeference true Bevat numerieke geografische informatie voor de faciliteittekening.
dwgLayers true Geeft de namen van de lagen weer en elke laag bevat de namen van eigen functies.
unitProperties false Kan worden gebruikt om meer metagegevens voor de eenheidsfuncties in te voegen.
zoneProperties false Kan worden gebruikt om meer metagegevens voor de zonefuncties in te voegen.

In de volgende secties worden de vereisten voor elk object beschreven.

directoryInfo

Eigenschap Type Vereist Beschrijving
name tekenreeks true Naam van gebouw.
streetAddress tekenreeks false Adres van gebouw.
unit tekenreeks false Eenheid in gebouw.
locality tekenreeks false Naam van een stad, stad, gebied, buurt of regio.
adminDivisions JSON-matrix met tekenreeksen false Een matrix met adresaanduidingen. Bijvoorbeeld: (Land, Staat) Gebruik ISO 3166-landcodes en ISO 3166-2 staats-/gebiedscodes.
postalCode tekenreeks false De sorteercode voor e-mail.
hoursOfOperation tekenreeks false Voldoet aan de indeling OSM-openingstijden .
phone tekenreeks false Telefoonnummer dat aan het gebouw is gekoppeld.
website tekenreeks false Website gekoppeld aan het gebouw.
nonPublic bool false Vlag die aangeeft of het gebouw open is voor het publiek.
anchorLatitude numeriek false Breedtegraad van een faciliteitanker (punaise).
anchorLongitude numeriek false Lengtegraad van een faciliteitanker (punaise).
anchorHeightAboveSeaLevel numeriek false Hoogte van de begane grond van de faciliteit boven zeeniveau, in meters.
defaultLevelVerticalExtent numeriek false Standaardhoogte (dikte) van een niveau van deze faciliteit dat moet worden gebruikt wanneer een niveau verticalExtent niet is gedefinieerd.

buildingLevels

Het buildingLevels object bevat een JSON-matrix met gebouwenniveaus.

Eigenschap Type Vereist Beschrijving
levelName tekenreeks true Beschrijvende niveaunaam. Bijvoorbeeld: Verdieping 1, Lobby, Blue Parking of Kelder.
ordinal geheel getal true Bepaalt de verticale volgorde van niveaus. Elke faciliteit moet een niveau hebben met rangtelwoord 0.
heightAboveFacilityAnchor numeriek false Hoogte hoger dan het anker in meters.
verticalExtent numeriek false Hoogte van vloer tot plafond (dikte) van het niveau in meters.
filename tekenreeks true Bestandssysteempad van de CAD-tekening voor een gebouwniveau. Het moet relatief zijn ten opzichte van de hoofdmap van het zip-bestand van het gebouw.

georeference

Eigenschap Type Vereist Beschrijving
lat numeriek true Decimaal beeld van graden breedtegraad bij de oorsprong van de faciliteittekening. De oorsprongcoördinaten moeten zich in WGS84 Web Mercator (EPSG:3857) hebben.
lon numeriek true Decimaal beeld van graden lengtegraad bij de oorsprong van de faciliteittekening. De oorsprongcoördinaten moeten zich in WGS84 Web Mercator (EPSG:3857) hebben.
angle numeriek true De klokgewijze hoek, in graden, tussen waar noord en de verticale as (Y) van de tekening.

dwgLayers

Eigenschap Type Vereist Beschrijving
exterior matrix tekenreeksen true Namen van lagen die het buitenbouwprofiel definiëren.
unit matrix tekenreeksen false Namen van lagen die eenheden definiëren.
wall matrix tekenreeksen false Namen van lagen die muren definiëren.
door matrix tekenreeksen false Namen van lagen die deuren definiëren.
unitLabel matrix tekenreeksen false Namen van lagen die namen van eenheden definiëren.
zone matrix tekenreeksen false Namen van lagen die zones definiëren.
zoneLabel matrix tekenreeksen false Namen van lagen die namen van zones definiëren.

unitProperties

Het unitProperties object bevat een JSON-matrix met eenheidseigenschappen.

Eigenschap Type Vereist Beschrijving
unitName tekenreeks true De naam van de eenheid die aan deze unitProperty record moet worden gekoppeld. Deze record is alleen geldig wanneer een labelkoppeling unitName wordt gevonden in de unitLabel lagen.
categoryName tekenreeks false Doel van de eenheid. Een lijst met waarden waarvan de opgegeven weergavestijlen gebruik kunnen maken, wordt beschreven in categories.json.
occupants matrix van directoryInfo-objecten false Lijst met inzittenden voor de eenheid.
nameAlt tekenreeks false Alternatieve naam van de eenheid.
nameSubtitle tekenreeks false Ondertitel van de eenheid.
addressRoomNumber tekenreeks false Kamer, eenheid, appartement of suite nummer van de eenheid.
verticalPenetrationCategory tekenreeks false Wanneer deze eigenschap is gedefinieerd, is de resulterende functie een verticale penetratie (VRT) in plaats van een eenheid. U kunt verticale penetraties gebruiken om naar andere verticale penetratiefuncties te gaan in de niveaus erboven of eronder. Verticale penetratie is een categorienaam . Als deze eigenschap is gedefinieerd, wordt de categoryName eigenschap overschreven door verticalPenetrationCategory.
verticalPenetrationDirection tekenreeks false Als verticalPenetrationCategory dit is gedefinieerd, definieert u desgewenst de geldige reisrichting. De toegestane waarden zijn: lowToHigh, highToLow, bothen closed. De standaardwaarde is both. De waarde is hoofdlettergevoelig.
nonPublic bool false Geeft aan of de eenheid open is voor het publiek.
isRoutable bool false Wanneer deze eigenschap is ingesteld op false, kunt u niet naar of via de eenheid gaan. De standaardwaarde is true.
isOpenArea bool false Hiermee kan de navigatieagent de eenheid invoeren zonder dat er een opening aan de eenheid hoeft te worden gekoppeld. Deze waarde is standaard ingesteld true op eenheden zonder openingen en false voor eenheden met openingen. Handmatig instellen isOpenArea false op een eenheid zonder openingen resulteert in een waarschuwing, omdat de resulterende eenheid niet bereikbaar is door een navigerende agent.

zoneProperties

Het zoneProperties object bevat een JSON-matrix met zone-eigenschappen.

Eigenschap Type Vereist Beschrijving
zoneName tekenreeks true De naam van de zone die moet worden gekoppeld aan zoneProperty de record. Deze record is alleen geldig wanneer een labelkoppeling zoneName wordt gevonden in de zoneLabel laag van de zone.
categoryName tekenreeks false Doel van de zone. Een lijst met waarden waarvan de opgegeven weergavestijlen gebruik kunnen maken, wordt beschreven in categories.json.
zoneNameAlt tekenreeks false Alternatieve naam van de zone.
zoneNameSubtitle tekenreeks false Ondertitel van de zone.
zoneSetId tekenreeks false Stel de id in om een relatie tot stand te brengen tussen meerdere zones, zodat ze kunnen worden opgevraagd of geselecteerd als een groep. Bijvoorbeeld zones die meerdere niveaus omvatten.

Manifest van voorbeeldtekeningspakket

Hier volgt het manifestbestand voor het voorbeeldtekeningspakket. Ga naar het voorbeeldtekeningspakket voor Azure Maps Creator op GitHub om het hele pakket te downloaden.

Manifestbestand

{
    "version": "1.1", 
    "directoryInfo": { 
        "name": "Contoso Building", 
        "streetAddress": "Contoso Way", 
        "unit": "1", 
        "locality": "Contoso eastside", 
        "postalCode": "98052", 
        "adminDivisions": [ 
            "Contoso city", 
            "Contoso state", 
            "Contoso country" 
        ], 
        "hoursOfOperation": "Mo-Fr 08:00-17:00 open", 
        "phone": "1 (425) 555-1234", 
        "website": "www.contoso.com", 
        "nonPublic": false, 
        "anchorLatitude": 47.636152, 
        "anchorLongitude": -122.132600, 
        "anchorHeightAboveSeaLevel": 1000, 
        "defaultLevelVerticalExtent": 3  
    }, 
    "buildingLevels": { 
        "levels": [ 
            { 
                "levelName": "Basement", 
                "ordinal": -1, 
                "filename": "./Basement.dwg" 
            }, { 
                "levelName": "Ground", 
                "ordinal": 0, 
                "verticalExtent": 5, 
                "filename": "./Ground.dwg" 
            }, { 
                "levelName": "Level 2", 
                "ordinal": 1, 
                "heightAboveFacilityAnchor": 3.5, 
                "filename": "./Level_2.dwg" 
            } 
        ] 
    }, 
    "georeference": { 
        "lat": 47.636152, 
        "lon": -122.132600, 
        "angle": 0 
    }, 
    "dwgLayers": { 
        "exterior": [ 
            "OUTLINE", "WINDOWS" 
        ], 
        "unit": [ 
            "UNITS" 
        ], 
        "wall": [ 
            "WALLS" 
        ], 
        "door": [ 
            "DOORS" 
        ], 
        "unitLabel": [ 
            "UNITLABELS" 
        ], 
        "zone": [ 
            "ZONES" 
        ], 
        "zoneLabel": [ 
            "ZONELABELS" 
        ] 
    }, 
    "unitProperties": [ 
        { 
            "unitName": "B01", 
            "categoryName": "room.office", 
            "occupants": [ 
                { 
                    "name": "Joe's Office", 
                    "phone": "1 (425) 555-1234" 
                } 
            ], 
            "nameAlt": "Basement01", 
            "nameSubtitle": "01", 
            "addressRoomNumber": "B01", 
            "nonPublic": true, 
            "isRoutable": true, 
            "isOpenArea": true 
        }, 
        { 
            "unitName": "B02" 
        }, 
        { 
            "unitName": "B05", 
            "categoryName": "room.office" 
        }, 
        { 
            "unitName": "STRB01", 
            "verticalPenetrationCategory": "verticalPenetration.stairs", 
            "verticalPenetrationDirection": "both" 
        }, 
        { 
            "unitName": "ELVB01", 
            "verticalPenetrationCategory": "verticalPenetration.elevator", 
            "verticalPenetrationDirection": "high_to_low" 
        } 
    ], 
    "zoneProperties": 
    [ 
        { 
            "zoneName": "WifiB01", 
            "categoryName": "Zone", 
            "zoneNameAlt": "MyZone", 
            "zoneNameSubtitle": "Wifi", 
            "zoneSetId": "1234" 
        }, 
        { 
            "zoneName": "Wifi101",
            "categoryName": "Zone",
            "zoneNameAlt": "MyZone",
            "zoneNameSubtitle": "Wifi",
            "zoneSetId": "1234"
        }
    ]
}

U kunt geüploade tekenpakketten converteren naar kaartgegevens met behulp van de Azure Maps Conversion-service. In dit artikel worden de tekenpakketvereisten voor de Conversie-API beschreven. Als u een voorbeeldpakket wilt weergeven, kunt u het voorbeeldtekeningspakket v2 downloaden.

Zie De handleiding voor tekenpakketten voor een handleiding voor het voorbereiden van uw tekenpakket.

Wijzigingen en revisies

  • Er is ondersteuning toegevoegd voor door de gebruiker gedefinieerde functieklassen.
  • Vereenvoudigde vereisten van DWG-lagen.

Vereisten

Het tekenpakket bevat tekeningen die zijn opgeslagen in DWG-indeling. Dit is de systeemeigen bestandsindeling voor AutoCAD-software® van Autodesk.

U kunt elke CAD-software kiezen om de tekeningen in het tekenpakket te produceren.

De conversieservice converteert het tekenpakket naar kaartgegevens. De Conversieservice werkt met de AUTOCAD DWG-bestandsindeling AC1032.

Woordenlijst

Hier volgen enkele termen en definities die belangrijk zijn tijdens het lezen van dit artikel.

Term Definitie
Laag Een AutoCAD DWG-laag uit het tekenbestand.
Entity Een AutoCAD DWG-entiteit uit het tekenbestand.
Xref Een bestand in de AutoCAD DWG-bestandsindeling, gekoppeld aan de primaire tekening als externe verwijzing.
Niveau Een gebied van een faciliteit op een vaste hoogte. Bijvoorbeeld de vloer van een faciliteit.
Functie Een exemplaar van een object dat is geproduceerd vanuit de Conversieservice die een geometrie combineert met metagegevensinformatie.
Functieklassen Een algemene blauwdruk voor functies.

Structuur van tekenpakket

Een tekenpakket is een ZIP-archief met de volgende bestanden:

  • DWG-bestanden in AutoCAD DWG-bestandsindeling.
  • Een manifest.json-bestand dat de DWG-bestanden in het tekenpakket beschrijft.

Het tekenpakket moet worden gecomprimeerd in één archiefbestand, met de extensie .zip. De DWG-bestanden kunnen op elke manier in het tekenpakket worden ingedeeld, maar het manifestbestand moet zich in de hoofdmap bevinden. In de volgende secties worden het conversieproces en de vereisten voor dwg- en manifestbestanden en de inhoud van deze bestanden uitgelegd. Als u een voorbeeldpakket wilt weergeven, kunt u het voorbeeldtekeningspakket v2 downloaden.

DWG-bestandsconversieproces

De Azure Maps Conversion-service converteert DWG-bestanden van een faciliteit om gegevens toe te wijzen die een faciliteit en functies van een faciliteit vertegenwoordigen.

De Azure Maps Conversion-service maakt het volgende:

  • Faciliteitfunctie: de functie op het hoogste niveau van een faciliteit waaraan alle niveaus van een faciliteit zijn gekoppeld.
  • Niveaufuncties: Er wordt één niveaufunctie gemaakt voor elke verdieping van een faciliteit. Alle functies op een niveau zijn gekoppeld aan een niveau.
  • Door de gebruiker gedefinieerde functies: DWG-lagen worden toegewezen aan een door de gebruiker gedefinieerde functieklasse en worden exemplaren van de functieklasse.

Vereisten voor DWG-bestanden

Elk DWG-bestand moet aan deze vereisten voldoen:

  • Het DWG-bestand kan geen functies van meerdere faciliteiten bevatten.
  • Het DWG-bestand kan geen functies van meerdere niveaus bevatten. Een faciliteit met drie niveaus heeft bijvoorbeeld drie DWG-bestanden in het tekenpakket.
  • Alle gegevens van één niveau moeten zijn opgenomen in één DWG-bestand. Eventuele externe verwijzingen (xrefs) moeten zijn gebonden aan de bovenliggende tekening.
  • Het DWG-bestand moet lagen definiëren die de grens van dat niveau vertegenwoordigen.
  • De DWG moet verwijzen naar hetzelfde meetsysteem en dezelfde maateenheid als andere DWG-bestanden in het tekenpakket.
  • Het DWG-bestand moet worden uitgelijnd wanneer het op een ander niveau van dezelfde faciliteit is gestapeld.

Vereisten voor DWG-laag

Functieklassen

Een of meer DWG-lagen kunnen worden toegewezen aan een door de gebruiker gedefinieerde functieklasse. Eén exemplaar van de functie wordt gemaakt op basis van een entiteit op de toegewezen laag. DWG-lagen stoel, tafel en bank worden bijvoorbeeld toegewezen aan een functieklasse genaamd meubilair. Er wordt een meubelfunctie gemaakt voor elke entiteit op basis van de gedefinieerde lagen. Bijkomend:

  • Alle lagen moeten worden gescheiden om verschillende functietypen van de faciliteit weer te geven.
  • Alle entiteiten moeten binnen de grenzen van de niveauperimeter vallen.
  • Ondersteunde AutoCAD-entiteitstypen: TEXT, MTEXT, POINT, ARC, CIRCLE, LINE, POLYLINE, ELLIPSE.

Eigenschappen van functieklasse

Tekstentiteiten die binnen de grenzen van een gesloten shape vallen, kunnen als eigenschap aan die functie worden gekoppeld. Een ruimtefunctieklasse kan bijvoorbeeld tekst bevatten die de naam van de ruimte beschrijft en een ander voorbeeldtekenpakket voor het ruimtetype v2. Bijkomend:

  • Alleen TEKST- en MTEXT-entiteiten zijn als eigenschap aan de functie gekoppeld. Alle andere entiteitstypen worden genegeerd.
  • Het tekst- en MTEXT-redenpunt moet binnen de grenzen van de gesloten shape vallen.
  • Als meer dan één teksteigenschap binnen de grenzen van de gesloten shape valt en beide aan één eigenschap zijn toegewezen, wordt er een willekeurig geselecteerd.

Faciliteitniveau

Het DWG-bestand voor elk niveau moet een laag bevatten om de perimeter van dat niveau te definiëren. Als een faciliteit bijvoorbeeld twee niveaus bevat, moet deze twee DWG-bestanden hebben, elk met een laag die de perimeter van dat niveau definieert.

Ongeacht hoeveel entiteitstekeningen zich in de perimeterlaag op niveau bevinden, bevat de resulterende faciliteitgegevensset slechts één niveaufunctie voor elk DWG-bestand. Bijkomend:

  • Vlakperimeters moeten worden getekend als POLYGON, POLYLIJN (gesloten), CIRKEL of ELLIPSE (gesloten).
  • Level perimeters kunnen overlappen, maar worden opgelost in één geometrie.
  • De resulterende niveaufunctie moet ten minste 4 vierkante meter groot zijn.
  • De resulterende niveaufunctie mag niet groter zijn dan 400.000 vierkante meter.

Als de laag meerdere overlappende POLYLINES bevat, worden ze gecombineerd tot één niveaufunctie. Als de laag meerdere niet-overlapping POLYLINES bevat, heeft de resulterende functie Niveau een multi-polygonale weergave.

U ziet een voorbeeld van de perimeterlaag Niveau als de GROS$ laag in het voorbeeldtekeningspakket v2.

Vereisten voor manifestbestanden

Het tekenpakket moet een manifestbestand op het hoofdniveau bevatten en het bestand moet de naam manifest.json hebben. Hierin worden de DWG-bestanden beschreven waarmee de Conversieservice de inhoud kan parseren. Alleen de bestanden die door het manifest worden geïdentificeerd, worden gebruikt. Bestanden die zich in het tekenpakket bevinden, maar die niet correct worden vermeld in het manifest, worden genegeerd.

De bestandspaden in het object buildingLevels van het manifestbestand moeten relatief zijn ten opzichte van de hoofdmap van het tekenpakket. De DWG-bestandsnaam moet exact overeenkomen met de naam van het faciliteitniveau. Een DWG-bestand voor het niveau Kelder is bijvoorbeeld Basement.dwg. Een DWG-bestand voor niveau 2 heet level_2.dwg. Bestandsnamen mogen geen spaties bevatten. U kunt een onderstrepingsteken gebruiken om spaties te vervangen.

Hoewel er vereisten zijn wanneer u de manifestobjecten gebruikt, zijn niet alle objecten vereist. In de volgende tabel ziet u de vereiste en optionele objecten voor de conversieservice 2023-03-01- preview.

Notitie

Tenzij anders opgegeven, zijn alle tekenreekseigenschappen beperkt tot duizend tekens.

JSON-manifestbestand

Eigenschap Type Vereist Beschrijving
version tekenreeks TRUE Manifestschemaversie. Momenteel versie 2.0
buildingLevels BuildingLevels-object TRUE Hiermee geeft u de niveaus van de faciliteit en de bestanden met het ontwerp van de niveaus.
featureClasses Matrix van featureClass-objecten TRUE Lijst met functieklasseobjecten die definiëren hoe lagen worden gelezen uit het DWG-tekenbestand.
georeference Geodeductieobject FALSE Bevat numerieke geografische informatie voor de faciliteittekening.    
facilityName tekenreeks FALSE De naam van de faciliteit.

In de volgende secties worden de vereisten voor elk object beschreven.

buildingLevels

Eigenschap Type Vereist Beschrijving
dwgLayers Matrix tekenreeksen TRUE Namen van lagen die het buitenprofiel van de faciliteit definiëren.
levels Matrix van niveauobjecten TRUE Een niveau verwijst naar een unieke vloer in de faciliteit die is gedefinieerd in een DWG-bestand, de hoogte van elk niveau en de verticale volgorde waarin ze worden weergegeven.

niveau

Eigenschap Type Vereist Beschrijving
levelName tekenreeks TRUE De naam van het niveau. Bijvoorbeeld: Verdieping 1, Lobby, Blue Parking of Kelder.
ordinal geheel getal TRUE Hiermee definieert u de verticale volgorde van niveaus. Alle ordinal waarden moeten uniek zijn binnen een faciliteit.
filename tekenreeks TRUE Het pad en de naam van het DWG-bestand dat het niveau in een faciliteit vertegenwoordigt. Het pad moet relatief zijn ten opzichte van de hoofdmap van het tekenpakket. 
verticalExtent Nummer FALSE Verticale hoogte van vloer tot plafond (dikte) van het niveau in meters.

featureClass

Eigenschap Type Vereist Beschrijving
dwgLayers Matrix tekenreeksen TRUE De naam van elke laag die de functieklasse definieert. Elke entiteit op de opgegeven laag wordt geconverteerd naar een exemplaar van de functieklasse. De dwgLayer naam waarvan een functie wordt geconverteerd, is uiteindelijk een eigenschap van die functie.
featureClassName String TRUE De naam van de functieklasse. Typische voorbeelden zijn ruimte, werkruimte of wand.
featureClassProperties Matrix van featureClassProperty-objecten FALSE Hiermee geeft u tekstlagen in het DWG-bestand dat is gekoppeld aan de functie als eigenschap. Bijvoorbeeld een label dat binnen de grenzen van een spatie valt, zoals een kamernummer.

featureClassProperty

Eigenschap Type Vereist Beschrijving
dwgLayers Matrix tekenreeksen TRUE De naam van elke laag die de eigenschap van de functieklasse definieert. Elke entiteit op de opgegeven laag wordt geconverteerd naar een eigenschap. Alleen de DWG TEXT- en MTEXT-entiteiten worden geconverteerd naar eigenschappen. Alle andere entiteiten worden genegeerd.
featureClassPropertyName String TRUE Naam van de eigenschap functieklasse, bijvoorbeeld spaceName of spaceUseType.

geodeductie

Eigenschap Type Vereist Beschrijving
lat Nummer TRUE Decimaal beeld van graden breedtegraad bij de oorsprong van de faciliteittekening. De oorsprongcoördinaten moeten zich in WGS84 Web Mercator (EPSG:3857) hebben.
lon Nummer TRUE Decimaal beeld van graden lengtegraad bij de oorsprong van de faciliteittekening. De oorsprongcoördinaten moeten zich in WGS84 Web Mercator (EPSG:3857) hebben.
angle Nummer TRUE De klokgewijze hoek, in graden, tussen waar noord en de verticale as (Y) van de tekening.

Manifest van voorbeeldtekeningspakket

De JSON in dit voorbeeld toont het manifestbestand voor het voorbeeldtekeningspakket. Ga naar het voorbeeldtekeningspakket v2 voor Azure Maps Creator op GitHub om het hele pakket te downloaden.

Manifestbestand

{
  "version": "2.0",
  "buildingLevels": {
    "dwgLayers": [
      "GROS$"
    ],
    "levels": [
      {
        "filename": "Ground.dwg",
        "levelName": "level 1",
        "ordinal": 0
      },
      {
        "filename": "Level_2.dwg",
        "levelName": "level 2",
        "ordinal": 1
      }
    ]
  },
  "georeference": {
    "lat": 47.63529901,
    "lon": -122.13355885,
    "angle": 0
  },
  "featureClasses": [
    {
      "featureClassName": "room",
      "dwgLayers": [
        "RM$"
      ],
      "featureClassProperties": [
        {
          "featureClassPropertyName": "name",
          "dwgLayers": [
            "A-IDEN-NUMR-EXST"
          ]
        },
        {
          "featureClassPropertyName": "roomType",
          "dwgLayers": [
            "A-IDEN-NAME-EXST"
          ]
        }
      ]
    },
    {
      "featureClassName": "wall",
      "dwgLayers": [
        "A-WALL-EXST",
        "A-WALL-CORE-EXST",
        "A-GLAZ-SILL-EXST",
        "A-GLAZ-SHEL-SILL-EXST",
        "A-GLAZ-SHEL-EXST",
        "A-GLAZ-EXST"
      ]
    },
    {
      "featureClassName": "workspace",
      "dwgLayers": [
        "A-BOMA"
      ]
    },
    {
      "featureClassName": "workspaceFurniture",
      "dwgLayers": [
        "A-FURN-SYTM-EXST"
      ]
    },
    {
      "featureClassName": "buildingFurniture",
      "dwgLayers": [
        "A-FURN-FREE-EXST"
      ]
    }
  ],
  "facilityName": "Contoso Building"
}

Volgende stappen

Zie de handleiding voor het tekenenpakket voor een handleiding voor het voorbereiden van het tekenpakket.