Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Картографія.docx
Скачиваний:
36
Добавлен:
06.09.2019
Размер:
112.54 Кб
Скачать

18.Структури та формати даних у цифровій картографії. Структура файлів mif, mid (Mapinfo).

Файл (англ. file - папка, швидкозшивач) - концепція в обчислювальній техніці: сутність, яка дає змогу отримати доступ до якого-небудь ресурсу обчислювальної системи, що володіє рядом ознак: фіксоване ім'я (послідовність символів, число чи щось інше, однозначно характеризує файл) ; певне логічне представлення і відповідні йому операції читання / запису.

Може бути будь-який - від послідовності біт до бази даних з довільною організацією або будь-яким проміжним варіантом.

Першому варіанту відповідають операції читання / запису потоку та / або масиву (тобто послідовні, або з доступом по індексу), другому - команди СУБД. Проміжні варіанти - читання і розбір всіляких форматів файлів.

MIF-файл. Цей універсальний формат дозволяє зіставляти різним графічним елементам дані налаштування. MIF-файл є текстовим (ASCII), тому файли в такому форматі можна редагувати, досить легко генерувати, причому вони будуть працювати в будь-яких системах, де працює Mapinfo. Можливо, оптимальним способом вивчення Mapinfo Interchange Format (MIF) є перегляд прикладу, наведеного в кінці цього додатку, по ходу читання опису формату. Також можна створити інші приклади, експортувавши які-небудь файли у формат MIF, а потім переглядати їх у текстовому редакторі.

Дані Mapinfo зберігаються у двох файлах. Графічна інформація міститься у файлах з розширенням MIF, а текстова у файлах з розширенням MID. Кожен рядок текстових даних відділяється від наступного рядка або символом повернення каретки (Carriage Return), або повернення каретки разом з новим рядком (Line Feed), або тільки символом нового рядка. MIF-файл складається з двох частин: заголовка і секції даних. Заголовок файлу містить інформацію про те, як створювати таблиці Mapinfo, а секція даних містить визначення графічних об'єктів.

Заголовок файлу формату MIF. Заголовок файлу формату MIF має такий вигляд (у квадратні дужки взята інформація, яка може бути відсутня).

VERSION n, [DELIMITER "<з>"], [UNIQUE n, n.. ], [INDEX n, n.. ], [COORDSYS ...]

[TRANSFORM ...], COLUMNS n <ім'я> <тип> <ім'я> <тип>

Як було сказано вище, Ви повинні вказати, до якої версії MIF-формату відноситься файл: VERSION 1 або VERSION 2. У версії Version 2 можуть бути присутніми пропозиції COORDSYS і TRANSFORM.

Delimiter (Роздільник)

Тут у подвійних лапках вказується символ, що використовується в якості роздільника, наприклад: DELIMITER ";". Стандартне значення роздільника - символ табуляції; при використанні стандартного розділювача рядок DELIMITER може бути опущена.

Unique (Унікальна колонка) Тут задається число. Це число вказує на стовпчик у базі

даних: 3 вказує на третій стовпець, 7 - на сьомий і так далі. Що відбувається зі стовпцями, перерахованими в списку UNIQUE? Уявімо, наприклад, що є база даних по шосейних дорогах. Кожному шосе відповідає єдина назва, але шосе може розпадатися на декілька ділянок (яким зіставлені окремі записи). Помістіть стовпець NAME до списку UNIQUE, а стовпець сегментів не вказуйте в цьому списку. У результаті будуть створені дві з'єднані таблиці: таблиця імен і таблиця інших атрибутів об'єктів. Саме таким чином розроблялися різні таблиці вулиць для Mapinfo (таблиці Streetinfo).

Index (Індекс) Тут задається число. Це число вказує на стовпчик у базі даних: 3 вказує на третій стовпець, 7 - на сьомий і так далі. Для стовпців, перелічених у списку INDEX, створюються індекси.

Пропозиція CoordSys (Координатна система) Пропозиція COORDSYS задається для того, щоб вказати, що даних зберігаються HЕ у формі широти довготи. Якщо пропозиція COORDSYS відсутній, то передбачається, що дані наведені у формі широта / довгота. Всі координати наводяться щодо північно-східного квадранта. Координати об'єктів на території США мають негативну координату X, а координати об'єктів в Росії і Європі (на схід від Грінвіча) мають позитивні координати по осі X. Об'єктах в північній півкулі відповідають позитивні координати Y, а об'єктах в південній півкулі - негативні координати Y.

Пропозиція Transform (Перетворення) Якщо у файлі MIF записані координати щодо північно-західного квадранта (квадрант 2), то Ви можете задати перетворення цих координат до північно-східного квадранту (квадрант 1).

Якщо Ви працюєте з програмою, що створює файли формату MIF з координатами для квадранта 2, Ви можете:

- Додавати пропозиції TRANSFORM у файли MIF;

- Внести зміну в програму, щоб вона виробляла координати

для квадранта 1;

- Внести зміну в програму, щоб вона додавала пропозицію

TRANSFORM в кожен MIF-файл.

Файл MID повинен містити наступні три стовпці даних, зазначені в заголовку: стовпець STATE: 15-символьне поле; стовпець POPULATION: поле цілих чисел; стовпець AREA: поді десяткових чисел, що складаються з не більш ніж 8 цифр, в тому числі з 4 цифр після коми.

Секція даних у файлах формату MIF.Секція даних у файлах формату MIF слід після заголовка і повинна починатися зі слова DATA на окремому рядку:

DATA. Секція даних MIF-файла може містити будь-яке число графічних примітивів, по одному для кожного графічного об'єкта. Mapinfo порівнює розділи файлів формату MIF і MID, зіставляючи першого об'єкту в MIF-файлі перший рядок MID-файлу, другому об'єкту MIF-файлу другий рядок MID-файлу і так далі. Якщо для рядка MID-файлу не знайдено відповідного графічного об'єкта, то створюється "порожній" об'єкт (NONE) у відповідній позиції MIF-файлу.

NONE. Це можуть бути такі графічні об'єкти: - місце - лінія - ламана - область - дуга - текс - прямокутник - округлений прямокутник – еліпс.

Об'єкт типу точка має два параметри: координату Х і координату Y. Може також бути зазначено вид символу, яким позначається дання крапка. Для символу вказується номер. Якщо не вказаний символ, для позначення точки використовується поточний символ.

POINT x у [symbol (вид, колір, розмір)] Об'єкт типу лінія повинен мати чотири обов'язкових параметра; координати Х і Y для двох кінцевих точок. Може також бути вказаний тип лінії. Якщо тип лінії не заданий, то використовується поточний тіп ліній.

LINE х1 у1 х2 у2 [PEN (ширина, тип, колір)] Для об'єкта типу ламана повинні бути задані координати Х і Y для всіх вершин ламаної. Число вершин (numpts) ламаної вказується після ключового слова PLINE. Може також бути вказаний тип лінії та наявність згладжування. Якщо явно не вказано, що ламана згладжена (SMOOTH), то передбачається, що вона не згладжена. PLINE numpts x1 y1 x2 y2 [PEN (ширина, тип, колір)] [SMOOTH]

Файл формату MID. Файл формату MID містить записи, між якими стоять роздільники, задані в пропозиції Delimiter. Стандартний розділювач - символ табуляції. Кожен рядок в MID-файлесоответствует об'єкту в MIF-файлі: перший рядок відповідає першому об'єкту, другий рядок другого об'єкту і так далі.

Якщо символ-роздільник є частиною запису, укладіть такий запис у подвійні лапки.

Файл формату MID може бути відсутнім. У цьому випадку створюються порожні поля.