Конвертор Ингит - Версия 1.2.

Основной форум пользователей GPS (Global Positioning System)
Правила форума
Для предотврашения спама первые сообщения вновь зарегистрированных пользователей проходят ручную премодерацию.
Kerg
Сообщения: 2878
Зарегистрирован: 22 авг 2000, 20:23

Конвертор Ингит - Версия 1.2.

Сообщение Kerg » 22 апр 2002, 10:26

1.Добавлен выборочный экспорт объектов в plt-файл по кодификатору. Настройка осуществляется в файлах TOPO.dbf, PLAN.dbf, CITY.dbf, MARINE.dbf, SEA.dbf. Поля файла: EXPORT - 0 (или пусто) - запрет экспорта, отличное - экспорт. OBJECT_COD √ Кодификатор ВТУ. (не изменять, выборка идет по нему) CHR_RUS √ Название объекта до 48 сим. (остальные будут обрезаны) CHR_ENG √ Название объекта. (англ.) IMG_TYPE √ Type для экспорта в txt-формат cGPSmap. IMG_RGN √ RGN для экспорта в txt-формат cGPSmap. Файлы .dbf подгружаются в зависимости от Map type. (см. заголовок). В версия 1.2. корректно работает ТОЛЬКО!!! с картами имеющими 8-ми значный кодификатор ВТУ. Это ВСЕ 2-х и 10 км. Для топо-планов городов пока только версия 1.1. L :-((( 2. Добавлен вывод ╚Атрибутов объекта╩ (Название, Количество жителей, Абсолютная высота, Номер дороги┘) Полный список атрибутов и их значений можно посмотреть в topo.atr. Вывод атрибутов в plt-файл производится при запуске с ключем, пример: cmap.exe √atr. (кодировка Win) Другие ключи програмы: -cod Разрешает вывод OBJECT_COD (восьмизначный кодификатор ВТУ) с лидирующим признаком (A, L, P) A - площадной объект; L - линейный объект; P - точечный объект. -no - Разрешает вывод OBJECT_NUM. (номер по Ингит) -ns - Разрешает вывод ╚номера сегмента объекта╩ (номер по Ингит) -met - Запрет вывода координат. -del - Разрешает вывод ╚свободных сегментов╩. (не принадлежащих ни одному объекту.) -sel - Вывод только выделеных в файле карты объектов. -std - Запрет вывода в файл. (вывод на экран) -dos - Запрет перекодировки Dos-Windows названий, имеет смысл при выводе на экран. Вывод ╚Атрибутов объекта╩ в plt-файл может повлиять на его правильное чтение Oziexplorer !!! 3. Предусмотрена возможность ╚посадки карты╩ (коррекция координат) методом афинных преобразований (по аналогии с OziExplorer). Параметры преобразований: A11, A12, B1, A21, A22, B2 расчитываются в файле Excel Affin.xls. И после переносятся в Affin.dat. Для преобразования нужно знать не менее 3-х ╚правильных╩ (измереных GPS) Lat, Lon координат точек. И их ╚неправильные╩ аналоги╩, полученные после после конвертирования из карт Ингига. Ключ √aff. (при отсутствии файла Affin.dat коррекция - не производится) http://ingit.narod.ru/cmap.htm Сергей. <br>

columb
Сообщения: 1077
Зарегистрирован: 20 авг 2001, 09:49

Низкий тебе поклон от всей ЖПС общественности (+)

Сообщение columb » 22 апр 2002, 15:15

ИМХО, исходники уже не нужны :))

Есть почти все что нужно. Не хватает самой малости - возможности выполнения без необходимости нажимать кнопку - запхал бы выходной формат в атрибуты - дешево и сердито.
Опосля cgpsmap приятно поражает скорость работы :) - похоже, все 1000 файлов отконвертятся не более чем за полчаса - cамое трудное в такой операции будет набрать их имена в cmap.dat :)). В принципе ленивый для этого может написать программу, а вот с кнопкой - никуда не денешься, придется сидеть и тысячу раз в нее пальцем тыркать.

Заметил маленький глючок :)
Неверно отрабатывается вызов:
cmap.exe -cod -ns -no -atr

