На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

Кластеризация

Поиск  Пользователи  Правила  Войти
Форум » Серверные приложения » GIS WebServer
Страницы: 1 2 След.
RSS
Кластеризация
 
Добрый день!
Расскажите про кластеризацию объектов, как это работает и как выглядит на карте? Руководство посмотрел, но там кратко описано.
 
Данный компонент разрабатывался как демонстрационный. Он группирует объекты располагающиеся рядом с друг другом. Для работы компонента необходим скрипт, который будет передавать список объектов в формате geojson. Ознакомиться с примером работы можно, включив в настройках проекта компонент "Кластеризованные данные".
Пример geojson, который внешний скрипт передает в компонент:
Код
{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "properties": {
                "name": "M-60, RUS-Russia",
                "sym": ""
            },
            "geometry": {
                "type": "Point",
                "coordinates": [
                    44.45775,
                    48.72925
                ]
            }
        },
        {
            "type": "Feature",
            "properties": {
                "name": "M-60, RUS-Russia",
                "sym": ""
            },
            "geometry": {
                "type": "Point",
                "coordinates": [
                    65.37148,
                    55.43164
                ]
            }
        }
     ]
}
 
Здравствуйте!

Еще вопросы по кластеризации:
- в руководстве по вебсерверу на рисунке 84 в параметре Имя файла объектов указаны 2 json файла. Т.е. можно использовать разные файлы?
- можно привести пример скрипта. Он должен принимать какие то параметры? например имя файла
 
Здравствуйте!

Одновременно для кластеризации используется один файл, указанный в параметрах элемента управления GWTK.ClusterControl.
На сервере Вы можете разместить несколько файлов и использовать необходимый. На рисунке 84 имя второго файла содержится
в комментарии.
Пример запроса файла объектов из JS:
              $.ajax({
                   url: this._options.url,
                   type: "POST",
                   data: { "request": "Markers", "name": "", "path":  this._options.json },
                   dataType: "json",
                   success: function (data) { ....// обработка данных файла  },
                   error: function ( e ) { console.log( e.message ); }
            });

Пример PHP-скрипта страницы http://gisserver.info/geojson/GeoJSON.php

  var $Request = null,
   $Folderpath=null,
   $Name = null,
   $Params=null;
   
   function getParam() {
       
       if ($_SERVER['REQUEST_METHOD'] == "GET") {
           $this->Params=$_GET;
       }
       else
       {  //если не GET-запрос, то пробуем POST
           if ($_SERVER['REQUEST_METHOD'] != "POST")
               return;
           $this->Params=$_POST;
       }

       foreach($this->Params as $key=>$val){
           $key=strtolower($key);
           switch($key)
           {
               case "request":
                   $this->Request = $val;
                   break;
               case "path":
                   $this->SetSlashOfPath();
                   $val = str_replace(array("\\","/"),$this->SlashOfPath,$val);  
                   $this->Folderpath = $val;
                   break;
               case "name":
                $this->Name = $val;
                break;
           }
       }
       return;
   }
   
   function readFile() {
       $this->SetSlashOfPath();
       // обращаемся к пути, забираем файл
       $this->dirout = getcwd();
       $openedFile =file_get_contents($this->dirout.$this->Folderpath);
       $this->openedFile=$openedFile;
       return $this->openedFile;
   }

Полный текст страницы GeoJSON.php  отправим по почте.
 
Спасибо, получилось, данные отображаются.
Вопрос: информация по маркерам при наведении мыши или кликом должна отображаться?
 
Ольга Нефедьева, скиньте пожалуйста Полный текст страницы GeoJSON.php на a.kanivets@mycrg.ru
Изменено: Александр Канивец - 11.10.2018 10:54:00
 
Здравствуйте, Александр!

Ссылка для скачивания отправили по почте .
Изменено: Ольга Нефедьева - 11.10.2018 11:10:32
 
Ольга Нефедьева,Спасибо!
 
Здравствуйте!

В Панорама-Редакторе можно настроить кластеризацию объектов карты с отображением таких карт в настольном и Web приложениях.
Если у пользователя в карте в одной точке расположено несколько  объектов, то такой кластер не распадается на объекты, но в  Панораме-Редакторе с
такими объектами работать можно (редактировать семантику перебирая  объекты), а вот в Web приложении получить информацию или отредактировать
такие объекты нельзя. Поэтому для отображения на Webe объектов с  кластеризацией, (с учетом еще и того, что в Панораме-Редакторе версии 12  карты с кластеризацией
отображаются без нее) получается нужно использовать компонент "Кластеризованные данные" самого Web приложения.
Как написано в руководстве оператора GISWebServerSЕ:
"Для включения режима необходимо нажать кнопку «Отобразить кластеризованные данные", в руководстве системного программиста:
"Для использования режима кластеризованных данных необходимо:
1) Указать адрес php-скрипта, который будет возвращать json-объект с  метрикой и настройками. Адрес указывается в поле URLскрипта.
2) Указать имя файла, содержащего параметры объектов в формате geoJSON.Имя файла указывается в поле Имя файла объектов."
Оказывается, что для работы компонента нужен скрипт, которого нет и который работает с только с одним файлом geojson, т.е. значит с картой, данные которой менять не предполагается,
т.к. каждый раз получать из изменяемой карты файл geojson для отображения ну как то не правильно.
Потенциальный покупатель программного продукта делает выбор исходя еще и из наличия необходимого ему инструментария в продукте.
В старой версии РГИС РО обычный пользователь мог включить кластеризацию,  здесь даже администратору стандартными средствами это не сделать.
О том, что есть средства разработчика и можно реализовать самому стандартную для любого ГИС продукта функцию я знаю, но это не выход.
Помогите решить вопрос с кластеризацией данных.
 
