Çizim paketi gereksinimleri

Azure Haritalar Dönüştürme hizmetini kullanarak karşıya yüklenen çizim paketlerini harita verilerine dönüştürebilirsiniz. Bu makalede, Dönüştürme API'sine yönelik çizim paketi gereksinimleri açıklanmaktadır. Örnek bir paketi görüntülemek için örnek Çizim paketini indirebilirsiniz.

Önkoşullar

Çizim paketi, Autodesk'in AutoCAD® yazılımı için yerel dosya biçimi olan DWG biçiminde kaydedilmiş çizimleri içerir.

Çizim paketindeki çizimleri üretmek için herhangi bir CAD yazılımı seçebilirsiniz.

Dönüştürme hizmeti çizim paketini harita verilerine dönüştürür. Dönüştürme hizmeti AutoCAD DWG dosya biçimiyle AC1032çalışır.

Terimler sözlüğü

Kolay başvuru için, bu makaleyi okurken önemli olan bazı terimler ve tanımlar aşağıda verilmiştir.

Süre Tanım
Katman Çizim dosyasından bir AutoCAD DWG katmanı.
Entity Çizim dosyasından bir AutoCAD DWG varlığı.
Xref AutoCAD DWG dosya biçiminde, birincil çizime dış başvuru olarak eklenmiş bir dosya.
Düzey Belirli bir yükseltideki bir binanın alanı. Örneğin, bir binanın katı.
Özellik Geometriyi meta veri bilgileriyle birleştiren Dönüştürme hizmetinden üretilen bir nesne örneği.
Özellik sınıfları Özellikler için ortak bir şema. Örneğin, birim bir özellik sınıfı, ofis ise bir özelliktir.

Çizim paketi yapısı

Çizim paketi, aşağıdaki dosyaları içeren bir .zip arşividir:

  • AutoCAD DWG dosya biçiminde DWG dosyaları.
  • Çizim paketindeki DWG dosyalarını açıklayan bir manifest.json dosyası.

Çizim paketi .zip uzantısıyla tek bir arşiv dosyasına sıkıştırılmalıdır. DWG dosyaları paketin içinde herhangi bir şekilde düzenlenebilir, ancak bildirim dosyasının sıkıştırılmış paketin kök dizininde bulunması gerekir. Sonraki bölümlerde DWG dosyalarının, bildirim dosyasının ve bu dosyaların içeriğinin gereksinimleri ayrıntılı olarak açıklanır. Örnek paketi görüntülemek için örnek çizim paketini indirebilirsiniz.

DWG dosya dönüştürme işlemi

Dönüştürme hizmeti her DWG dosyasında aşağıdakileri yapar:

  • Özellik sınıflarını ayıklar:
    • Düzeyler
    • Units
    • Bölgeler
    • Açılışlar
    • Duvar
    • Dikey penetrasyonlar
  • Bir Tesis özelliği üretir.
  • Diğer özellikler tarafından başvurulan en az sayıda varsayılan Kategori özelliği oluşturur:
    • Oda
    • yapı
    • Duvar
    • açık.kapı
    • bölge
    • Tesis

DWG dosya gereksinimleri

Tesisin her düzeyi için tek bir DWG dosyası gereklidir. Tek bir düzeydeki tüm veriler tek bir DWG dosyasında yer almalıdır. Tüm dış başvurular (xrefs) üst çizime bağlı olmalıdır. Örneğin, üç düzeyli bir tesisin çizim paketinde üç DWG dosyası vardır.

Her DWG dosyası aşağıdaki gereksinimlere uymalıdır:

  • DWG dosyasının Dış ve Birim katmanlarını tanımlaması gerekir. İsteğe bağlı olarak şu katmanları tanımlayabilir: Wall, Door, UnitLabel, Zone ve ZoneLabel.
  • DWG dosyası birden çok düzeyden özellik içeremez.
  • DWG dosyası birden çok olanaktan özellik içeremez.
  • DWG, çizim paketindeki diğer DWG dosyalarıyla aynı ölçüm sistemine ve ölçü birimine başvurmalıdır.

DWG katmanı gereksinimleri

