ООО "ЛесИС" - ГИС TOPOL-L для лесного хозяйства, лесоустройства и арендаторов лесного фонда
ООО "ЛесИС" - ГИС TOPOL-L для лесного хозяйства, лесоустройства и арендаторов лесного фонда
lesis@ya.ru
+7(916)615-42-77

ФОРУМ ТЕХПОДДЕРЖКИ ГИС TOPOL-L

Объявление

Форум открыт для чтения всем гостям, чтобы оставлять вопросы и сообщения нужно быть пользователем ГИС TopoL-L2 (10.0) и Зарегистрироваться!

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Импорт из Mapinfo

Сообщений 1 страница 50 из 90

1

Имеем файл MapInfo. Структура полигона включает только номер квартала и номер выдела. На карте отражена повыделеная сетка.
Открываем: правая клавиша на дереве данных открыть данные MapInfo. Указываем путь к созданным ранее mid и mif файлам.
Файл открывается, но все полигоны пустые, галочки не ставятся.
http://sd.uploads.ru/t/BInHb.jpg
Подумал, может из-за структуры. Перебил структуру полигона.
http://sf.uploads.ru/t/ZpDCN.jpg
Пересохранил. Попытался открыть в тополе, все красиво, полигоны видны. Есть границы полигонов, но как объект линий нет.
Экспорт в блок - программа зависает на 10%.
Открыл MapInfo. Создал отдельно линии, объединил. Открыл полученный файл в Тополе, полигоны и линии отобразились и на схеме и как объект. Но при экспорте в блок опять та же ситуация, на 10% завис.

2

На всякий случай отправил на почту файлы, которые не получилось импортировать.

3

Формат базы не должен влиять на возможность открытия данных, если только не имена полей кириллицей. В слое полигонов MapInfo линий, как объектов, действительно нет, это же система со своей объектной моделью. Линии могут появиться только в процессе импорта в топологическую модель TopoL-я.

Проверьте совместимость систем координат, правильно ли они заданы. TopoL не может самостоятельно определить, в каком системе координат данные MapInfo, у них разные по формату описания проекций. Грубое несоответствие между реальной и указанной системами координат может создать проблему. Попробуйте выбрать и импортировать небольшую часть полигонов - если это проходит, значит проблема в самих данных, скорее всего в графике.

4

Дмитрий Александрович написал(а):

если только не имена полей кириллицей

И имя поля в базе кириллическое и имена таблиц кириллические. В данном случае, повлияли имена таблиц - после переименовывания все экспортировалось без проблем.
Имя поля Вам может "аукнуться" позже, если будете обращаться к базе с SQL запросом. Причем, на одной машине он может пройти, на другой нет - это будет зависеть от используемого прикладного ПО, сервера, драйвера БД или операционки.
Сложилась такая ситуация исторически. Такие гиганты как Майкрософт объявили о допустимости кириллицы в именах с учетом того, что при обращении к ним разработчикам нужно где то брать кириллицу в одинарные кавычки '', где то двойные "", где то в []... Но они не подумали о том, что уже существует масса продуктов, драйверов, средств разработки, которые нужно тупо переделывать, а делать это далеко не все захотели.
И это без учета проблем с распознаванием кодировок, которых, как Вы знаете, наплодилось видимо - невидимо. Не знаю как сейчас, но лет пять назад mysql имел проблемы с буквой "Я". Другие драйверы, средства разработки и сервера до недавнего времени имели проблемы с буквами "Ё", "Р"...
В то же время, буквы английского алфавита читаются всегда и везде и не требуют со стороны разработчика никакой обработки.
Поэтому профессиональные программисты (не путать с сотрудниками 1С франчайзи и т.п. спецами) избегают работать с кириллицей в именах, чтобы не увязнуть в саппорте возможного системного окружения конкретных пользователей. Консорциум OpenGIS прямо это оговорил.
В общем, кириллицу используют только ламеры и чайники при решении персональных задач типа "моя записная книжка"...
Вот относительно свежий (2013г) пример саппорта проблем с кириллицей:

