Проблема с заливкой полигонов в MI
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Проблема с заливкой полигонов в MI
Добрый день, уважаемые!
Никто не сталкивался со следующей проблемой?
Использую порядка 1000 разновеликих непрямоугольных полигонов (в д.случае - водосборы) Где-то на отметке в 1000 полигонов MI отказывается сохранять заданную мной заливку со штриховкой. После сохранения таблицы меняет и фоновую заливку полигонов, и саму штриховку. Без штриховки - "глюка" нет. Проблема именно в связке "штриховка с фоновой заливкой". Технологию борьбы с глюком могу расписать пошагово - не помогает. Видать, дело в неких ограничениях самой MI, которых, имхо, быть не должно.
MI 10.5 ru, Windows XP SP3
ПК - мощная графическая станция (Xeon 2,67 GHz, 4 Gb ОЗУ)
Спасибо!
P.S. При необходимости могу расписать глюк по-подробнее и как я с ним пытался бороться. Но проблему так и не решил.
Никто не сталкивался со следующей проблемой?
Использую порядка 1000 разновеликих непрямоугольных полигонов (в д.случае - водосборы) Где-то на отметке в 1000 полигонов MI отказывается сохранять заданную мной заливку со штриховкой. После сохранения таблицы меняет и фоновую заливку полигонов, и саму штриховку. Без штриховки - "глюка" нет. Проблема именно в связке "штриховка с фоновой заливкой". Технологию борьбы с глюком могу расписать пошагово - не помогает. Видать, дело в неких ограничениях самой MI, которых, имхо, быть не должно.
MI 10.5 ru, Windows XP SP3
ПК - мощная графическая станция (Xeon 2,67 GHz, 4 Gb ОЗУ)
Спасибо!
P.S. При необходимости могу расписать глюк по-подробнее и как я с ним пытался бороться. Но проблему так и не решил.
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Проблема с заливкой полигонов в MI
MIF в студию. А так же номер версии укажите.
Теперь вопрос - все объекты имели разную штриховку?
PS
Можно узнать в чем собственно смысл был задавать оформление для каждого объекта? Мапинфо конечно это позволяет, но все же она ГИС, а не Автокад, в ней разные типы оформления принято задавать через атрибут. Если уж это принципиально, то есть утилита, которая из атрибута сделает тематику, а потом ее сохранит как оформление единого объекта.
Теперь вопрос - все объекты имели разную штриховку?
PS
Можно узнать в чем собственно смысл был задавать оформление для каждого объекта? Мапинфо конечно это позволяет, но все же она ГИС, а не Автокад, в ней разные типы оформления принято задавать через атрибут. Если уж это принципиально, то есть утилита, которая из атрибута сделает тематику, а потом ее сохранит как оформление единого объекта.
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Спасибо за внимание, Boris.
По-порядку. MIF вряд ли смогу прислать, с работы такие "посылки" закрыты админами. Как и все USB порты и пр. пр. пр.
Про атрибуты в ГИС представление имею. Тематика тоже не подойдет, уж очень она сложная получается. Да и не нужна она в данном случае. В наборах итак очень много другой информации. Водосборы - только часть отчета (но хочется сделать эту часть красиво!) Суть - красиво и различимо оформить водосборные бассейны разного порядка. Типа, река Соть - бассейн Волги, а у Соти еще куча притоков разного уровня. Вот и было желание сделать для одного крупного бассейна (здесь для примера - Волга) фоновую заливку одного тона (типа голубые тона, зеленые, красные и т.д.). Более мелкие водосборы различаться будут только штриховками. Это если в двух словах. Тематика построится по другим атрибутам (при необходимости). А такую красоту вывести в готовый отчет.
Заметил, что такая процедура выполнима на каком-то этапе. А вот на рубеже примерно 1000 полигонов - уже нет. (Это и есть описываемый глюк").
Буду пытаться еще отключить кучу модулей, может какие-то влияют (Такое было замечено в некоторых случаях)
И еще. Если задать одно из полей как комбинацию RGB (что можно сделать) - как потом расцветить сам полигон автоматом? Т.е. чтобы MI сама считывала инфу из заданного поля и производила заданную заливку? Обязательно использовать mapbasic?
Много вопросов?
Дремучие мы тут собрались. На той учебе, что нас обучали, информации совсем мало дают, все из руководства пользователя, начальный уровень. И преподают не дюже грамотные спецы, многого сами не знают, увы. Да и ковыряться с бейсиком - проблематично. Работа в другом заключается, да и наборы делаются в расчете на начальный уровень пользования MI, геологи собрались, гидрогеологи, ботаники, почвоведы, экологи. Куда уж нам до программирования 
Версия MI 10.5 ру. После праздников проверю на "чистой" 10.0
Заранее спасибо!
По-порядку. MIF вряд ли смогу прислать, с работы такие "посылки" закрыты админами. Как и все USB порты и пр. пр. пр.
Про атрибуты в ГИС представление имею. Тематика тоже не подойдет, уж очень она сложная получается. Да и не нужна она в данном случае. В наборах итак очень много другой информации. Водосборы - только часть отчета (но хочется сделать эту часть красиво!) Суть - красиво и различимо оформить водосборные бассейны разного порядка. Типа, река Соть - бассейн Волги, а у Соти еще куча притоков разного уровня. Вот и было желание сделать для одного крупного бассейна (здесь для примера - Волга) фоновую заливку одного тона (типа голубые тона, зеленые, красные и т.д.). Более мелкие водосборы различаться будут только штриховками. Это если в двух словах. Тематика построится по другим атрибутам (при необходимости). А такую красоту вывести в готовый отчет.
Заметил, что такая процедура выполнима на каком-то этапе. А вот на рубеже примерно 1000 полигонов - уже нет. (Это и есть описываемый глюк").
Буду пытаться еще отключить кучу модулей, может какие-то влияют (Такое было замечено в некоторых случаях)
- это не применяя тематику? прошу прощение за "дремучесть", научите пожалуйста.Boris писал(а):типы оформления принято задавать через атрибут
Поподробнее, пожалуйста.Boris писал(а):Если уж это принципиально, то есть утилита, которая из атрибута сделает тематику, а потом ее сохранит как оформление единого объекта.
И еще. Если задать одно из полей как комбинацию RGB (что можно сделать) - как потом расцветить сам полигон автоматом? Т.е. чтобы MI сама считывала инфу из заданного поля и производила заданную заливку? Обязательно использовать mapbasic?
Много вопросов?


Версия MI 10.5 ру. После праздников проверю на "чистой" 10.0
Заранее спасибо!
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Проблема с заливкой полигонов в MI
начнем с начала. мапбасик и мапинфо не разделимы. почти все команды мапинфо являются командами мапбасика. в реальности та мапинфо, про которую говорят - это графическое дополнение внутренних команд мапбасика - что бы ему было куда выводить картинки.
поэтому без мапбасика мапинфо бывает, но это не значит, что его не используют. тот мапбасик, который предлагается как очень убогий редактор для написания и создания прикладных программ на языке мапбасик - редко кому нужен, хотя часто приятно его иметь под рукой.
задать цвет через RGB очень даже возможно. проблема в том, что в языке мапинфо нет функций, которые меняют цвет. Есть команды, которые меняют оформление целиком, т.е. надо задать не только цвет, но номер штриховки, номер контура и т.п.
Но все бы хорошо, только встроенное окно мапбасика в оболочке мапинфо не поддерживает циклов и проверки условий. Что неминуемо приводит нас к необходимости использовать некоторый язык программирования, т.к. смена оформления у единственного объекта выглядит так:
а) считать существующие параметры оформления в некоторую специальную переменную типа штриховка
б) получить из этой переменной все параметры штриховки
в) создать новую штриховку и поместить ее в переменную
г) применить эту переменную к геообъекту
---
атрибут и есть оформление через тематику - когда вид определяется некоторым столбцом или их комбинацией
---
не исключено, что 1000 - граница возможных различных оформлений в одной таблице. надо проверить создав MIF - он текстовый и легко может быть создан подручными средствами. если при импорте в мапифно программа выругается ли упадет - значит есть ограничение.
поэтому без мапбасика мапинфо бывает, но это не значит, что его не используют. тот мапбасик, который предлагается как очень убогий редактор для написания и создания прикладных программ на языке мапбасик - редко кому нужен, хотя часто приятно его иметь под рукой.
задать цвет через RGB очень даже возможно. проблема в том, что в языке мапинфо нет функций, которые меняют цвет. Есть команды, которые меняют оформление целиком, т.е. надо задать не только цвет, но номер штриховки, номер контура и т.п.
Но все бы хорошо, только встроенное окно мапбасика в оболочке мапинфо не поддерживает циклов и проверки условий. Что неминуемо приводит нас к необходимости использовать некоторый язык программирования, т.к. смена оформления у единственного объекта выглядит так:
а) считать существующие параметры оформления в некоторую специальную переменную типа штриховка
б) получить из этой переменной все параметры штриховки
в) создать новую штриховку и поместить ее в переменную
г) применить эту переменную к геообъекту
---
атрибут и есть оформление через тематику - когда вид определяется некоторым столбцом или их комбинацией
---
не исключено, что 1000 - граница возможных различных оформлений в одной таблице. надо проверить создав MIF - он текстовый и легко может быть создан подручными средствами. если при импорте в мапифно программа выругается ли упадет - значит есть ограничение.
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Спасибо, Boris. Я понял, что с заливкой "по расписанию" ничего не получится. Давно догадывался.
Вот и решил сделать всё вручную. Раз и навсегда.
Тематика в д.случае не подойдет, очень много полигонов, строя тематику каждый раз (даже если она и сохранена в таблице) - многие наши компы загнутся раньше времени. Есть еще "умельцы" кто на Celeron'ах работает. А тут еще и слой текстовых подписей... много линейных и точечных объектов. Загнётся, однозначно!
Тему про MIF проверю на работе. Уже скоро. Думается, так всё и будет. А еще попробую уменьшить количество полей в этой самой таблице "водосборов". Может, какое-то переполнение идёт. Тут был опыт, наши барышни создавали таблицы с 255 полями, все из которых были символьные по 255. Ругалось чуть ли не нецензурно!
Кстати, может это ограничение именно с этим и связано? Буду исследовать и принимать решение.
С уважением!
старый, очень старый Йети.
Вот и решил сделать всё вручную. Раз и навсегда.
Тематика в д.случае не подойдет, очень много полигонов, строя тематику каждый раз (даже если она и сохранена в таблице) - многие наши компы загнутся раньше времени. Есть еще "умельцы" кто на Celeron'ах работает. А тут еще и слой текстовых подписей... много линейных и точечных объектов. Загнётся, однозначно!

