Разъединение объектов

MapInfo, MapBasic
Ответить
Qwe1
Интересующийся
Сообщения: 36
Зарегистрирован: 28 мар 2009, 20:02
Репутация: 0

Разъединение объектов

Сообщение Qwe1 » 30 мар 2009, 15:12

Подскажите, пожалуйста, как реализовать разъединение объектов для MapBasic 6.0, ведь "Objects Disaggregate Into Table <...>" не работает. Мои собственные попытки реализовать не работают для случаев, когда в полигонах есть вырезы, а в них еще есть полигоны ("острова")...

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

Re: Разъединение объектов

Сообщение Boris » 30 мар 2009, 17:36

У вас очень специфичный и очень обще сформулированный вопрос. Либо больше подробностей, либо ответ - никак.
А что происходит, когда вы делаете эту команду Disaggregate в самой MapInfo?

Qwe1
Интересующийся
Сообщения: 36
Зарегистрирован: 28 мар 2009, 20:02
Репутация: 0

Re: Разъединение объектов

Сообщение Qwe1 » 30 мар 2009, 18:49

Когда делаешь разъединение через меню МапИнфо (7.5) или через окно MapBasic'а - все отлично происходит. Вложение - два слоя (таблицы), в первом - один объект, во втором - он же, но после разъединения штатными средствами МапИнфо 7.5. Это же надо реализовать на МэпБэйсике 6, если это возможно и не слишком сложно. Пока у меня получается, но не все (см. первый пост).
Вложения
Temp.rar
(1.21 КБ) 543 скачивания

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

Re: Разъединение объектов

Сообщение Boris » 30 мар 2009, 18:59

Я посмотрю в ближайшее время, боюсь, что сразу не найду 6.0
А пока ответ очевиден - с версии 7.0 (или 7.5, что сомнительно), команда Дисагрегации - усложнилась. В ней добавился уровень до которого надо разобрать объект. Теперь их два -
Clipboard01.jpg
Clipboard01.jpg (16.83 КБ) 6950 просмотров
, или вернее даже 3. Сравните синтаксис с тем, который прописан в вашем Help'е (это от 9.0):

Код: Выделить всё

Objects Disaggregate [ Into Table name ]
	[ All | Collection ]
	[ Data column_name = expression [ , column_name = expression ... ] 

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

Re: Разъединение объектов

Сообщение Boris » 30 мар 2009, 19:14

Вот пришло в голову. Если команда руками в окне MapBasic'а в самом MapInfo - работает, то попробуйте обойти кодирование MB строк в команды, специфичные именно для 6.0 -
перешлите сформированную строку команды на выполнение самой MI с помощью

Код: Выделить всё

Run Command command 
command - это тестовая строка команды, которая у вас работала правильно

Qwe1
Интересующийся
Сообщения: 36
Зарегистрирован: 28 мар 2009, 20:02
Репутация: 0

Re: Разъединение объектов

Сообщение Qwe1 » 30 мар 2009, 19:36

Disaggregate нет ни в хелпе, ни в самом МВ 6.0 (судя по сообщениям о неизвестном операторе), но с помощью Run Command все сработало. Спасибо!

Ответить

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

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

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