Проблема:Давно использую кириллицу при именовании полей, названий таблиц и базы данных. Не всегда сразу удается подключиться к базе из Visual Studio. В настоящее время после переустановки ОС и VS 2010 SP1 пытаюсь восстановить (создать новое) подключение к базе с названием "цукс".
Решение:Ответ from the mysql forum http://forums.mysql.com/read.php?38,593950,594066#msg-594066.
Т.к. я пользуюсь ria services and entities framework, то для создания подключения в дизайнере пока обошел проблему так. Удалил драйвер mysql-connector-net-6.6.5 , поставил драйвер mysql-connector-net-6.3.7. Под ним сделал подключение к базе "цукс". Затем удалил и повторил установку .net framework 4.5 (иначе mysql-connector-net-6.6.5 не устанавливается) и поставил 6.6.5 снова. Подключение сохранилось, problem solved!

То есть, саппорт должен разобраться какой драйвер и FW стоят на машине и организовать у пользователя его переустановку... И таких "проблем - решений" с кириллицей Вы в инете найдете чертову тучу. Нас всего трое и мы не готовы к такому саппорту. Так что, убедительная просьба с "базами", имеющими кириллические имена, обращаться к их создателям, пусть они и разбираются во всем этом...

Перенесу в FAQ и добавлю пункт в Правила.

5

Скажите пожалуйста. У кого-нибудь есть подробное описание импорта/экспорта из/в MapInfo. И как потом векторные слои интегрировать в базу Topol. Заранее спасибо.

6

svitaly77 написал(а):

У кого-нибудь есть подробное описание импорта/экспорта из/в MapInfo. И как потом векторные слои интегрировать в базу Topol

Так в руководстве вроде бы есть:
http://www.lesis.ru/infot/teh_import_mapinfo.html
Где то в видеоуроках еще поищите исправление дефектов после не топологических ГИС.

7

Я новичек, многое пока непонятно.. Так, например, имея карту c границами кварталов и выделов - хочу ее импортировать из Mapinfo в Topol последней 10 версии. Следуя инструкции - установила в проекте и в окне карты единую систему координат. Создала в окне карты папку и через контекстное меню хочу открыть в ней карту. Указываю путь к папке с файлами mid/mif - но программа ни в какую не хочет видеть абсолютно никаких файлов в ней! В чем может быть проблема?

8

Тут особенность Тополя в том, что он открывает не файлы внутри папки, а папку с данными mapinfo целиком (!) как один объект.
Поэтому если ваши обменные файлы лежат например D:\obmen\proekt1\test.mif, то открывать в тополе нужно с уровня D:\obmen\ , в нем программа увидит объект "proekt1" и откроет его.

Отсюда замечание, если хотите открывать слои мапинфо отдельно, раскладывайте их по разным папкам. Ну и еще, как новичку совет, если импорт не будет работать, проверьте чтобы все имена полей в мапинфо были латинскими буквами, и путь к файлам на всякий случай тоже чтоб был без кириллицы.

9

Спасибо, Алексей, за подсказку! Действительно, программа видит файлы, когда выделяешь не саму папку, в которой непосредственно лежат эти файлы, а папку перед ней (уровнем выше). При этом путь к файлам, равно как и сами файлы - содержат в своих названиях кириллицу - с этим все в порядке, программа их "проглатывает".

10

Вероника2 написал(а):

При этом путь к файлам, равно как и сами файлы - содержат в своих названиях кириллицу - с этим все в порядке, программа их "проглатывает".

Проглатывать то проглатывает, но все же, я также не советовал бы их, кириллицу, пробелы и другие символы, имеющие второе служебное значение,  использовать. Одно дело - открыл, поправил, сохранил... Другое дело если используются какие то сложные межфейсные передачи данных, работающих по COM программ.
На этом же настаивают и требования Open GIS консорциума. Да и Майкрософт, вопреки заверениям, не всегда обрабатывает такие ситуации. В моей практике накопилось достаточно случаев даже порчи данных из-за кириллицы в идентификаторах файлов и папок. Слава богу им хватило ответственности хотя бы для инет-сервисов сделать URL-кодировку.
В общем, мы не гарантируем корректность обработки данных, работающих с кириллическими именами, или включающие символы, имеющие двойное назначение.

