هندسة GeoJSON الموسّعة

يوفر Azure Maps قائمة بواجهات برمجة التطبيقات القوية للبحث داخل الميزات الجغرافية وعلى طولها. تلتزم واجهات برمجة التطبيقات هذه بمواصفات GeoJSON القياسية لتمثيل المعالم الجغرافية.

تدعم مواصفات GeoJSON الأشكال الهندسية التالية فقط:

  • GeometryCollection
  • LineString
  • MultiLineString
  • MultiPoint
  • MultiPolygon
  • نقطة
  • Polygon

تقبل بعض واجهات برمجة التطبيقات Azure Maps الأشكال الهندسية التي ليست جزءاً من مواصفات GeoJSON. على سبيل المثال، تقبل واجهة برمجة تطبيقات البحث في هندسة أشكال الدائرة والمضلعات.

توفر هذه المقالة شرحاً مفصلاً حول كيفية توسيع Azure Maps لمواصفات GeoJSON لتمثيل أشكال هندسية معينة.

دائرة

لا تدعم Circle مواصفات GeoJSON الهندسة. GeoJSON Point Feature يتم استخدام الكائن لتمثيل دائرة.

يجب أن تحتوي Circle الهندسة الممثلة باستخدام GeoJSON Feature الكائن على الإحداثيات والخصائص التالية:

تنسيق الخاصية
توسيط يتم تمثيل مركز الدائرة باستخدام الكائن GeoJSON Point.
نصف القطر يتم تمثيل radius الدائرة باستخدام خصائص GeoJSON Feature. قيمة نصف القطر بـ متر ويجب أن تكون من النوع double.
النوع الفرعي يجب أن تحتوي هندسة الدائرة أيضاً على الخاصية subType. يجب أن تكون هذه الخاصية جزءاً من خصائص GeoJSON Feature ويجب أن تكون قيمتها دائرة

مثال الدائرة

إليك كيفية تمثيل دائرة باستخدام كائن GeoJSON Feature . لنوسِّط الدائرة عند خط العرض: 47.639754 وخط الطول: -122.126986، ونعين لها نصف قطر يساوي 100 متر:

{
    "type": "Feature",
    "geometry": {
        "type": "Point",
        "coordinates": [-122.126986, 47.639754]
    },
    "properties": {
        "subType": "Circle",
        "radius": 100
    }
}          

مستطيل

لا تدعم Rectangle مواصفات GeoJSON الهندسة. GeoJSON Polygon Feature يتم استخدام الكائن لتمثيل مستطيل. يتم استخدام ملحق المستطيل بشكلٍ أساسي بواسطة وحدة أدوات الرسم الخاصة بـ Web SDK.

يجب أن تحتوي Rectangle الهندسة الممثلة باستخدام GeoJSON Polygon Feature الكائن على الإحداثيات والخصائص التالية:

تنسيق الخاصية
الزوايا يتم تمثيل زوايا المستطيل باستخدام إحداثيات الكائن GeoJSON Polygon. يجب أن يكون هناك خمسة إحداثيات، واحد لكل زاوية. وإحداثيات خامسة هي نفس الإحداثيات الأولى لإغلاق حلقة المضلع. من المفترض أن هذه الإحداثيات تتماشى، وأن المطور قد يقوم بتدويرها كما هو مطلوب.
النوع الفرعي يجب أن تحتوي هندسة المستطيل أيضاً على الخاصية subType. يجب أن تكون هذه الخاصية جزءا من GeoJSON Featureخصائص ، ويجب أن تكون قيمتها مستطيلة.

مثال المستطيل

{
    "type": "Feature",
    "geometry": {
        "type": "Polygon",
        "coordinates": [[[5,25],[14,25],[14,29],[5,29],[5,25]]]
    },
    "properties": {
        "subType": "Rectangle"
    }
}

الخطوات التالية

تعرف على المزيد حول بيانات GeoJSON في Azure Maps:

راجع مسرد المصطلحات التقنية الشائعة المرتبطة بـ Azure Maps وتطبيقات ذكاء الموقع: