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

Границы карты и взаимная видимость

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
Границы карты и взаимная видимость
 
Здравствуйте! Есть 2 вопроса.
1. Дана карта .map . Как узнать её границы по широте и долготе в метрах?
2. Необходимо определить взаимную видимость 2-х точек. Есть ли функция, позволяющая сделать это без построения зоны видимости?
Используется Visual Studio 2010, C#.
Заранее спасибо.
 
1. можете запросить паспортные данные карты с помощью api-функции:  
 // Запросить паспортные данные векторной карты
 // Структуры MAPREGISTER и LISTREGISTER описаны в mapcreat.h
 // hmap - идентификатор открытых данных
 // sheetnumber - номер листа карты для
 // которого запрашиваются паспортные данные
 // При ошибке возвращает ноль

function  mapGetMapInfo(Map : HMap; sheetnumber: integer;
  var MapReg : TMAPREGISTER;
                        var Sheet:  TLISTREGISTER) : integer;
{$IFNDEF LINUXAPI} stdcall {$ELSE} cdecl {$ENDIF}
external sGisAcces;
function  mapGetMapInfoEx(Map : HMap; sheetnumber: integer;   //15/09/03
                          var MapReg : TMAPREGISTEREX;
                          var Sheet:  TLISTREGISTER) : integer;
{$IFNDEF LINUXAPI} stdcall {$ELSE} cdecl {$ENDIF}
external sGisAcces;

В TLISTREGISTER есть прямоугольные координаты листа в метрах, а также геодезические координаты листа в радианах.


2. Воспользуйтесь api-функцией:

// Определение видимости из точки point1 (координаты в метрах на местности) точку point2
// deltaheight  - высота наблюдения (в метрах);
// добавляется к высоте в точке point1
// Вычисление производится при наличии открытой матрицы высот
// Возвращает 0 - point2 не видна из point1                     // 12/04/06
//            1 - point2 видна из point1

function  mapVisibilityFromPoint(Map : HMap; point1,point2 : PDoublePoint; deltaheight : double) : integer;
{$IFNDEF LINUXAPI} stdcall {$ELSE} cdecl {$ENDIF}
external sGisAcces
Страницы: 1
Читают тему (гостей: 1)



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

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