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

Таблица программными средствами

Поиск  Пользователи  Правила  Войти
Форум » Linux » Средства разработки ГИС-приложений для Linux
Страницы: 1
RSS
Таблица программными средствами, Создание таблиц через MAPAPI
 
Добрый день.

Версия Гис Конструктор для Qt Designer(MAPAPIVERSION = 0x111015, MAPACCESSVERSION = 20130912).

Можно ли как-то программными средствами через MAPAPI создать таблицу на карте?
Если есть такая возможность, подскажите пожалуйста, как это сделать.

Спасибо.
 
Здравствуйте!

Для добавления в ГИС-приложение функционала отображения таблицы можно воспользоваться одним из следующих способов:

1. Реализовать создание и отображение таблицы с помощью Qt и отрисовывать ее поверх карты.
При этом MAPAPI будет ответственно только за отрисовку карты.

2. Добавить на карту точечный знак с типом отображения "Графический файл".
В этом случае Вы можете в качестве внешнего вида объекта указать графический файл с изображением таблицы.
Более подробно о нанесении на карту знака "Графический файл" можно посмотреть в данной ветке форума:
http://gisweb.ru/forum/messages/forum7/topic8968/message67006/8968-dobavlenie-na-kartu-sobstvennykh-izobrazheniy#message67006
 
Цитата
Александр Савелов написал:
1. Реализовать создание и отображение таблицы с помощью Qt и отрисовывать ее поверх карты. При этом MAPAPI будет ответственно только за отрисовку карты.
Здравствуйте. Спасибо за совет, Александр.
При первом способе непонятно как оставить эту информацию при обмене картой.
При втором способе при попытке распечать карту большого размера проявится пикселизация, если я все правильно понимаю?
 
Здравствуйте!

Цитата
Сергей написал:
При первом способе непонятно как оставить эту информацию при обмене картой.
Не совсем понял, что имеется в виду - таблица, реализованная с помощью Qt, может, например, заполняться из какой-то внешней базы данных или файла.
Цитата
Сергей написал:
При втором способе при попытке распечать карту большого размера проявится пикселизация, если я все правильно понимаю?
Да, качество будет зависеть от разрешения изображения.
 
Цитата
Александр Савелов написал:
Не совсем понял, что имеется в виду - таблица, реализованная с помощью Qt, может, например, заполняться из какой-то внешней базы данных или файла.
Я создал пользовательский слой с объектами и обстановкой. Хочу на него добавить таблицу с некоторыми данными.
Без таблицы стандартные пути передачи этой обстановки на другой компьютер, как понимаю следующие:
1. Передать на другой компьютер комплект sit+rsc файл;
2. Экспорт данных в формат sxf. Передача на другой компьютер комплекта sxf + rsc.

Не понимаю, как в указанные варианты включить данные таблицы, которые у меня есть в программе. Тогда, например, в ГИС "Операторе" на другом компьютере эти таблицы уже никак не отобразятся, если я их не передам каким-то стандартным способом.
 
Не знаю, как программно решается, но для "Оператора", как вариант - некая таблица XLS, добавленная явно через OLE. Или же - объект, в нем семантика ссылка на ту же таблицу... Тогда таблицу (файл XLS) также передавать вместе с "комплектом" данных.
 
Цитата
Vitaliy Belenkov написал:
Не знаю, как программно решается, но для "Оператора", как вариант - некая таблица XLS, добавленная явно через OLE. Или же - объект, в нем семантика ссылка на ту же таблицу... Тогда таблицу (файл XLS) также передавать вместе с "комплектом" данных.
Спасибо. Меня, к сожалению, больше интересует программная реализация под Астрой в частности.
 
Здравствуйте!

Прошу прощения за задержку с ответом.