11

Здравствуйте.
Подскажите, пожалуйста, по подробнее про импорт из Mapinfo. У нас не работает утилита ConvertDb.exe

12

Тогда сначала Вы поподробнее расскажите, что Вы собираетесь импортировать (карты, какие слои, таксацию)?

И уточните, что Вы собираетесь конвертировать в ConvertDB.

13

Импортирую слой с выделами из Mapinfo.
Делаю, как в http://www.lesis.ru/infot/teh_import_mapinfo.html
Там есть пункт: "Приведение блоков к стандарту Topol-L."
При включении утилиты вылезает ошибка: "Отсутствует значение одного или нескольких параметров"

14

e123456 написал(а):

Подскажите, пожалуйста, по подробнее про импорт из Mapinfo.

Но импорт уже описан пошагово:
http://www.lesis.ru/infot/teh_import_mapinfo.html
Куда уж подробнее!? Задавайте пожалуйста конкретные вопросы по тому, что именно не получается. Причем, с учетом того, что сами мы этим не занимаемся, сделали один раз и записали как документацию.

e123456 написал(а):

У нас не работает утилита ConvertDb.exe

Не достаточно информации для подсказки. Тут описано как правильно задать вопрос. Что именно не работает, на каком этапе? Что сообщает программа? Что именно Вы делали и до какого шага в описании Вы дошли?

15

На этапе: Приведение блоков к стандарту Topol-L

16

При включении утилиты, вылезает сообщениеhttp://s7.uploads.ru/t/agqLj.png

17

e123456 написал(а):

На этапе: Приведение блоков к стандарту Topol-L

Это работа с картой.

e123456 написал(а):

При включении утилиты, вылезает сообщение

А это работа с таксацией... Вопросы не связанные между собой.
Из текста понятно, что не хватает параметров. Мы не угадаем не зная, что и как Вы делали. Там перед "включением утилиты" 4 пункта действий. Открывайте инструкцию и делайте все по шагам. Где то, что то пропустили или не там разместили или не то прописали. Только по тексту сообщения об ошибке мы не догадаемся, что Вы сделали не так.

Тема будет перенесана в соответствующий ей раздел:
РАБОТА С СОВМЕЩЕННЫМИ БАЗАМИ ТАКСАЦИИ И КАРТ

18

"Приведение блоков к стандарту Topol-L" - это название раздела, в котором описывается работа с утилитой.
У нас задача: слой Мапинфо, полученный экспортом из Топола, снова импортировать в Топол. Возможно при экспорте из Топола часть параметров и потерялась...

19

Вы не работали с такой задачей?

20

e123456 написал(а):

У нас задача: слой Мапинфо, полученный экспортом из Топола, снова импортировать в Топол. Возможно при экспорте из Топола часть параметров и потерялась...

Извините, но техподдержка для таких схем работы нашим договором и лицензионным соглашением не предусмотрена. Привлекайте специалистов соответствующего уровня, которые способны разобраться в изменениях структуры и содержания баз. На входе для Тополя им нужно сформировать структуру, предусмотренную программой ЛесГИС ~5 и более летней давности. Если уверены, что структура серьезно не поменялась - проверяйте содержимое файлов из каталога настроек c:\Program Files (x86)\LesIS\utils\ConvertDb\. Сверяйте имена полей, проверяйте структуры шаблонов... Пытайтесь подобрать, наконец. На выходе должен быть блок в формате Тополя 6.8.
Чтобы установить не "потерялись ли параметры" найдите образцы базы из ЛесГИС. Сравните с тем, что Вы получили из Тополя. Соответственно преобразуйте, если есть отличия.
PS Если Вы таким образом пытаетесь использовать специалистов, работающих в MapInfo то заранее предупрежу, что Вы сильно увеличите объемы своих работ.  И не только с конвертацией. "Объектные" ГИС, к коим относится и MapInfo, дают достаточно много ошибок топологии, которые придется чистить. В этом мы Вам тоже не сильно поможем.

