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

как построить закругленную на углах полузону mapHalfZoneObject?

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
как построить закругленную на углах полузону mapHalfZoneObject?
 
Здравствуйте!

Строю полузону с помощью  mapHalfZoneObject? Но как сделать закругления на углах(см рисунок), чтоб ширина зоны на углу была такая же как вдоль стороны?
Снимок.PNG (84.13 КБ)
 
Реализация функции mapHalfZoneObject имеет вид:
Код
// Построение половины зоны вокруг объекта / подобъекта
// (справа от объекта по направлению цифрования)
// radius    - радиус создаваемой зоны (в метрах на местности)
// info - метрика объекта, по которому строится зона
// subject - номер подобъекта, вокруг которого строим зону
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapHalfZoneObject(double radius, HOBJ info, long int subject)
{
  if ((radius  < DELTANULL) || (info == 0) || (subject < 0)) 
    return 0;
  TMap *Map = ((TObjectInfo*) info)->Map;
  return mapZoneObjectEx(radius, info, subject, 0, 0.001 * Map->Scale(), 3., 1);
}
Она вызывает функцию mapZoneObjectEx с параметром form равным нулю (прямой угол). Если вызвать функцию mapZoneObjectEx с параметром 1, то угол будет закругленный.

Вызов функции Map->Scale() аналогичен вызову mapGetMapScale(HMAP hmap) или mapGetSiteScale(HMAP hMap, HSITE hSite);
 
Спасибо, помогло!
Страницы: 1
Читают тему (гостей: 1)



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

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