Цитата
Сергей написал:
Не понимаю, как в указанные варианты включить данные таблицы, которые у меня есть в программе
В данном случае, если я все правильно понимаю, Вы используете вот этот предложенный подход:
Цитата
Александр Савелов написал:
1. Реализовать создание и отображение таблицы с помощью Qt и отрисовывать ее поверх карты. При этом MAPAPI будет ответственно только за отрисовку карты.
В данном случае, поскольку за отображение таблицы с помощью Qt ответственен код клиентского ГИС-приложения (без участия MAPAPI), то также в нем можно реализовать подгрузку таблицы с диска.
Таким образом, можно вместе с картой передавать таблицу в формате html, а потом в коде клиентского приложения считывать ее и отображать поверх карты.
 
Цитата
Александр Савелов написал:
Здравствуйте!

Прошу прощения за задержку с ответом.

Цитата
Сергей написал:
Не понимаю, как в указанные варианты включить данные таблицы, которые у меня есть в программе
В данном случае, если я все правильно понимаю, Вы используете вот этот предложенный подход:
Цитата
Александр Савелов написал:
1. Реализовать создание и отображение таблицы с помощью Qt и отрисовывать ее поверх карты. При этом MAPAPI будет ответственно только за отрисовку карты.
В данном случае, поскольку за отображение таблицы с помощью Qt ответственен код клиентского ГИС-приложения (без участия MAPAPI), то также в нем можно реализовать подгрузку таблицы с диска.
Таким образом, можно вместе с картой передавать таблицу в формате html, а потом в коде клиентского приложения считывать ее и отображать поверх карты.
Здравствуйте.
Нет, я примерно так сделал, но понимаю, что это неправильно, т.к. хочу под астрой как-то нарисовать таблицу на карте, используя MAPAPI, передать эту карту на компьютер, где нет моего софта, но есть ГИС "Оператор", например, и чтобы там эту таблицу могли посмотреть.

Плюс с подходом, отображать с помощью Qt, я не знаю, как например, нарисовать эту таблицу размером метр на метр, чтобы вывести ее на печать.
 

Цитата
Сергей написал:
Здравствуйте.Нет, я примерно так сделал, но понимаю, что это неправильно, т.к. хочу под астрой как-то нарисовать таблицу на карте, используя MAPAPI, передать эту карту на компьютер, где нет моего софта, но есть ГИС "Оператор", например, и чтобы там эту таблицу могли посмотреть.Плюс с подходом, отображать с помощью Qt, я не знаю, как например, нарисовать эту таблицу размером метр на метр, чтобы вывести ее на печать.
Под windows использовались структуры, но их потом еще менял, по-этому оптимальный вариант использовать отображение с прикреплением файла через iml библиотеку(2-ой способ).  
Код
typedef struct DOCFILEINFOMATION // 64-bytes

{

  long int StructSize; // Размер структуры sizeof(DOCINFOMATION)

  long int PartCount;  // Число вставленных документов

  long int Reserv[14];

}

  TDocFileInfo;



typedef struct PARTINFOMATION // 128-bytes

{

  long int StructSize; // Размер структуры sizeof(DOCINFOMATION)

  RECT     PartRect;   // Координаты вставленного документа (16)

  char     Name[64];   // Имя вставленного документа

  char     View;       // Флаг отображения OLE-документа (0/1)

  char     SizeMode[10];   // Режим размещения OLE-документа в окне OLE-документа  // 22/04/04

  char     Reserv[33];

}

  TPartInfo;



typedef struct BASESCHEMEINFOMATION // 64-bytes

{

  long int StructSize;    // Размер структуры sizeof(SCHEMEINFOMATION)

  long int CountScheme;   // Количество схем отображения встроенных документов

  long int CurrentScheme; // Текущая схема отображения встроенных документов(начиная с 1)

  long int Reserv[13];

}

  TBaseSchemeInfo;


typedef struct SCHEMEINFOMATION // 256-bytes

{

  long int StructSize;    // Размер структуры sizeof(SCHEMEINFOMATION)

  long int NumberScheme;  // Порядковый номер схемы отображения встроенных документов

  char     NameScheme[64];// Имя схемы отображения встроенных документов

  char     IndexView[128];// Массив флагов отображения встроенных документов(0/1)

  char     Reserv[56];

}

  TSchemeInfo;

Изменено: Максим Казаровец - 16.10.2019 09:00:40
Страницы: 1
Читают тему (гостей: 1)



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

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