отображение/слияние нескольких сотен слоёв
Добавлено: 03 сен 2009, 10:14
Коллеги, стоит следующая задача: объединить (сделать так, чтобы отображались одновременно) несколько десятков векторных карт (довольно маленьких) на населённые пункты, каждая из которых содержит штук по 30 слоёв в одну-единственную, и перевести её в другую систему координат (можно сначала перевести имеющиеся карты в другую СК, а потом объединять их).
1. Для каждой карты существует свой рабочий набор.
2. Слои (типы отображаемых объектов) почти одни и те же для каждой карты, но их набор варьируется от карты к карте, названия слоёв не во всех картах совпадают (это не проблема, ибо есть хороший именатор).
3. Структуры таблиц одной карты не совпадают, но могут быть приведены к одному виду.
4. Структура таблиц одинаковых тематических слоёв разных карт варьируется от карты к карте, однако, содержание этих таблиц несёт полезную смысловую нагрузку только в редких случаях, а значит, последняя может быть без сожалений потеряна при последующих операциях.
Как мне объединить карты с наименьшими трудозатратами?
Я пока рассматриваю следующие варианты:
1. Взять за основу один из рабочих наборов и вставлять в него информацию из остальных рабочих наборов (каждому слою предварительно будет присвоено уникальное имя). В результате у меня будет мега-рабочий набор в котором будет около 1000 слоёв
Здесь меня беспокоит производительность при работе с таким количеством слоёв и вообще, я сомневаюсь, что мапинфо поддерживает работу с таким количеством слоёв.
2. Для всех таблиц одной карты сделать одинаковую структуру (1 столбик "id"
) и создать сшитую таблицу, содержащую все слои одной карты; а затем, добавлять в конечный рабочий набор сшитые слои. (Пересчёт в нужную СК здесь будет проведён заранее). Опять же в этом случае волнует производительность при работе с конечной картой, ибо сшитый слой сам-по себе представляет что-то вроде рабочего набора и физически не содержит в себе информации, содержащейся в сшитых таблицах (поправьте, если я ошибаюсь).
3. Копировать все объекты из одинаковых (по характеру отображаемых объектов) слоёв разных карт в 1 слой. Итог - 30 слоёв. Но тут ещё наверное надо каждому объекту забить в атрибуты название населённого пункта к которому он относится
, ибо слой с границами отсутствует(((
4. Самый халявный способ: покидать все объекты всех слоёв одной карты в 1 или 2 слоя, благо мапинфо позволяет
Не спортивно...
5. ...Ваши предложения))) может что-то с организацией базы данных (я правда не силён в этом)?
1. Для каждой карты существует свой рабочий набор.
2. Слои (типы отображаемых объектов) почти одни и те же для каждой карты, но их набор варьируется от карты к карте, названия слоёв не во всех картах совпадают (это не проблема, ибо есть хороший именатор).
3. Структуры таблиц одной карты не совпадают, но могут быть приведены к одному виду.
4. Структура таблиц одинаковых тематических слоёв разных карт варьируется от карты к карте, однако, содержание этих таблиц несёт полезную смысловую нагрузку только в редких случаях, а значит, последняя может быть без сожалений потеряна при последующих операциях.
Как мне объединить карты с наименьшими трудозатратами?
Я пока рассматриваю следующие варианты:
1. Взять за основу один из рабочих наборов и вставлять в него информацию из остальных рабочих наборов (каждому слою предварительно будет присвоено уникальное имя). В результате у меня будет мега-рабочий набор в котором будет около 1000 слоёв

2. Для всех таблиц одной карты сделать одинаковую структуру (1 столбик "id"

3. Копировать все объекты из одинаковых (по характеру отображаемых объектов) слоёв разных карт в 1 слой. Итог - 30 слоёв. Но тут ещё наверное надо каждому объекту забить в атрибуты название населённого пункта к которому он относится

4. Самый халявный способ: покидать все объекты всех слоёв одной карты в 1 или 2 слоя, благо мапинфо позволяет

5. ...Ваши предложения))) может что-то с организацией базы данных (я правда не силён в этом)?