Her DWG katmanı aşağıdaki kurallara uymalıdır:

  • Bir katman yalnızca tek bir sınıfın özelliklerini içermelidir. Örneğin, birimler ve duvarlar aynı katmanda olamaz.
  • Tek bir özellik sınıfı birden çok katmanla temsil edilebilir.
  • Kendi kendine kesişen çokgenlere izin verilir, ancak otomatik olarak onarılır. Bunlar onarıldığında, Dönüştürme hizmeti bir uyarı oluşturur. Onarılan sonuçların beklenen sonuçlarla eşleşmeyebileceği için el ile incelenmesi önerilir.
  • Her katmanın desteklenen varlık türleri listesi vardır. Katmandaki diğer varlık türleri yoksayılır. Örneğin, metin varlıkları duvar katmanında desteklenmez.

Aşağıdaki tabloda, her katman için desteklenen varlık türleri ve dönüştürülmüş eşleme özellikleri özetlenmektedir. Bir katman desteklenmeyen varlık türleri içeriyorsa, Dönüştürme hizmeti bu varlıkları yoksayar.

Katman Varlık türleri Dönüştürülen Özellikler
Dış ÇOKGEN, POLILINE (kapalı), DAIRE veya ELIPSE (kapalı) Düzeyler
Birim ÇOKGEN, POLILINE (kapalı), DAIRE veya ELIPSE (kapalı) Birimler ve Dikey penetrasyonlar
Duvar ÇOKGEN, POLILINE (kapalı), DAIRE veya ELIPSE (kapalı), Yapılar
Kapı ÇOKGEN, POLILINE, ÇIZGI, CIRCULARARC, DAIRE Açılışlar
Bölge ÇOKGEN, POLILINE (kapalı), DAIRE veya ELIPSE (kapalı) Bölgeler
UnitLabel Metin (tek satır) Uygulanamaz. Bu katman yalnızca Birim katmanından birim özelliklerine özellik ekleyebilir. Daha fazla bilgi için bkz . UnitLabel katmanı.
ZoneLabel Metin (tek satır) Uygulanamaz. Bu katman yalnızca ZonesLayer'dan bölge özelliklerine özellik ekleyebilir. Daha fazla bilgi için bkz . ZoneLabel katmanı.

Aşağıdaki bölümlerde her katman için gereksinimler açıklanmaktadır.

Dış katman

Her düzeyin DWG dosyası, bu düzeyin çevresini tanımlamak için bir katman içermelidir. Bu katman dış katman olarak adlandırılır. Örneğin, bir tesis iki düzey içeriyorsa, her dosya için dış katman içeren iki DWG dosyası olması gerekir.

Dış katmanda kaç varlık çizimi olursa olsun, sonuçta elde edilen tesis veri kümesi her DWG dosyası için yalnızca bir düzey özelliği içerir. Ayrıca:

  • Dış kısımlar POLYGON, POLYLINE (kapalı), DAIRE veya ELIPSE (kapalı) olarak çizilmelidir.
  • Dış kısımlar çakışabilir, ancak tek bir geometride çözülür.
  • Sonuçta elde edilen düzey özelliği en az 4 metrekare olmalıdır.
  • Sonuçta elde edilen düzey özelliği 400.000 metrekareden büyük olmamalıdır.

Katman birden çok çakışan PolyLine içeriyorsa, bunlar tek bir Düzey özelliğinde çözülür. Bunun yerine, katman birden çok örtüşmeyen PolyLine içeriyorsa, sonuçta elde edilen Düzey özelliğinin çok çokgen bir gösterimi vardır.

Dış katman örneğini örnek çizim paketinde ana hat katmanı olarak görebilirsiniz.

Birim katmanı

Her düzey için DWG dosyası, birimleri içeren bir katman tanımlar. Birimler ofisler, koridorlar, merdivenler ve asansörler gibi binada gezinilebilir alanlardır. VerticalPenetrationCategory Özellik tanımlanmışsa, asansörler ve merdivenler gibi birden çok düzeye yayılan gezinilebilir birimler Dikey Penetrasyon özelliklerine dönüştürülür. Birbiriyle çakışan dikey penetrasyon özelliklerine biri setidatanır.

Birimler katmanı aşağıdaki gereksinimlere uymalıdır:

  • Birimler POLYGON, POLYLINE (kapalı), DAIRE veya ELIPS (kapalı) olarak çizilmelidir.
  • Birimler tesisin dış çevresinin sınırlarına girmelidir.
  • Birimler kısmen çakışmamalıdır.
  • Birimler kendi kendine kesişen geometri içermemelidir.