Тему про MIF проверю на работе. Уже скоро. Думается, так всё и будет. А еще попробую уменьшить количество полей в этой самой таблице "водосборов". Может, какое-то переполнение идёт. Тут был опыт, наши барышни создавали таблицы с 255 полями, все из которых были символьные по 255. Ругалось чуть ли не нецензурно!

Кстати, может это ограничение именно с этим и связано? Буду исследовать и принимать решение.
С уважением!
старый, очень старый Йети.
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Проблема с заливкой полигонов в MI
ограничение на совокупный размер полей - есть. не помню где именно оно мне попадалось, но так на память оно составляет 2*1024 байта. не думаю, что это ограничение мапинфо, т.к. формат файла DAT, в котором мапинфо хранит свои атрибутивные данные = формат DBF версия III.
С оформление все не так просто. Явных запретов я нигде не нашел.Оформление хранится в том же файле, что и геометрия.
Я нашел старое описание формата MAP файла Notes on the MapInfo® Native table format. Новее не видел, но предполагаю, что принципиально ничего не изменилось.
Из него можно сделать 2 вывода:
Что бы обойти эту проблему попробуйте посмотреть в сторону сшитых(?) seamless таблиц. Они вроде хранятся как разные таблицы, а открываются через единый TAB. Но сам я ими не разу не пользовался и с обучения то же как-то помню очень смутно.
С оформление все не так просто. Явных запретов я нигде не нашел.Оформление хранится в том же файле, что и геометрия.
Я нашел старое описание формата MAP файла Notes on the MapInfo® Native table format. Новее не видел, но предполагаю, что принципиально ничего не изменилось.
Из него можно сделать 2 вывода:
- всего в файле может быть не более 256 (1 байт) разных штриховок. Все остальных типов оформления - по столько же.
- блок описания любого типа оформления (ресурса (05)) хранит количество объектов с этим оформлением(?). под это отведено 4 байта, т.е. это счетчик на 2 миллиарда с небольшим. С учетом того, что сам файл не должен быть больше 2 Гб такое число непросто превысить.
Что бы обойти эту проблему попробуйте посмотреть в сторону сшитых(?) seamless таблиц. Они вроде хранятся как разные таблицы, а открываются через единый TAB. Но сам я ими не разу не пользовался и с обучения то же как-то помню очень смутно.
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Еще раз, спасибо, Boris
Да, скорее всего такого ограничения быть не может. С учётом того, что версии у нас стоят лицензионные, то "собака порылась где-то в другом". 2Гб я явно не превысил. Сам файл dat всего-то несколько Мб. Но на Novel'евской сетке.
ИМХО, скорее всего, мешают какие-то загруженные mbx.
Алгоритм действий на 2 мая вроде бы как выработался. Поэкспериментирую в том числе и со сшитыми таблицами.
О результатах пренепременно доложусь!
Спасибо и удачи!
Да, скорее всего такого ограничения быть не может. С учётом того, что версии у нас стоят лицензионные, то "собака порылась где-то в другом". 2Гб я явно не превысил. Сам файл dat всего-то несколько Мб. Но на Novel'евской сетке.
ИМХО, скорее всего, мешают какие-то загруженные mbx.
Алгоритм действий на 2 мая вроде бы как выработался. Поэкспериментирую в том числе и со сшитыми таблицами.
О результатах пренепременно доложусь!
Спасибо и удачи!
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Проблема с заливкой полигонов в MI
Графика хранится в MAP. Атрибутика - в DAT.
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Спасибо. Уж это-то мне известно...Boris писал(а):Графика хранится в MAP. Атрибутика - в DAT.