21

Все понятно. Логично.
Сопутствующий вопрос. При создании блока создается файл БД .mdb. Для работы с утилитой надо БД .dbf, если я, конечно, правильно понял. Может надо что-то в настройках поменять?

22

e123456 написал(а):

При создании блока создается файл БД .mdb.

Изменения формата блока произошло в версии Топол 10. Утилита разрабатывалась под версию 6.8 и не развивалась, так как мы объявили лет пять назад о прекращении поддержки 6.8 и импорта из старых форматов. Включить перед экспортом сохранение блока в DBF можно в настройках Тополя, но это все равно будет не формат версии 6.8. Поэтому, боюсь, что Вам придется сначала экспортировать в версию 6.8, потом уже в МапИнфо. Оценить возможность использования DBF - блока из 10-ки не берусь, не пробовал. Тем более, что я импорт из ЛесГИС делал всего пару раз когда делали описание лет 5 назад. Однако, как бы Вы потом сами не запутались с форматами уже самой 10-и...

23

Подскажите, пожалуйста, как в настройках сделать сохранение блока в DBF?

24

e123456 написал(а):

Подскажите, пожалуйста, как в настройках сделать сохранение блока в DBF?

"МенюТополя - Инструменты - Настройки - Изменение - Сохранение блоков в старом формате". Далее "Спросить о редактироваии" и (или) "Не использовать формат блока 10". Попробуйте оба и проверьте, я не меньше года не пробовал работать со старым форматом.

25

Грешнов написал(а):

Привлекайте специалистов соответствующего уровня, которые способны разобраться в изменениях структуры и содержания баз.

А у Вас есть специалисты, которые могли бы это сделать платно?

26

e123456 написал(а):

А у Вас есть специалисты, которые могли бы это сделать платно?

Специалисты есть, но заниматься такого рода  деятельностью мы себе позволить не можем ни за какие деньги, так как это отразится на разработках.

27

Здравствуйте.
На сколько Топол критично относится к топологическим ошибкам при импорте из Мапинфо?
Например: пересечения полигонов, петли и т.п..

28

Сильно критично.
Полигон в тополе не может существовать без границ. Если вы импортируете полигоны, тополь обязательно построит их границы из линий.
В большинстве случаев при пересечении - линии раздробят полигоны со всеми вытекающими последствиями. Вместо двух пересекающихся полигонов получите как минимум три, причем какие характеристики унаследует паразитный полигон в месте стыка, неизвестно. :)

29

Поищите не форуме (может быть, и старом) рекомендации по импорту не совсем корректных данных MapInfo, там есть рекомендация по двухэтапной процедуре приведения данных к корректной топологии. Сначала данные импортируются с малыми допусками автокоррекции, чтобы образовались узлы топологический контурной сети в правильных местах, затем полученный промежуточный блок копируется в другой блок с совсем другими допусками и параметрами автокоррекции, чтобы автоматически устранить большую часть образовавшихся на первом этапе щелей и осколочных полигонов. Там были проверенные практикой конкретные рекомендации.

30

Правильно ли я понимаю, что граница выделов - это на самом деле граница полигонов? И если два смежных полигона относятся к одному выделу, то их надо "сливать", чтобы по территории выдела не проходила граница?

31

e123456 написал(а):

то их надо "сливать", чтобы по территории выдела не проходила граница?

Тем и хорош Топол что по выделу может проходить множество линий. Это дороги,ручьи и т.д. А зачем сливать то?

32

e123456 написал(а):

Правильно ли я понимаю, что граница выделов - это на самом деле граница полигонов?

