AutoGRAPH.NET Service GetGeoFences — различия между версиями

Материал из TK
Перейти к: навигация, поиск
(Новая страница: «Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)»)
 
 
(не показано 8 промежуточных версий 1 участника)
Строка 1: Строка 1:
 
Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)
 
Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)
  +
  +
== JSON ==
  +
Вызов:<pre>http://localhost/ServiceJSON/GetGeofences?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef1022&IDs=c39410d2-db39-439f-9110-f59e70daa5a8,63dd6102-dfb2-4fe4-9962-5f05adda0551,312050df-4c41-4d0b-ad33-eb6b83838fae
  +
</pre>
  +
  +
Результат: [[Media:GetGeofences-result.json.txt|скачать файл]]
  +
  +
[[File:AutoGRAPHNET Service GetGeofences.png|RTENOTITLE]]
  +
  +
== WCF ==
  +
  +
Определение:
  +
<pre>Dictionary<Guid, RGeoFence> GetGeofences(string schemaID, Guid[] IDs)</pre>
  +
  +
*если ID принадлежит группе - возвращаются ВСЕ её вложенные геозоны с полной иерархией всех нижевложенных групп, сами группы&nbsp;в результирующий набор не попадает
  +
*если ID принадлежит элементу - возвращается информация по нему. Допускается смешивание ID элементов разных типов (групп и элементов) в одном запросе.
  +
  +
Результат:
  +
<pre>public class RGeoFence
  +
{
  +
public Guid ID { get; set; } // ID геозоны
  +
public Guid? ParentID { get; set; } // ID родительской группы
  +
public string Name { get; set; } // название геозоны
  +
public string ImageName { get; set; } // имя файла изображения
  +
  +
&nbsp; public int Fill { get; set; } // RGBA цвет заливки
  +
&nbsp; public int Line { get; set; } // RGBA цвет линии
  +
public bool IsPolygon { get; set; } // true, если полигон; false, если точка
  +
public double R { get; set; } // радиус точки в метрах. Для полигонов всегда 0
  +
public double[] Lat { get; set; } // массив широт точек
  +
public double[] Lng { get; set; } // массив долгот точек
  +
  +
public RGeoFenceHole[] Holes { get; set; } // вырезы в геозоне. Если NULL - вырезов в геозоне нет.
  +
}
  +
  +
public class RGeoFenceHole
  +
{
  +
&nbsp; &nbsp; public double[] Lat { get; set; } // массив широт
  +
&nbsp; &nbsp; public double[] Lng { get; set; } // массив долгот
  +
}
  +
  +
</pre>
  +
  +
*количество широт и долгот всегда равно
  +
*если IsPolygon==true - массив Lat/Lng содержит три или более элементов. Если IsPolygon==false - массив содержит один элемент.
  +
*Fill и Color хранят RGBA значение цвета

Текущая версия на 10:08, 18 июня 2020

Возвращает информацию о геозонах (списки точки для полигонов, радиус точки, название, ....)

JSON

Вызов:

http://localhost/ServiceJSON/GetGeofences?session=B05043B71F4B9C67C910163779FFF06EDBBAEF994B2D6C3A84DD96EB767A0F44&schemaID=b4b68be6-a124-4ca3-ab02-589e7c2ef1022&IDs=c39410d2-db39-439f-9110-f59e70daa5a8,63dd6102-dfb2-4fe4-9962-5f05adda0551,312050df-4c41-4d0b-ad33-eb6b83838fae

Результат: скачать файл

RTENOTITLE

WCF

Определение:

Dictionary<Guid, RGeoFence> GetGeofences(string schemaID, Guid[] IDs)
  • если ID принадлежит группе - возвращаются ВСЕ её вложенные геозоны с полной иерархией всех нижевложенных групп, сами группы в результирующий набор не попадает
  • если ID принадлежит элементу - возвращается информация по нему. Допускается смешивание ID элементов разных типов (групп и элементов) в одном запросе.

Результат:

public class RGeoFence
{
   public Guid ID { get; set; }           // ID геозоны
   public Guid? ParentID { get; set; }    // ID родительской группы
   public string Name { get; set; }       // название геозоны
   public string ImageName { get; set; }  // имя файла изображения

   public int Fill { get; set; }          // RGBA цвет заливки
   public int Line { get; set; }          // RGBA цвет линии
   public bool IsPolygon { get; set; }    // true, если полигон; false, если точка
   public double R { get; set; }          // радиус точки в метрах. Для полигонов всегда 0
   public double[] Lat { get; set; }      // массив широт точек
   public double[] Lng { get; set; }      // массив долгот точек

   public RGeoFenceHole[] Holes { get; set; } // вырезы в геозоне. Если NULL - вырезов в геозоне нет.
}

public class RGeoFenceHole
{
    public double[] Lat { get; set; } // массив широт
    public double[] Lng { get; set; } // массив долгот
}

  • количество широт и долгот всегда равно
  • если IsPolygon==true - массив Lat/Lng содержит три или более элементов. Если IsPolygon==false - массив содержит один элемент.
  • Fill и Color хранят RGBA значение цвета