_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Проблема с заливкой полигонов в MI
тогда извините, просто в последнем посте упомянут DAT, хотя ошибка очевидно происходит в MAP/
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Попробую сделать связку с Excel'ем. Тогда dat уйдет? Или с заливкой с Excel'ем не получится? Всё одно останется dat?Boris писал(а):... ошибка очевидно происходит в MAP/

В любом случае, Boris, огромное человеческое спасибо. Видать эта проблема только у меня проявилась. Значит буду искать у себя.
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: Проблема с заливкой полигонов в MI
извините я уже утерял задачу, которую решаем. 
раз нам DAT не мешает, а ошибка связана с хранением в MAP, то какая разница где хранить атрибутивные данные? у мапинфо есть родной формат в котором атрибутика лежит в БД Access. Но и сам DAT = DBF, а это одна из первых БД. ArcGIS shape то же использует DBF для атрибутики, только не придумал ему нового расширения файла. Вообще DAT можно открыть в любой смотрелке DBF файлов, хоть в том же Excel'е.
Как не крути это проблемы со штриховкой касаться не должно.

раз нам DAT не мешает, а ошибка связана с хранением в MAP, то какая разница где хранить атрибутивные данные? у мапинфо есть родной формат в котором атрибутика лежит в БД Access. Но и сам DAT = DBF, а это одна из первых БД. ArcGIS shape то же использует DBF для атрибутики, только не придумал ему нового расширения файла. Вообще DAT можно открыть в любой смотрелке DBF файлов, хоть в том же Excel'е.
Как не крути это проблемы со штриховкой касаться не должно.
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Чтобы идти в гору дальше, надо определиться с направлением. 2 мая выйду на работу - буду экспериментировать. Пока отталкиваться не от чего. Ясно, что dbf-dat-mdb-xls таких ограничений не делают. Значит дело в другом. Буду Роденом - отсеку всё лишнее.
Штриховка вообще в MI вещь странная...
Не любил я её и, видать, не зря...
... если только не будет проблем с кодировкой. Помнится, были у меня боольшие проблемы просмотреть UTF-8 в 9-ой версии MI. Слава всевышнему, в 10-й версии проблема решилась.Boris писал(а):... DAT можно открыть в любой смотрелке DBF файлов, хоть в том же Excel'е
Штриховка вообще в MI вещь странная...

