«PVSSLinkSumAlertToShape»

Соединяет точку данных групповых алармов с формой в средстве просмотра карт GIS.

Краткое описание

void PVSSLinkSumAlertToShape(string strDefinition);

Параметры

ПараметрыОписание
strDefinitionФорма, с которой будет связана точка данных «_SumAlertPanel», и имя этой точки данных. См. пример ниже.

Описание

Средство GIS Viewer может принимать состояния предупредительных сигналов от точек данных _SumAlertPanel и использовать их для изменения цвета соответствующих форм. Вызовите метод PVSSSetSumAlertPanels для загрузки списка точек данных _SumAlertPanel в средство GIS Viewer. Это должен быть список точек данных _SumAlertPanels, которые необходимо связать с формами в средстве просмотра карт GIS Viewer. Выполните команду запроса dpQuery() или, например, dpQueryConnectSingle для получения цветов предупредительных сигналов точек данных и передачи результата запроса в средство GIS Viewer путем вызова функции ‘PVSS_ReceiveSumAlertStatus’. Затем используйте функцию «PVSSLinkSumAlertToShape» для связи точки данных с формой.
IconПРИМЕР
 Нижеследующий код используется для передачи имен всех точек данныхSumAlertPanel в средство GIS Viewer, запроса цветов предупредительных сигналов этих точек и и отправки этих данныхв средство GIS Viewer при помощи функции PVSSReceiveSumAlertStatus. Код так же устанавливает связь формы «Austria» на слое «COUNTRY» с точкой данных PVSS_SumAlertPanel.При возникновении предупредительного сигнала, форма «Austria» начнет мигать.

main()

{

  dyn_string strDefinition;

  dyn_string color;

  // Пользователь может задать точки данных SumAlertPanel, которые должны «обрабатываться» в средстве GIS Viewer

  // ‘process’

  // На данном примере имена всех точек данных просто передаются

  // в средство просмотра карт GIS

  dyn_string strTest = dpNames(«*», «_SumAlertPanel»);

  GisViewer_ewo1.PVSSSetSumAlertPanels((string)strTest);  

  // Теперь можно создать «карту» связи формы

  // с определенной точкой данных _SumAlertPanel

  strDefinition = makeDynString(«COUNTRY@NAME@Austria@System1:Panel1_1»);

  //                              ^^ Слой

  //                                      ^^ Поле

  //                                           ^^ Значение поля

  //                                                   ^^ Имя точки данных _SumAlertPanel

  GisViewer_ewo1.PVSSLinkSumAlertToShape(strDefinition);  

  // Теперь создадим запрос, который отправит цвета предупредительных сигналов

  // точек данных _SumAlertPanel в средство GisViewer 

  string strQuery = «SELECT ‘.Warning:_alert_hdl.._act_state_color’, ‘.Alert:_alert_hdl.._act_state_color’, ‘.Danger:_alert_hdl.._act_state_color’ FROM ‘*’ WHERE(_DPT = \»_SumAlertPanel\»)»;

  dpQueryConnectSingle(«CallBackSumAlertPanel», «MyId», strQuery);

}

 void CallBackSumAlertPanel(string strID, dyn_dyn_anytype a)

{

  string strLine;

  string strOneLine;

  // Преобразуем полученный формат dyn_dyn_anytype в более удобный тип

  // чтобы средство GIS Viewer могло его использовать

  for(int t = 2; t <= dynlen(a); t++)

  {

    if(t > 2)

      strLine += «|»;

    // Средство GIS Viewer получает список, где каждая строка выглядит так:

    //    <dp>,<warning color>,<alert color>,<danger color>

    strOneLine = a[t][1] + «,» + a[t][2] + «,» + a[t][3] + «,» + a[t][4];

    strLine += strOneLine;

  }

  // Передача (форматированных) точек данных и цветов в средство GIS Viewer

  GisViewer_ewo1.PVSSReceiveSumAlertStatus(strLine);  

  DebugN(«status of the sum alert panel data points:»,strLine);

}

Используется для объекта:

Средство просмотра карты геоинформационной системы (GIS)

См. также

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *