Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Albert
Зарегистрирован: 03.03.2008 Сообщения: 13
|
Добавлено: Пн Мар 10, 2008 4:57 pm Заголовок сообщения: Как определить имеется ли у полигона "Окно" |
|
|
Имеем полигон.. Внутри этого полигона есть пустое "окно"
Как средствами MapBASIC'а определить координаты вершин этого окна |
|
Вернуться к началу |
|
|
Андрей Могильный
Зарегистрирован: 21.03.2006 Сообщения: 864
|
Добавлено: Вт Мар 11, 2008 2:17 pm Заголовок сообщения: |
|
|
"Дырявый" регион что-ли? Такие регионы состоят из 2 полигонов. Координаты второго полигона и есть координаты "дырки" |
|
Вернуться к началу |
|
|
Albert
Зарегистрирован: 03.03.2008 Сообщения: 13
|
Добавлено: Вт Мар 11, 2008 5:36 pm Заголовок сообщения: |
|
|
Отлично.. Спасибо |
|
Вернуться к началу |
|
|
Albert
Зарегистрирован: 03.03.2008 Сообщения: 13
|
Добавлено: Вт Мар 11, 2008 5:41 pm Заголовок сообщения: |
|
|
Значит сделал так
При помощи ObjectInfo(new_obj, OBJ_INFO_NPOLYGONS) узнал количество полигонов,
А при помощи ObjectInfo(new_obj, OBJ_INFO_NPOLYGONS+i) получил поличество вершин в заданном полигоне
А потом при помощи ObjectNodeX(new_obj, i, n) и ObjectNodeY(new_obj, i, n) обошел все полигоны в двойном цикле где i цикл полигонов, а n цикл вершин |
|
Вернуться к началу |
|
|
FedorinoFF
Зарегистрирован: 01.02.2007 Сообщения: 272 Откуда: Санкт-Петербург
|
Добавлено: Ср Июн 25, 2008 2:48 pm Заголовок сообщения: |
|
|
К сожалению, замечены случаи, когда "дырка" была первым полигоном.... Был несколько расстроен :-)
Последний раз редактировалось: FedorinoFF (Пн Июн 30, 2008 1:00 pm), всего редактировалось 1 раз |
|
Вернуться к началу |
|
|
Albert
Зарегистрирован: 03.03.2008 Сообщения: 13
|
Добавлено: Ср Июн 25, 2008 2:54 pm Заголовок сообщения: |
|
|
Спасибо... буду следить за подобной ситуацией.. А есть способ определить что это дырка? Я так думаю только при помощи сравнения площадей полигонов. Полигон с наибольшей площадью и является основным.. Или еще как возможно? |
|
Вернуться к началу |
|
|
Jim Jam
Зарегистрирован: 30.07.2008 Сообщения: 6
|
Добавлено: Ср Июл 30, 2008 9:57 pm Заголовок сообщения: |
|
|
Если полигон "Entirely Within" - он и дырка :) |
|
Вернуться к началу |
|
|
FedorinoFF
Зарегистрирован: 01.02.2007 Сообщения: 272 Откуда: Санкт-Петербург
|
Добавлено: Сб Авг 02, 2008 2:26 pm Заголовок сообщения: |
|
|
а как насчет кружок в бублике? в это случае кружок совсем не "дырка", хотя он entirely within... ;-) |
|
Вернуться к началу |
|
|
Jim Jam
Зарегистрирован: 30.07.2008 Сообщения: 6
|
Добавлено: Сб Авг 02, 2008 8:08 pm Заголовок сообщения: |
|
|
Не понял... По-моему, кружок в бублике - как раз и есть классический вариант дырки.
Я имею в виду, как тут было сказано, дырявый регион состоит из нескольких полигонов, минимум из двух. Чтобы определить, какой из них основной, а какой дырка, предлагаю использовать "Entirely within".
Сравнение площадей тут не поможет, поскольку полигоны могут вообще не пересекаться, соответственно, дыркой в этом случае ни один являться не будет. |
|
Вернуться к началу |
|
|
|