UnitLabel katmanında bir metin nesnesi oluşturarak birimi adlandırın ve sonra nesneyi birimin sınırları içine yerleştirin. Daha fazla bilgi için bkz . UnitLabel katmanı.

Örnek çizim paketinde Birimler katmanının bir örneğini görebilirsiniz.

Duvar katmanı

Her düzey için DWG dosyası duvarların, sütunların ve diğer yapı yapısının fiziksel boyutlarını tanımlayan bir katman içerebilir.

  • Duvarlar POLYGON, POLYLINE (kapalı), DAIRE veya ELIPSE (kapalı) olarak çizilmelidir.
  • Duvar katmanı veya katmanları yalnızca yapı yapısı olarak yorumlanan geometri içermelidir.

Örnek çizim paketinde Duvarlar katmanının bir örneğini görebilirsiniz.

Kapı katmanı

Kapıları içeren bir DWG katmanı ekleyebilirsiniz. Her kapı Birim katmanındaki bir birimin kenarıyla örtüşmelidir.

Azure Haritalar veri kümesindeki kapı açıklıkları, birden çok birim sınırıyla çakışan tek satırlı bir kesim olarak temsil edilir. Aşağıdaki görüntülerde Azure Haritalar kapı katmanı geometrisini bir veri kümesindeki açma özelliklerine nasıl dönüştürdüğü gösterilmektedir.

Four graphics that show the steps to generate openings

Bölge katmanı

Her düzeyin DWG dosyası, bölgelerin fiziksel uzantılarını tanımlayan bir Bölge katmanı içerebilir. Bölge, adlandırılabilen ve işlenebilen gezinilemeyen bir alandır. Bölgeler birden çok düzeye yayılabilir ve zoneSetId özelliği kullanılarak birlikte gruplandırılır.

  • Alanlar POLYGON, POLYLINE (kapalı) veya ELIPSE (kapalı) olarak çizilmelidir.
  • Bölgeler çakışabilir.
  • Bölgeler tesisin dış çevresine veya dışına düşebilir.

ZoneLabel katmanında bir metin nesnesi oluşturup metin nesnesini bölgenin sınırları içine yerleştirerek bölgeyi adlandırın. Daha fazla bilgi için bkz . ZoneLabel katmanı.

Örnek çizim paketinde Bölge katmanının bir örneğini görebilirsiniz.

UnitLabel katmanı

Her düzey için DWG dosyası bir UnitLabel katmanı içerebilir. UnitLabel katmanı, Birim katmanından ayıklanan birimlere bir ad özelliği ekler. Ad özelliğine sahip birimler, bildirim dosyasında belirtilen daha fazla ayrıntıya sahip olabilir.

  • Birim etiketleri tek satırlı metin varlıkları olmalıdır.
  • Birim etiketlerinin tamamen kendi biriminin sınırları içinde olması gerekir.
  • Birimler, UnitLabel katmanında birden çok metin varlığı içermemelidir.

Örnek çizim paketinde UnitLabel katmanının bir örneğini görebilirsiniz.

ZoneLabel katmanı

Her düzey için DWG dosyası bir ZoneLabel katmanı içerebilir. Bu katman, Bölge katmanından ayıklanan bölgelere bir ad özelliği ekler. Ad özelliğine sahip bölgelerin bildirim dosyasında daha fazla ayrıntı belirtilebilir.

  • Bölgeler etiketleri tek satırlı metin varlıkları olmalıdır.
  • Alanlar etiketleri, bölgelerinin sınırları içinde yer almalıdır.
  • Alanlar ZoneLabel katmanında birden çok metin varlığı içermemelidir.

Örnek çizim paketinde ZoneLabel katmanının bir örneğini görebilirsiniz.

Bildirim dosyası gereksinimleri

Zip klasörü, dizinin kök düzeyinde bir bildirim dosyası içermeli ve dosya manifest.json olarak adlandırılmalıdır. Dönüştürme hizmetinin içeriklerini ayrıştırmasına izin vermek için DWG dosyalarını açıklar. Yalnızca bildirim tarafından tanımlanan dosyalar alınır. Zip klasöründe bulunan, ancak bildirimde düzgün listelenmeyen dosyalar yoksayılır.

