Как разделить площадные и линейные объекты

MapInfo, MapBasic
Ответить
geod_14
Участник
Сообщения: 50
Зарегистрирован: 27 мар 2014, 16:42
Репутация: 4

Как разделить площадные и линейные объекты

Сообщение geod_14 » 17 ноя 2014, 13:33

Подскажите, как в MapInfo разделить геометрию (линейные и площадные объекты) , если в таблице атрибутов не указано какой объект есть площадным, а какой линейным....
Заранее спасибо)
Последний раз редактировалось geod_14 05 дек 2014, 17:27, всего редактировалось 1 раз.

Sibit
Активный участник
Сообщения: 216
Зарегистрирован: 21 окт 2009, 13:29
Репутация: 28
Откуда: Новосибирск

Re: Как разделить площадные и линейные объекты

Сообщение Sibit » 17 ноя 2014, 13:43

Что бы выбрать полигоны, в условие ставите Str$(Obj) = "Region", полилинии - "Polyline"

geod_14
Участник
Сообщения: 50
Зарегистрирован: 27 мар 2014, 16:42
Репутация: 4

Re: Как разделить площадные и линейные объекты

Сообщение geod_14 » 17 ноя 2014, 13:47

Спасибо!!!

Старый Йети
Активный участник
Сообщения: 170
Зарегистрирован: 06 дек 2011, 07:21
Репутация: 19
Откуда: г. Ухта, республика Коми

Re: Как разделить площадные и линейные объекты

Сообщение Старый Йети » 17 ноя 2014, 17:08

Есть еще способ...
1. Добавить поле Area (вещественное)
2. Обновить сию колонку (просчитать площадь)
3. Сделать запрос >0 (или =0 что требуется)
4. удалить/перенести все выделенные объекты в новую таблицу/присвоить индекс выделенным объектам.
5. Удалить колонку Area
Как-то так без использования MapBasic'a
:)
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети

geod_14
Участник
Сообщения: 50
Зарегистрирован: 27 мар 2014, 16:42
Репутация: 4

Re: Как разделить площадные и линейные объекты

Сообщение geod_14 » 17 ноя 2014, 17:32

Спасибо!Когда есть много вариантов- это прекрасно!)

Sibit
Активный участник
Сообщения: 216
Зарегистрирован: 21 окт 2009, 13:29
Репутация: 28
Откуда: Новосибирск

Re: Как разделить площадные и линейные объекты

Сообщение Sibit » 17 ноя 2014, 19:28

Старый Йети писал(а):Есть еще способ...
Вы сейчас научите... :D Что мешает, в поле запроса просто ввести Area(Obj,"hectare") > 0 ? Хотя, кто сможет таким образом отличить Line от Polyline, получит печеньку.

PS И не надо бояться MapBasic-а :) (особенно когда его нет)

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Как разделить площадные и линейные объекты

Сообщение Boris » 19 ноя 2014, 02:46

Sibit писал(а):
Старый Йети писал(а):Есть еще способ...
Вы сейчас научите... :D Что мешает, в поле запроса просто ввести Area(Obj,"hectare") > 0 ? Хотя, кто сможет таким образом отличить Line от Polyline, получит печеньку.

PS И не надо бояться MapBasic-а :) (особенно когда его нет)
На мой вкус мешает то, что любое вычисление площади, а особенно на сфере, в разы дольше, чем вычисление атрибута "что есть сей объект?".
Кроме того, разве автор спрашивал, как отделить "Line от Polyline"? Это совершенно другая задача.

Старый Йети
Активный участник
Сообщения: 170
Зарегистрирован: 06 дек 2011, 07:21
Репутация: 19
Откуда: г. Ухта, республика Коми

Re: Как разделить площадные и линейные объекты

Сообщение Старый Йети » 19 ноя 2014, 08:12

Старый Йети писал(а):Есть еще способ...
:)
Sibit писал(а):
Старый Йети писал(а):Есть еще способ...
Вы сейчас научите... :D
Это тут здесь, не закидывайте гнилыми помидорами старого...
Все способы хороши, что не ведут в ад...
пошагово расписано, дабы каждую запятую понятно было. Начинать надоть с малого.
Человек представлять должен хуизху...
Удачи и доброго утра! :)
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети

Sibit
Активный участник
Сообщения: 216
Зарегистрирован: 21 окт 2009, 13:29
Репутация: 28
Откуда: Новосибирск

Re: Как разделить площадные и линейные объекты

Сообщение Sibit » 19 ноя 2014, 12:13

Старый Йети писал(а): Это тут здесь, не закидывайте гнилыми помидорами старого...
Ну почему же сразу помидорами :))) Я считаю, что в MapInfo и так очень куцый механизм запросов(громко названный SQL-запрос), и пользователям нужно его стараться освоить по максимуму 8).

Старый Йети
Активный участник
Сообщения: 170
Зарегистрирован: 06 дек 2011, 07:21
Репутация: 19
Откуда: г. Ухта, республика Коми

Re: Как разделить площадные и линейные объекты

Сообщение Старый Йети » 20 ноя 2014, 10:16

Sibit писал(а): ... стараться освоить по максимуму 8).
Не могу не согласиться!!!
Век живи и еще 2 века учись! :)
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети

juffin_h
Завсегдатай
Сообщения: 265
Зарегистрирован: 22 окт 2012, 08:35
Репутация: 49
Откуда: Нижний Новгород

Re: Как разделить площадные и линейные объекты

Сообщение juffin_h » 21 ноя 2014, 09:14

На всякий случай.
1. Функция получения площади не площадного объекта в общем случае может вызвать ошибку.
2. И у площадных объектов площадь может быть равна нулю.
:)

sysrepos
Активный участник
Сообщения: 128
Зарегистрирован: 07 окт 2012, 16:25
Репутация: 20
Откуда: Москва

Re: Как разделить площадные и линейные объекты

Сообщение sysrepos » 21 ноя 2014, 10:15

вот еще способ, писал я когда то утилиту по этому вопросу.
запускаете утилиту, в настройках указываете таблицу, в которой нужно выбрать объекты. Далее - 2 кнопки в третьем ряду позволяют выбирать объекты по типу
Вложения
555.jpg
555.jpg (10.04 КБ) 11257 просмотров
444.jpg
444.jpg (23.99 КБ) 11257 просмотров
выбор по типу_v11.7z
(3.43 КБ) 410 скачиваний

Ответить

Вернуться в «MapInfo»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя