Это не один вопрос, а примерно пара десятков

.
1. Выделить горизонтали из проекта (видимо из растра?)
См:
Для 8.7
Урок 4.Оцифровка рельефаДля 7.99.
Как в 7.99 выделить линии из растра (JPEG,сепия и т. д.)Что делать если горизонтали сливаются?2. Проставить высоты изолиниям
См:
Урок 5.Простановка высот3. Если изолинии разбиты по слоям в зависимости от типа (пр. Основные, Утолщённые, Дополнительны) следует:
- создать новый слой, например ALL_TYPE_ISOLINES;
- добавить к нему таблицу атрибутов с двумя полями Type - тип изолинии, и Z - уровень изолинии;
- выбрать (Групповым редактором, выбор по критерию Слой+Тип объектов) все изолинии слоя Основные и изменить текущий слой (перенести на слой) на ALL_TYPE_ISOLINES;
- Перенесённые лини остаются ВЫБРАННЫМИ Групповым редактором, поэтому нажимаем правую клавишу и из выпавшего меню выбираем Редактирование атрибутов.
Присваиваем всем ВЫБРАННЫМ линиям тип Основные;
- Повторяем перенос и присвоение типа линиям со слоёв Утолщённые и Дополнительные;
- Выполняем Утилиты->Базы данных->Перенос Z в/из базы данных.
(То е. записываем собственные значения Z изолиний в атрибутивное поле Z);
4. Экспортируем ALL_TYPE_ISOLINES как SHP.