Но он лечится легко:
нужно вызывать с атрибутами в порядке их описания:
cmap.exe -atr -cod -ns -no

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

Нужно всего-ничего:
при помощи strrchr отыскать последнее вхождение символа "\", если не найдется - то символа ":" и смонтировать имя файла на основе остатка строки, стоящего за этими символами. Пусть карты пишутся хотя бы в текущий каталог.

Но появилось одно смутное подозрение :).
Размер исходного двоичного файла 761К, файла результата (текстового) - 476К.
К тому-же номера объектов идут с 2501, зато идут ровнехонько дружка за дружкой - все идет к тому, что похоже, где-то я не на те пипки жамкаю :((. Поскольку делать ничего не осталось, тупо почитал описание.
Решение проблемы нашлось в первой же строчке:
>1. Добавлен выборочный экспорт объектов в plt-файл по кодификатору.
Недолго думая, поставил единички для каждого кода классификатора :)).

Гордый своей сообразительностью запустил cmap.exe.. :(((
И тут началось :(((. смап выкинул длинный список кодов объектов, после чего отвис и кнопку нажать не просит.
Подождал для успокоения совести 15 минут. убил при помощи ^C. Поглядел в файл - 0bytes size :(.

Неа, был неправ: пожалуй, исходники все-же нужны :)).
Или, мобыть, "фича" выборочного экспорта как-нить по-простому отключается?






dark1st
Сообщения: 2001
Зарегистрирован: 17 дек 2001, 16:08

а чем не нравиться _splitpath() ?(+)

Сообщение dark1st » 22 апр 2002, 16:23

оно разложит путь на имя диска, каталога, файла и расширения.
дальше sprintf (buff,"%s%s%s%s",req_disk,req_path,req_file,req_ext;

или strcpy , но там гимор надо еще иногда +strlen() писать.

Alecs

columb
Сообщения: 1077
Зарегистрирован: 20 авг 2001, 09:49

какие-то ламерские вопросы ты начал задавать? :) (+)

Сообщение columb » 22 апр 2002, 17:21

>а чем не нравиться _splitpath()
_splitpath мне не нравиТСя ;-) не только отсутствием ANSI совместимости, но и необходимостью писать более длинный исходный код - попробуй сравнить - написать как научил дедушка и как предлашаешь ты. Потом посчитай количество потребованных буковок для каждого варианта :)). А кажная буковка - это ведь по пипке тыркать. Вам, молодым, конечно все непочем, вы и МФС для разбора имен файлов легко можете пришпандорить...

А вот почему ты, такой умный, последовательно отстаивая свою идею, не предлагаешь собирать имя файла при помощи _makepath мне непонятно :))))))).

>или strcpy , но там гимор надо еще иногда +strlen() писать.
Паче-паче, понеже, иже еси херувими. Короче, языками не владеем :(. Стыдно, молодой человек :)).
Есть такая функция полезная, strcat называется :)). Ясна идея?

Написать что-нить полезное как грится днем с огнем не сыщешь, а вот советы давать...



dark1st
Сообщения: 2001
Зарегистрирован: 17 дек 2001, 16:08

Re: какие-то ламерские вопросы ты начал задавать? :) (+)

Сообщение dark1st » 22 апр 2002, 17:44

хмм... начнем stl прикручивать ?
:)

кстати, на личные ответишь ?
:)

Alecs

Kerg
Сообщения: 2878
Зарегистрирован: 22 авг 2000, 20:23

Но есть ошибочки и ошибочки....

Сообщение Kerg » 22 апр 2002, 20:30

:ИМХО, исходники уже не нужны :))

:Еще надо добавить вывод OFFSET объекта, сегмента, атрибута... - в файле.
И выключку преобразования в Географичекие координаты. (просят некоторые :-)))

:Есть почти все что нужно. Не хватает самой малости - возможности выполнения без необходимости нажимать кнопку - запхал бы выходной формат в атрибуты - дешево и сердито.

cmap.dat и задуман как "пакетый файл". (с параметрами)