Тополь - топологическая ГИС, близкая к АркГИС, поэтому ЛИНИЯ границы выделов, как и линия любого другого типа (дорога, ручей....) может быть и границей полигона если они строились как топологические объекты (то есть, "знающие друг о друге"). И изменение такой линии означает изменение и границы полигона, поскольку линия, в отличии от объектных ГИС типа МапИнфо... Панорамы... и пр. в таких случаях всегда одна.

e123456 написал(а):

И если два смежных полигона относятся к одному выделу, то их надо "сливать", чтобы по территории выдела не проходила граница?

Нет, этого не требуется (хотя и возможно), поскольку идентификация ВЫДЕЛОВ идет не по внутреннему идентификатору полигона, а по номеру квартала и выдела. Поэтому Тополь позволяет относить к одному выделу даже полигоны территориально разделенные другими полигонами, что актуально для колочных лесов в ряде регионов, где заказчик предпочитает один номер на разрозненные, но одинаковые по описанию выдела. Также это актуально для того, чтобы можно было ставить метки выделов на каждом куске и использовать их при печати бумажных планов.
Чтобы линия проходила через выдел и не делила его,она не должна быть топологической по отношению к нему, что можно настроить при прорисовке и других операциях. Но делать так не следует, так как таким образом Вы можете ограничить функционал системы по таким сложным операциям как внесение изменений в совмещенную базу, увязка площадей, копирование - вставка объектов (таксация и карта одновременно), буферные зоны и т.д. и т.п. При этих операциях если происходит встраивание линии в существующую базу программа сама дробит полигоны, встраивает идентификаторы и пересчитывает (переувязывает) площади кусков одного целого объекта.

33

Здравствуйте. Подскажите, пожалуйста.
Есть "дерево данных", и в квартале, например, 1-23 выдела - площадные, 24-26 - линейные.
К "дереву" импортирована графика, где все выделы с 1 по 26 в данном квартале - площадные. Т. е. в 24-26 выделах карточки не соответствуют графике по типу объекта.
Есть ли какой-то способ обнулить значения номеров квартала и выдела в базах данных полигонов, к которым сопоставлены карточки таксации линейных объектов? Чтобы номеру линейного выдела не сопоставлялся площадной объект.

34

В атрибутах полигонов есть поля KvrNom, VydNom, сотрите там циферки.

35

То есть только руками перебивать? Просто таких кварталов несколько сотен.

36

Это же был вопрос "например"?  :)

Сейчас подумаю, как это можно сделать массово, а Вы пока скажите, что вы будете делать с выделами 24-26, которые на карте есть как полигоны, а таксационной характеристики у них нет? Может их проще удалить? Нет полигона - нет проблем.

Мне кажется, что Вашу задачу нужно решать с другого конца. То, что Вы хотите сделать, противоречит логике и технологиям связанных баз Тополя. Вам надо наоборот, довнести в "дерево данных" выдела, которые на карте есть, а в базе нет.

37

Можно например так. Отбором по базе отмечаете все выдела с категориями земель "насаждение", "вырубки" и т.д., То есть, все, что НЕ линейный объект. Отображаете выборку на карту. Получились нормальные выдела на карте выбраны, лишние нет. Затем средствами поиска в карте делаете полигонам "альтернативный выбор" - "все". Стали выбраны только лишние полигоны. Дальше "перезаписать поле БД" - "для выбранных" - ноль или пусто в нужное поле. Вроде бы всё.

То есть сделать-то можно, но практический смысл от этого?

38

Спасибо.
Другой вопрос.
Какие в Топол есть возможности по поиску и исправлению ошибок топологии?

39

Прошу прощения, тут не помогу, я не понимаю что такое ошибки топологии. Приведете пример?

40

Пересечения полигонов, самопересечения полигонов, петли, двойные узлы, двойные объекты... и т. п.

41