Bildirim nesnelerini kullanırken gereksinimler olsa da, tüm nesneler gerekli değildir. Aşağıdaki tabloda, Dönüştürme hizmetinin 1.1 sürümü için gerekli ve isteğe bağlı nesneler gösterilmektedir.

Dekont

Aksi belirtilmedikçe, dize özellik türüne sahip tüm özellikler bin karaktere izin verir.

Object Zorunlu Tanım
version true Bildirim şeması sürümü. Şu anda yalnızca sürüm 1.1 desteklenmektedir.
directoryInfo true Tesis coğrafi ve iletişim bilgilerini özetler. Ayrıca, bir dolu coğrafi ve iletişim bilgilerini seviyelendirmek için de kullanılabilir.
buildingLevels true Binaların düzeylerini ve düzeylerin tasarımını içeren dosyaları belirtir.
georeference true Tesis çizimi için sayısal coğrafi bilgileri içerir.
dwgLayers true Katmanların adlarını listeler ve her katman kendi özelliklerinin adlarını listeler.
unitProperties false Birim özellikleri için daha fazla meta veri eklemek için kullanılabilir.
zoneProperties false Bölge özellikleri için daha fazla meta veri eklemek için kullanılabilir.

Sonraki bölümlerde her nesnenin gereksinimleri ayrıntılı olarak açıklanır.

directoryInfo

Özellik Türü Zorunlu Tanım
name Dize true Binanın adı.
streetAddress Dize false Binanın adresi.
unit Dize false Bina içindeki birim.
locality Dize false Bir şehir, şehir, alan, mahalle veya bölgenin adı.
adminDivisions Dizelerin JSON dizisi false Adres belirlemelerini içeren bir dizi. Örneğin: (Ülke, Eyalet) ISO 3166 ülke kodlarını ve ISO 3166-2 eyalet/bölge kodlarını kullanın.
postalCode Dize false Posta sıralama kodu.
hoursOfOperation Dize false OSM Açılış Saatleri biçimine bağlıdır.
phone Dize false Binayla ilişkili Telefon numara.
website Dize false Binayla ilişkilendirilmiş web sitesi.
nonPublic ikili false Binanın genel kullanıma açık olup olmadığını belirten bayrak.
anchorLatitude sayısal false Bir tesis tutturucusunun (rapt) enlemi.
anchorLongitude sayısal false Bir tesis çapasının boylamı (raptiye).
anchorHeightAboveSeaLevel sayısal false Tesisin zemin katının deniz seviyesinden yüksekliği, metre cinsinden.
defaultLevelVerticalExtent Sayısal false Bir düzeyin tanımsız olduğu durumlarda kullanılacak bu tesisin bir düzeyinin verticalExtent varsayılan yüksekliği (kalınlığı).

buildingLevels

buildingLevels nesnesi, bina düzeylerinden oluşan bir JSON dizisi içerir.

Özellik Türü Zorunlu Tanım
levelName Dize true Açıklayıcı düzey adı. Örneğin: Kat 1, Lobi, Mavi Otopark veya Bodrum Katı.
ordinal integer true Düzeylerin dikey sırasını belirler. Her tesisin sıralı 0 seviyesi olmalıdır.
heightAboveFacilityAnchor sayısal false Metre cinsinden yer işareti üzerindeki yükseklik düzeyi.
verticalExtent sayısal false Metre cinsinden seviyenin tabandan tavana yüksekliği (kalınlık).
filename Dize true Bir yapı düzeyi için CAD çiziminin dosya sistemi yolu. Binanın zip dosyasının köküne göre olmalıdır.

georeference

Özellik Türü Zorunlu Tanım
lat sayısal true Tesis çiziminin kaynağında derece enleminin ondalık gösterimi. Kaynak koordinatları WGS84 Web Mercator(EPSG:3857 içinde olmalıdır).
lon sayısal true Tesis çiziminin kaynağında derece boylamının ondalık gösterimi. Kaynak koordinatları WGS84 Web Mercator(EPSG:3857 içinde olmalıdır).
angle sayısal true Doğru kuzey ile çizimin dikey (Y) ekseni arasındaki derece cinsinden saat yönündeki açı.

dwgLayers