: Опосля cgpsmap приятно поражает скорость работы :) - похоже, все 1000 файлов отконвертятся не более чем за полчаса - cамое трудное в такой операции будет набрать их имена в cmap.dat :)).

Долго стало работать, ошибочка вкралась... CIngitMercatorProjection вызывается не один раз (в начале), а каждый раз перед выводом нового сегмента.

Да и что-то большой размер .exe получился. :-)))

С DBF файлом немного запутался, пришлсь пожертвовать в файле (пока),
место для хранения указателей записей. (при их динамическом размещении)
размер cmap.exe уменьшится на 30-40%).

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

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

Естественно, разбор командной стороки претерпит изменения...
и "менющка" тоже пропадет...

:Можно использовать вывод на консоль с последующим его переназначением, но мешает кнопка и шапка вывода.

Да... в автоских правах ничего не сказано о запрете
копирования на Консоль..:-)))

:Нужно всего-ничего: при помощи strrchr отыскать последнее вхождение символа "\", если не найдется - то символа ":" и смонтировать имя файла на основе остатка строки, стоящего за этими символами. Пусть карты пишутся хотя бы в текущий каталог.

: Но появилось одно смутное подозрение :).
: Размер исходного двоичного файла 761К, файла результата (текстового) - 476К.

Имя файла, прилиз...???

: К тому-же номера объектов идут с 2501, зато идут ровнехонько дружка за
: дружкой - все идет к тому, что похоже, где-то я не на те пипки жамкаю :((.
>1. Добавлен выборочный экспорт объектов в plt-файл по кодификатору.
: Недолго думая, поставил единички для каждого кода классификатора :)).

: Гордый своей сообразительностью запустил cmap.exe.. :(((
: И тут началось :(((. смап выкинул длинный список кодов объектов, после чего
: отвис и кнопку нажать не просит.

: Подождал для успокоения совести 15 минут. убил при помощи ^C. Поглядел в файл - 0bytes size :(.

За 15 минут долны конвертироваться все CD Ингит. :-)))
Имя файлика скажи...

: Неа, был неправ: пожалуй, исходники все-же нужны :)).
: Или, мобыть, "фича" выборочного экспорта как-нить по-простому отключается?

Вот это здравая мысль, нано добавить "откл". выборочный экспорт.

Сергей.


Kerg
Сообщения: 2878
Зарегистрирован: 22 авг 2000, 20:23

Re: Заметил маленький глючок :)

Сообщение Kerg » 22 апр 2002, 20:44

:Неверно отрабатывается вызов:
:cmap.exe -cod -ns -no -atr

что именно не так?

:Но он лечится легко:
:нужно вызывать с атрибутами в порядке их описания:
:cmap.exe -atr -cod -ns -no

У меня эти две строки дают одинаковый результат. :-)))
При глюках упоминай всегда имя файла карты.

Сергей.


columb
Сообщения: 1077
Зарегистрирован: 20 авг 2001, 09:49

Пожалуй, теперь моя очередь спрашивать :) (+)

Сообщение columb » 22 апр 2002, 20:47

>хмм... начнем stl прикручивать ?
А че-это за зверь такой, stl. Может рука мастера дрогнула с буковки a на s?

>кстати, на личные ответишь ?
уже, уже :).




Kerg
Сообщения: 2878
Зарегистрирован: 22 авг 2000, 20:23

Re: это точно... мы темные, документации не читаем... :-)))

Сообщение Kerg » 22 апр 2002, 21:04

:попробуй сравнить - написать как научил дедушка и как предлашаешь ты.

А помним только дедушкины: strchr, isdigit, isalpha, iswhite... :-)))

Сергей.


columb
Сообщения: 1077
Зарегистрирован: 20 авг 2001, 09:49

Имя карты,- имя карты :))

Сообщение columb » 22 апр 2002, 21:09

какое було, такое и осталось :))
n-37-02.gem. Попробовал o-36-01.gem, результат тот-же. Висит на пол-шестого.

>что именно не так?
В результате вызова cmap.exe -cod -ns -no -atr (до внесения изменений в БД) создается файл размером 3.5М, но без номеров объектов, сегментов, кодов и атрибутов.







Ответить

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

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