Не любил я её и, видать, не зря...
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Активный участник
- Сообщения: 170
- Зарегистрирован: 06 дек 2011, 07:21
- Репутация: 19
- Откуда: г. Ухта, республика Коми
Re: Проблема с заливкой полигонов в MI
Итак, мои потуги.
1. Подключенные модули НЕ влияют. Отключил все, ситуация не меняется
2. Изменил структуру таблицы, сократил пока ненужные поля, убрал лишние проиндексированные. Не помогло.
3. Естессно, таблица не раз перепакована, лишних пустых строк нет.
4. Импортировал в mif. Разбираюсь.
..."возник вопрос, потекла идея". Есть возможность встроенными средствами MI и MB получить информацию о типе и цвете заливке полигонов?
Собственно и всё на пока!
Заранее спасибо за участие!
1. Подключенные модули НЕ влияют. Отключил все, ситуация не меняется
2. Изменил структуру таблицы, сократил пока ненужные поля, убрал лишние проиндексированные. Не помогло.
3. Естессно, таблица не раз перепакована, лишних пустых строк нет.
4. Импортировал в mif. Разбираюсь.
..."возник вопрос, потекла идея". Есть возможность встроенными средствами MI и MB получить информацию о типе и цвете заливке полигонов?
Собственно и всё на пока!
Заранее спасибо за участие!
_____________________________________________
старый и дремучий, но всё же искренне ваш - Йети
старый и дремучий, но всё же искренне ваш - Йети
-
- Активный участник
- Сообщения: 161
- Зарегистрирован: 17 янв 2012, 18:51
- Репутация: 74
Re: Проблема с заливкой полигонов в MI
Не мудрствуя, смоделировал ситуацию. При всех манипуляциях с таблицей никаких изменений не нашел. Может быть, я не понял суть проблемы?
Всего объектов – 2500. Прикладываю растр с окна карты (если нужно могу прислать таблицу).
Среда: WinXP sp3
MI 8.0
Корд. система – план/схема
Всего объектов – 2500. Прикладываю растр с окна карты (если нужно могу прислать таблицу).
Среда: WinXP sp3
MI 8.0
Корд. система – план/схема
- Вложения
-
- Obj2s.png (540.11 КБ) 11009 просмотров
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость