Добрый день. Имеется карта Мира соотношением сторон 5х6. Хотелось бы её "исказить" например в соотношение 2х3 или 1х2. Возможно ли это сделать средствами Вашей ГИС или каким-либо иным методом? 
|
Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты |
здесь вы можете ознакомиться с материалами форума до 08.06.2008 |
|
01.07.2010 13:57:09
Добрый день.
При работе с Вашими компонентами в среде С++Builder 6, у меня возникло некоторое затруднение, а именно: Мне необходимо определить габариты района пользовательской карты (sit), на котором нанесён набор из всего множества пользовательских объектов. Для выполнения этой задачи, у меня есть массив идентификаторов (HOBJ) пользовательских объектов из набора. Например: HOBJ UserObjs[10]; В описании Вашего интерфейса есть функция, вызов которой позволит определить необходимый регион: // Определить общие габариты объектов, соответствующие заданным // условиям // hMap - идентификатор открытой карты, // border - координаты прямоугольного участка под объектом. // Габариты рассчитываются в метрах // При ошибке возвращает ноль _MAPIMP long int _MAPAPI mapGetTotalSeekBorder(HMAP hMap, DFRAME * border); Как я понял, для работы этой функции, необходимо: 1. Создать контекст поиска объектов. Например, так: _MAPIMP HSELECT _MAPAPI mapCreateMapSelectContext(HMAP hmap); 2. Поместить в созданный контекст условия поиска и отбора объектов. Таким образом: // Установить условия поиска объекта по имени листа карты // и номеру объекта в карте. // hMap - идентификатор открытой карты, // listname - имя листа карты, // key - уникальный номер объекта в карте. // При ошибке возвращает ноль. _MAPIMP long int _MAPAPI mapSelectSeekSample(HMAP hMap,const char * listname, long int key); где listname будет означать имя моей пользовательской карты SiteName (в ней же один лист), а key будет меняться в цикле по элементам массива UserObjs. 3. Что делать далее – тёмный лес и, честно говоря, я запутался: создавать новый пустой объект, в него подавать условия поиска и для него рассчитывать габариты? Или сразу рассчитывать габариты? Прошу Вас прояснить данную ситуацию… |
|
|
|
|
01.09.2009 16:58:46
Доброго времени суток.
Хочу программным путём добавлять новые объекты в имеющийся классификатор. Объект создаю ф-ией mapAppendRscObject, на выходе из которой получаю порядковый номер объекта. Далее хочу задать вид объекта таким образом: TIMGDOT tid ; tid.Color = clRed; // Цвет линии tid.Thick = 5; // Толщинa tid.Dash = 3; // Длина штpиха tid.Blank = 6; // Длина пpобела TPAINTPARM tpp ; tpp.Image = IMG_DOT; tpp.Parm = (char*)&tid; tpp.Mode = R2_COPYPEN; NumObj = mapSetRscObjectImage(hRsc,NumObj,sizeof(TIMGDOT),IMG_DOT,(char*)&tid); и получаю вид объекта в классификаторе - прерывистая красная линия с параметрами толщина, длинна штриха и пробела равными 0. Пожалуйста, объясните где я ошибаюсь??? ЗЫ: Код в С++ Builder 6
Изменено:
Александр - 01.09.2009 17:19:53
|
|
|
|
| © КБ Панорама, 1991-2012 |