Тут зависит от степени некачественности материала. После правильного импорта в TopoL все станет более-менее топологическим, но дефекты превратятся в полигоны - "щели", "осколки", щели между полигонами и т.п. Я на днях писал для кого-то (поищите), как это сделать автоматом, но это возможно, если дефекты небольшие по величине. Я встречал и такие материалы, которые быстрее было перецифровать заново "поверх" существующего вектора, чем пытаться править дефекты.

42

Дмитрий Александрович написал(а):

Я на днях писал для кого-то (поищите), как это сделать автоматом

выше, в этой же теме и писали.

43

Алексей Курагин написал(а):

выше, в этой же теме и писали.

Нет, я имел в виду другой - пост от 15.09.2017.

44

Спасибо большое.
Подскажите, пожалуйста. Если в результате появились линии-границы выделов, которые обрываются внутри выдела, как их выделить и удалить?

45

e123456 написал(а):

Если в результате появились линии-границы выделов, которые обрываются внутри выдела, как их выделить и удалить?

"Поиск - Выбрать в карте - По запросу" Делаете "Новый", обзываете понятно и текст запроса:
%LAREA = %RAREA

46

Здравствуйте.
Есть участковое лесничество, с "деревом" и графикой. Импортируем в него из Мапинфо еще полигоны выделов (большое количество). Как новые полигоны, появившиеся в графике участкового лесничества, сопоставить с "деревом"(в "дереве" под них уже есть и кварталы, и выделы)? Или только руками в базе данных новых полигонов набивать номер квартала и выдела? В таблице Мапинфо есть номера кварталов и выделов.

47

Полигоны MapInfo импортируете в отдельный блок, меняете имена идентификационных полей на KVRNOM и VYDNOM, затем копируете эти полигоны в блок xxxx_Vyd.blk соответствующего лесничества. После этого для приведения формата блока к стандартному виду потребуется использовать модуль Контроля и увязки площадей.

e123456 написал(а):

Если в результате появились линии-границы выделов, которые обрываются внутри выдела, как их выделить и удалить?

Более точный вариант условия отбора:

(%LAREA = %RAREA) and (%NUMFREETAILS = 1)

, то есть это будут линии, где полигон слева и справа - один и тот же, и где один конец встроен в контурную сеть, а другой свободен.
При этом искать Вы можете только в тех группах линий, для которых это некорректно - например, ручей имеет право начинаться в середине выдела.

48

Здравствуйте. Подскажите, пожалуйста.
При импорте из Мапинфо полигоны "с дырками" получаются без дырок. И получается под большим полигоном маленький полигон.
Как это исправить?

49

Там есть переключатель "Игнорировать полигоны внутри островов ...", попробуйте подобрать им подходящий режим. Дело в том, что встречаются ситуации, когда полигон в полигоне в форматах MapInfo записывается одним контуром вложенного полигона, а бывает, что двумя одинаковыми: один из них - дырка в родительском мультиполигоне, а второй - сам вложенный полигон.

50

Перепробовал, на мой взгляд, все. И переключатель "Игнорировать полигоны внутри островов ...". И импорт из tab и mid/mif. Результат один. Под большим полигоном лежит маленький полигон, и большой - без дырки. Заметил, что при импорте из mid/mif полигон получается сначала с дыркой, а при экспорте уже в блок ее теряет. При импорте из tab полигон - сразу без дырки.
В Мапинфо все полигоны с дырками представлены, как объединение двух полигонов, если смотреть их mid/mif-ы. Кстати, по другому полигоны с дырками я и не встречал...
Есть ли возможность исправить это непосредственно в Топол? То есть вырезать из большого полигона маленький?




Почтовый адрес для ЗАКАЗНЫХ писем:
С.П.Грешнов, 108832, г Москва, р-н Вороново, д Лукошкино,
д. 28, А/Я 1, +7(916)615-42-77
E-Mail: lesis@ya.ru
Вопросы общего характера:
+7(916)615-42-77
РОССИЙСКАЯ ФЕДЕРАЦИЯ
Общество с ограниченной ответственностью "ЛЕСИС"
ОГРН: 1035007204902, ИНН: 5036046400, КПП: 503601001