Özellik Türü Zorunlu Tanım
exterior dizeler dizisi true Dış yapı profilini tanımlayan katmanların adları.
unit dizeler dizisi false Birimleri tanımlayan katmanların adları.
wall dizeler dizisi false Duvarları tanımlayan katmanların adları.
door dizeler dizisi false Kapıları tanımlayan katmanların adları.
unitLabel dizeler dizisi false Birimlerin adlarını tanımlayan katmanların adları.
zone dizeler dizisi false Bölgeleri tanımlayan katmanların adları.
zoneLabel dizeler dizisi false Bölgelerin adlarını tanımlayan katmanların adları.

unitProperties

unitProperties nesnesi birim özelliklerinden oluşan bir JSON dizisi içerir.

Özellik Türü Zorunlu Tanım
unitName Dize true Bu unitProperty kayıtla ilişkilendirilecek birimin adı. Bu kayıt yalnızca katmanlarda bir etiket eşleştirmesi unitName bulunduğunda unitLabel geçerlidir.
categoryName Dize false Ünitenin amacı. Sağlanan işleme stillerinin kullanabildiği değerlerin listesi categories.json dosyasında belgelenmiştir.
occupants directoryInfo nesneleri dizisi false Birim için kişi listesi.
nameAlt Dize false Birimin alternatif adı.
nameSubtitle Dize false Ünitenin alt başlığı.
addressRoomNumber Dize false Birimin oda, birim, daire veya süit numarası.
verticalPenetrationCategory Dize false Bu özellik tanımlandığında, sonuçta elde edilen özellik birim yerine dikey penetrasyon (VRT) olur. Yukarıdaki veya altındaki düzeylerdeki diğer dikey penetrasyon özelliklerine gitmek için dikey penetrasyonları kullanabilirsiniz. Dikey penetrasyon bir Kategori adıdır. Bu özellik tanımlanmışsa, categoryName özelliği ile verticalPenetrationCategorygeçersiz kılınmış olur.
verticalPenetrationDirection Dize false Tanımlanmışsa verticalPenetrationCategory , isteğe bağlı olarak geçerli seyahat yönünü tanımlayın. İzin verilen değerler şunlardır: lowToHigh, highToLow, bothve closed. both varsayılan değerdir. Değer büyük/küçük harfe duyarlıdır.
nonPublic ikili false Birimin genel kullanıma açık olup olmadığını gösterir.
isRoutable ikili false Bu özellik olarak falseayarlandığında, birimine veya üzerinden geçemezsiniz. true varsayılan değerdir.
isOpenArea ikili false Gezinme aracısının üniteye bağlı bir açıklık gerekmeden üniteye girmesine izin verir. Varsayılan olarak, bu değer hiç açık olmayan birimler için ve false açıklıkları olan birimler için olarak ayarlanırtrue. Açık olmayan bir ünitede false el ile ayarın isOpenArea ayarlanması uyarıyla sonuçlanır, çünkü sonuçta elde edilen üniteye bir gezgin aracı tarafından ulaşılamaz.

zoneProperties

zoneProperties nesnesi, bölge özelliklerinin JSON dizisini içerir.

Özellik Türü Zorunlu Tanım
Bölgeadı Dize true Kayıtla zoneProperty ilişkilendirilecek bölgenin adı. Bu kayıt yalnızca bölge katmanında bir etiket eşleştirmesi zoneName bulunduğunda zoneLabel geçerlidir.
Categoryname Dize false Bölgenin amacı. Sağlanan işleme stillerinin kullanabildiği değerlerin listesi categories.json dosyasında belgelenmiştir.
zoneNameAlt Dize false Bölgenin alternatif adı.
zoneNameSubtitle Dize false Bölgenin alt başlığı.
zoneSetId Dize false Grup olarak sorgulanabilmeleri veya seçilebilmeleri için birden çok bölge arasında ilişki kurmak için kimlik ayarlayın. Örneğin, birden çok düzeye yayılan bölgeler.

Örnek çizim paketi bildirimi

Aşağıda, örnek çizim paketinin bildirim dosyası verilmiştir. Paketin tamamını indirmek için GitHub'da Azure Haritalar Creator için Örnek çizim paketine gidin.

Bildirim dosyası

{
    "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"
        }
    ]
}

Azure Haritalar Dönüştürme hizmetini kullanarak karşıya yüklenen çizim paketlerini harita verilerine dönüştürebilirsiniz. Bu makalede, Dönüştürme API'sine yönelik çizim paketi gereksinimleri açıklanmaktadır. Örnek paketi görüntülemek için örnek çizim paketi v2'yi indirebilirsiniz.