Цитата
Andrey Korolev написал:
Здравствуйте!

В Панорама-Редакторе можно настроить кластеризацию объектов карты с отображением таких карт в настольном и Web приложениях.
Если у пользователя в карте в одной точке расположено несколько  объектов, то такой кластер не распадается на объекты, но в  Панораме-Редакторе с
такими объектами работать можно (редактировать семантику перебирая  объекты), а вот в Web приложении получить информацию или отредактировать
такие объекты нельзя. Поэтому для отображения на Webe объектов с  кластеризацией, (с учетом еще и того, что в Панораме-Редакторе версии 12  карты с кластеризацией
отображаются без нее) получается нужно использовать компонент "Кластеризованные данные" самого Web приложения.
Как написано в руководстве оператора GISWebServerSЕ:
"Для включения режима необходимо нажать кнопку «Отобразить кластеризованные данные", в руководстве системного программиста:
"Для использования режима кластеризованных данных необходимо:
1) Указать адрес php-скрипта, который будет возвращать json-объект с  метрикой и настройками. Адрес указывается в поле URLскрипта.
2) Указать имя файла, содержащего параметры объектов в формате geoJSON.Имя файла указывается в поле Имя файла объектов."
Оказывается, что для работы компонента нужен скрипт, которого нет и который работает с только с   одним   файлом geojson, т.е. значит с картой, данные которой менять не предполагается,
т.к. каждый раз получать из изменяемой карты файл geojson для отображения ну как то не правильно.
Потенциальный покупатель программного продукта делает выбор исходя еще и из наличия необходимого ему инструментария в продукте.
В старой версии РГИС РО обычный пользователь мог включить кластеризацию,  здесь даже администратору стандартными средствами это не сделать.
О том, что есть средства разработчика и можно реализовать самому  стандартную  для любого ГИС продукта функцию я знаю, но это не выход.
Помогите решить вопрос с кластеризацией данных.
Настроенную а Панораме карту с кластеризацией объектов необходимо опубликовать на сервисе GIS Webservice SE и использовать в GIS WebServer SE как WMS-слой. В этом случае все коррктировки объектов в карте будут отображаться в Web. Использовать компонент Кластеризатор GIS WebServer SE не требуется.
Страницы: 1 2 След.
Читают тему (гостей: 1)



© КБ Панорама, 1991-2020

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности