www.map-info.ru :: Просмотр темы - Как получить информацию о полигоне?
                               РќР° главную страницу сайта

 
                                
ВходВход    РегистрацияРегистрация    ПрофильПрофиль    ПользователиПользователи    ГруппыГруппы    FAQFAQ    ПоискПоиск  

 
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Предыдущая тема :: Следующая тема  
Автор Сообщение
agentbond007



Зарегистрирован: 08.12.2009
Сообщения: 56

СообщениеДобавлено: Чт Июн 09, 2011 9:19 am    Заголовок сообщения: Как получить информацию о полигоне? Добавить ответ со ссылкой на данный текст

Здравствуйте!
Подскажите пожалуйста, есть ли в MapBasic`e функции для получения информации о полигоне?
Дано: Полигон
Найти:
Длины сторон и внутренние углы между ними?
Координаты вершин я нашёл при помощи комманд ObjectNodeX, ObjectNodeY, но как получить все остальное незнаю. Idea
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Чт Июн 09, 2011 3:28 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Нет таких функций. Все рассчитывайте самостоятельно по координатам.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
agentbond007



Зарегистрирован: 08.12.2009
Сообщения: 56

СообщениеДобавлено: Вс Июн 12, 2011 2:37 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Работаю в проекции Гаусса-Крюгера, расчитываю по координатам, длины сторон получаются с погрешностью + 0.2 / + 0.4 %:
- длинна линии по Y стороне = 100.0, а по расчётам 100.2
- длинна линии по X стороне = 100.0, а по расчётам 100.4
Хотя MapInfo показывает инструментом линейка что длинна = 100.0
Формулы такие:
dX := (X2-X1);
dY := (Y2-Y1);
AB := sqrt(dX*dX+dY*dY);
Может подскажите как побороть расхождение? Question
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
agentbond007



Зарегистрирован: 08.12.2009
Сообщения: 56

СообщениеДобавлено: Пн Июн 13, 2011 4:41 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Причём стандартная функция CartesianDistance ( x1 , y1 , x2 , y2 , unit_name ) даёт такой же результат с погрешностью.
А функция Distance ( x1 , y1 , x2 , y2 , unit_name ) по точнее..
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arhara



Зарегистрирован: 18.02.2009
Сообщения: 400
Откуда: Moscow, RF

СообщениеДобавлено: Вт Июн 14, 2011 12:40 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

теперь осталось показать нам формулу сферических углов и сравнить ее с углами на плоскости. Very Happy
---
погрешности в 0,2% великоваты для правильно заданных проекции гаусса-крюгера, а погрешность в 0,4% вообще ни в какие ворота на 100 метрах не лезет.
---
кроме того мапинфо будет вас обманывать в любой визуализации данных с плавающей точкой, т.к. ВСЕГДА выводит на экран округленные данные. точный результат выводит только экспорт в MIF/MID, и принудительный вывод всех знаков после запятой командой Format$.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Top.Mail.Ru