Çizim paketinizi hazırlama hakkında bir kılavuz için bkz . Çizim Paketi Kılavuzu.

Değişiklikler ve Düzeltmeler

  • Kullanıcı tanımlı özellik sınıfları için destek eklendi.
  • DWG katmanlarının basitleştirilmiş gereksinimleri.

Önkoşullar

Çizim paketi, Autodesk'in AutoCAD® yazılımı için yerel dosya biçimi olan DWG biçiminde kaydedilmiş çizimleri içerir.

Çizim paketindeki çizimleri üretmek için herhangi bir CAD yazılımı seçebilirsiniz.

Dönüştürme hizmeti çizim paketini harita verilerine dönüştürür. Dönüştürme hizmeti, AutoCAD DWG dosya biçimi AC1032 ile çalışır.

Terimler sözlüğü

Kolay başvuru için, bu makaleyi okurken önemli olan bazı terimler ve tanımlar aşağıda verilmiştir.

Süre Tanım
Katman Çizim dosyasından bir AutoCAD DWG katmanı.
Entity Çizim dosyasından bir AutoCAD DWG varlığı.
Xref AutoCAD DWG dosya biçiminde, birincil çizime dış başvuru olarak eklenmiş bir dosya.
Düzey Bir tesisin belirli bir yükseltideki alanı. Örneğin, bir tesisin katı.
Özellik Geometriyi meta veri bilgileriyle birleştiren Dönüştürme hizmetinden üretilen bir nesne örneği.
Özellik sınıfları Özellikler için ortak bir şema.

Çizim paketi yapısı

Çizim paketi, aşağıdaki dosyaları içeren bir ZIP arşividir:

  • AutoCAD DWG dosya biçiminde DWG dosyaları.
  • Çizim paketindeki DWG dosyalarını açıklayan bir manifest.json dosyası.

Çizim paketinin .zip uzantısıyla tek bir arşiv dosyasında sıkıştırılması gerekir. DWG dosyaları çizim paketinin içinde herhangi bir şekilde düzenlenebilir, ancak bildirim dosyasının kök dizinde olması gerekir. Sonraki bölümlerde hem DWG hem de bildirim dosyaları için dönüştürme işlemi ve gereksinimleri ve bu dosyaların içeriği açıklanmaktadır. Örnek paketi görüntülemek için örnek çizim paketi v2'yi indirebilirsiniz.

DWG dosya dönüştürme işlemi

Azure Haritalar Dönüştürme hizmeti, bir tesisin DWG dosyalarını bir tesisin özelliklerini ve özelliklerini temsil eden verileri eşlemek için dönüştürür.

Azure Haritalar Dönüştürme hizmeti aşağıdakileri oluşturur:

  • Tesis Özelliği: Bir tesisin tüm düzeylerinin ilişkili olduğu bir tesisin en üst düzey özelliği.
  • Düzey özellikleri: Bir tesisin her katı için bir Düzey özelliği oluşturulur. Bir düzeydeki tüm özellikler bir düzeyle ilişkilendirilir.
  • Kullanıcı tanımlı özellikler: DWG katmanları, kullanıcı tanımlı bir özellik sınıfına eşlenir ve özellik sınıfının örnekleri haline gelir.

DWG dosya gereksinimleri

Her DWG dosyası şu gereksinimlere uymalıdır:

  • DWG dosyası birden çok olanaktan özellik içeremez.
  • DWG dosyası birden çok düzeyden özellik içeremez. Örneğin, üç düzeyli bir tesisin çizim paketinde üç DWG dosyası vardır.
  • Tek bir düzeydeki tüm veriler tek bir DWG dosyasında yer almalıdır. Tüm dış başvurular (xrefs) üst çizime bağlı olmalıdır.
  • DWG dosyası, bu düzeyin sınırını temsil eden katmanları tanımlamalıdır.
  • DWG, çizim paketindeki diğer DWG dosyalarıyla aynı ölçüm sistemine ve ölçü birimine başvurmalıdır.
  • DWG dosyası aynı tesisten başka bir düzeye yığıldığında hizalanmalıdır.

DWG katmanı gereksinimleri

Özellik sınıfları

Kullanıcı tanımlı bir özellik sınıfına bir veya daha fazla DWG katmanı eşlenebilir. Özelliğin bir örneği eşlenen katmandaki bir varlıktan oluşturulur. Örneğin, DWG katmanları sandalye, masa ve kanepe mobilya adlı bir özellik sınıfına eşlenir. Tanımlanan katmanlardaki her varlık için bir mobilya özelliği oluşturulur. Ayrıca:

  • Tesisin farklı özellik türlerini temsil etmek için tüm katmanlar ayrılmalıdır.
  • Tüm varlıklar düzey çevre sınırları içinde olmalıdır.
  • Desteklenen AutoCAD varlık türleri: TEXT, MTEXT, POINT, ARC, CIRCLE, LINE, POLYLINE, ELLIPSE.

Özellik sınıfı özellikleri

Kapalı şeklin sınırları içinde kalan metin varlıkları, bu özellik ile bir özellik olarak ilişkilendirilebilir. Örneğin, bir oda özellik sınıfı, oda adını açıklayan bir metine ve başka bir oda türü örnek çizim paketi v2'ye sahip olabilir. Ayrıca:

  • Özellikle yalnızca METNEÇEVİr ve MTEXT varlıkları özellik olarak ilişkilendirilir. Diğer tüm varlık türleri yoksayılır.
  • METNEÇEVİr ve METNEÇEVİr gerekçe noktası, kapalı şeklin sınırları içinde olmalıdır.
  • Kapalı şeklin sınırları içinde birden fazla METNEÇEVİr özelliği varsa ve her ikisi de bir özelliğe eşlenmişse, biri rastgele seçilir.

Tesis düzeyi

Her düzeyin DWG dosyası, bu düzeyin çevresini tanımlamak için bir katman içermelidir. Örneğin, bir tesis iki düzey içeriyorsa, her biri bu düzeyin çevresini tanımlayan bir katmana sahip iki DWG dosyası olması gerekir.

Düzey çevre katmanında kaç varlık çizimi olursa olsun, sonuçta elde edilen tesis veri kümesi her DWG dosyası için yalnızca bir düzey özelliği içerir. Ayrıca:

  • Düzey çevreler POLYGON, POLYLINE (kapalı), DAIRE veya ELIPS (kapalı) olarak çizilmelidir.
  • Düzey çevreler çakışabilir ancak tek bir geometride çözülür.
  • Sonuçta elde edilen düzey özelliği en az 4 metrekare olmalıdır.
  • Sonuçta elde edilen düzey özelliği 400.000 metrekareden büyük olmamalıdır.

Katman birden çok çakışan POLYLINEs içeriyorsa, bunlar tek bir Düzey özelliğinde birleştirilir. Bunun yerine, katman birden çok örtüşemeyen POLYLINEs içeriyorsa, sonuçta elde edilen Düzey özelliğinin çok çokgen bir gösterimi vardır.

Örnek çizim paketi v2'de katman olarak GROS$ Düzey çevre katmanının bir örneğini görebilirsiniz.

Bildirim dosyası gereksinimleri

Çizim paketi kök düzeyinde bir bildirim dosyası içermeli ve dosya manifest.json olarak adlandırılmalıdır. Dönüştürme hizmetinin içeriklerini ayrıştırmasına olanak sağlayan DWG dosyalarını açıklar. Yalnızca bildirim tarafından tanımlanan dosyalar kullanılır. Çizim paketinde bulunan ancak bildirimde düzgün listelenmeyen dosyalar yoksayılır.

Bildirim dosyasının buildingLevels nesnesindeki dosya yolları, çizim paketinin köküne göre olmalıdır. DWG dosya adı, tesis düzeyinin adıyla tam olarak eşleşmelidir. Örneğin, "Bodrum" düzeyi için bir DWG dosyası Bodrum.dwg'dir. Düzey 2 için bir DWG dosyası level_2.dwg olarak adlandırılır. Dosya adları boşluk içeremez; boşlukları değiştirmek için alt çizgi kullanabilirsiniz.

Bildirim nesnelerini kullanırken gereksinimler olsa da, tüm nesneler gerekli değildir. Aşağıdaki tabloda 2023-03-01-preview Dönüştürme hizmeti için gerekli ve isteğe bağlı nesneler gösterilmektedir.

Dekont

Aksi belirtilmedikçe, tüm dize özellikleri bin karakterle sınırlıdır.

Bildirim JSON dosyası

Özellik Türü Zorunlu Açıklama
version Dize DOĞRU Bildirim şeması sürümü. Şu anda "2.0" sürümü
buildingLevels BuildingLevels nesnesi DOĞRU Tesisin düzeylerini ve düzeylerin tasarımını içeren dosyaları belirtir.
featureClasses featureClass nesnelerinin dizisi DOĞRU Katmanların DWG çizim dosyasından nasıl okunacağını tanımlayan özellik sınıfı nesnelerinin listesi.
georeference Georeference nesnesi FALSE Tesis çizimi için sayısal coğrafi bilgileri içerir.    
facilityName Dize FALSE Tesisin adı.

Sonraki bölümlerde her nesnenin gereksinimleri ayrıntılı olarak açıklanır.

buildingLevels

Özellik Türü Zorunlu Tanım
dwgLayers Dize dizisi DOĞRU Tesisin dış profilini tanımlayan katmanların adları.
levels Düzey nesne dizisi DOĞRU Düzey, bir DWG dosyasında tanımlanan tesisteki benzersiz bir katı, her düzeyin yüksekliğini ve göründükleri dikey sırayı ifade eder.

düzey

Özellik Türü Zorunlu Tanım
levelName Dize DOĞRU Düzeyin adı. Örneğin: Kat 1, Lobi, Mavi Otopark veya Bodrum Katı.
ordinal integer DOĞRU Düzeylerin dikey sırasını tanımlar. Tüm ordinal değerler bir tesis içinde benzersiz olmalıdır.
filename Dize DOĞRU Bir tesisteki düzeyi temsil eden DWG dosyasının yolu ve adı. Yol, çizim paketinin köküne göre olmalıdır. 
verticalExtent sayı FALSE Metre cinsinden seviyenin tabandan tavana dikey yüksekliği (kalınlık).

featureClass

Özellik Türü Zorunlu Tanım
dwgLayers Dize dizisi DOĞRU Özellik sınıfını tanımlayan her katmanın adı. Belirtilen katmandaki her varlık özellik sınıfının bir örneğine dönüştürülür. Bir dwgLayer özelliğin dönüştürüldüğü ad, bu özelliğin özelliği olarak biter.
featureClassName String DOĞRU Özellik sınıfının adı. Tipik örnekler oda, çalışma alanı veya duvardır.
featureClassProperties featureClassProperty nesnelerinin dizisi FALSE Özellik olarak özellik olarak ilişkili DWG dosyasındaki metin katmanlarını belirtir. Örneğin, oda numarası gibi bir boşluğun sınırları içinde yer alan bir etiket.

featureClassProperty

Özellik Türü Zorunlu Tanım
dwgLayers Dize dizisi DOĞRU Özellik sınıfı özelliğini tanımlayan her katmanın adı. Belirtilen katmandaki her varlık bir özelliğe dönüştürülür. Yalnızca DWG METNEÇEVİr ve MTEXT varlıkları özelliklere dönüştürülür. Diğer tüm varlıklar yoksayılır.
featureClassPropertyName String DOĞRU Özellik sınıfı özelliğinin adı( örneğin, spaceName veya spaceUseType).

georeference

Özellik Türü Zorunlu Tanım
lat sayı DOĞRU Tesis çiziminin kaynağında derece enleminin ondalık gösterimi. Kaynak koordinatları WGS84 Web Mercator'da (EPSG:3857) olmalıdır.
lon sayı DOĞRU Tesis çiziminin kaynağında derece boylamının ondalık gösterimi. Kaynak koordinatları WGS84 Web Mercator'da (EPSG:3857) olmalıdır.
angle sayı DOĞRU Doğru kuzey ile çizimin dikey (Y) ekseni arasındaki derece cinsinden saat yönündeki açı.

Örnek çizim paketi bildirimi

Bu örnekteki JSON, örnek çizim paketinin bildirim dosyasını gösterir. Paketin tamamını indirmek için GitHub'da Azure Haritalar Creator için örnek çizim paketi v2'ye gidin.

Bildirim dosyası

{
  "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"
}

Sonraki adımlar

Çizim paketinizi hazırlama kılavuzu için çizim paketi kılavuzuna bakın.

Daha fazla bilgi için: