Предлагаем вашему вниманию первый из цикла материалов, посвященных приемам работы в популярной программе GeoniCS Топоплан-Рельеф-Генплан. Эти материалы помогут пользователям самостоятельно освоить продукт, а также узнать о его новых возможностях, которые будут появляться в приложении к AutoCAD 2004.

Тема этой статьи — создание цифровой модели рельефа из тех исходных данных, которые обычно имеются у проектировщиков генплана или изыскателей. Перечислим три наиболее распространенных варианта:

  1. Топоплан только на твердом носителе (бумага, планшет).
  2. Топоплан в виде DWG-файла, примитивы которого имеют нулевую отметку по оси Z.
  3. Текстовый файл с координатами и отметками точек съемки, полученный в результате обработки полевых наблюдений.

Рассмотрение вариантов начнем с самого трудоемкого.

Создание модели рельефа по растровой подложке

Напомню, что создание корректной модели рельефа потребует качественной растровой подложки. Следовательно, в программе RasterDesk (или Spotlight, если удобнее задействовать машину без AutoCAD) вам понадобится выполнить минимальный набор операций:

  • сканирование исходного материала с разрешением 300−400 dpi;
  • автоматическая чистка полученного файла, удаление «мусора» (эта операция значительно улучшает вид выводимых на печать документов и сокращает размер файлов);
  • редактирование растрового изображения: удаление, добавление или перенос частей растра;
  • калибровка растра: корректировка геометрических искажений по координатной сетке или любому набору опорных точек;
  • сшивка отсканированных фрагментов в один файл.
Рис. 1. Фрагмент растрового изображения до и после чистки Рис. 1. Фрагмент растрового изображения до и после чистки

Итак, мы получили растровый файл с изображением топоосновы — без «мусора» и геометрических искажений. Запускаем GeoniCS.

Рис. 2 Рис. 2
  1. Задаем масштаб итогового чертежа (рис. 2).
    Указанный масштаб повлияет только на размер отображаемых внемасштабных условных знаков, текстов, ширину полилиний. Все координаты и размеры в пространстве модели чертежа должны соответствовать реальным числам, выраженным в метрах (одна единица AutoCAD равна одному метру). Чертеж указанного масштаба программа сформирует в пространстве листа (layout).
  2. Создаем проект, то есть папку с файлами и подпапками, в которых GeoniCS сохраняет модели поверхностей, созданных по данному объекту, базу точек съемки и т. д. Создать модель поверхности, не указав имя проекта, невозможно!
    Рис. 3 Рис. 3
    Для этого выбираем в Панели навигатора (левое окно на рис. 3) команду Открыть проект. В появившемся одноименном окне указываем путь для хранения папки проекта и нажимаем кнопку Создать проект. Открывается окно Детали проекта: здесь нужно ввести имя проекта (как правило, оно соответствует названию объекта). Имя проекта становится и именем папки, которая образуется по указанному пути.
  3. Сохраняем чертеж в подпапке DWG нашего проекта. Операция выполняется средствами AutoCAD (Файл -> Сохранить).
  4. Средствами AutoCAD (Вставка -> Растровое изображение) вставляем растр в чертеж. Поскольку следующим шагом мы привяжем растр к истинным координатам, вставка осуществляется в любую точку чертежа и с любым масштабом.
  5. Привязываем растр, то есть позиционируем его в изыскательской системе координат. Для выполнения операции нам достаточно знать координаты двух точек топоплана, желательно находящихся на его противоположных краях: к примеру, могут использоваться нижний левый крест и нижний правый. Операция выполняется средствами AutoCAD (Редактирование -> 3М-операции -> Выравнивание или _Align из командной строки). На запрос «Выберите объекты» щелкаем по рамке растра, указываем центр первого креста, вводим с клавиатуры его координаты, указываем центр и вводим координаты второго креста, нажимаем ENTER и отвечаем «Да» на запрос «Масштабировать объекты?». Все остальные кресты и опорные точки должны оказаться в соответствующих координатах, ведь растр откалиброван! Имея такой чертеж, мы можем стандартными средствами AutoCAD узнать координаты любой точки плана, измерить расстояния и т. д. — модель должна максимально точно отображать действительность. А где же чертеж заданного масштаба? Масштабированное отображение модели, рамка и зарамочное оформление автоматически генерируются программой в пространстве листа. Все измерения здесь приводятся в миллиметрах.
  6. Скрываем зарамочное оформление бумажного носителя: в процессе калибровки рамка и штампы могли исказиться. Проще всего это сделать, щелкнув по рамке растра левой кнопкой мыши и нажав правую кнопку (рис. 4). Функция Clip позволяет задавать прямоугольную или многоугольную границу обрезки растра.
    Рис. 4 Рис. 4
  7. С помощью команды Оформление топопланшетов оформляем чертеж топографического плана в виде планшета.
    Рис. 5 Рис. 5
    Программа предлагает вариант разбиения модели на планшеты (голубые линии на рис. 5). Выбрав по правой клавише режим «Переместить», можно редактировать положение планшетов — например, введя координаты угла планшета с клавиатуры. Планшет заданного масштаба формируется в пространстве листа (рис. 6), сама же модель не засоряется элементами зарамочного оформления.
    Рис. 6 Рис. 6

    Если в дальнейшем вы собираетесь передавать чертеж соисполнителю, не забудьте передать и файл растрового изображения: чертеж DWG содержит только ссылку на файл растра и параметры его вставки. Кстати, в выпадающем меню Файл AutoCAD есть очень хорошая команда Сформировать комплект, как раз и предназначенная для компактной передачи данных. Она формирует файл самораспаковывающегося архива, в котором содержатся и сам DWG, и необходимые файлы растров, и даже файлы использованных шрифтов…

    Вернемся теперь в пространство модели и приступим наконец к созданию модели рельефа.

  8. Создаем в нашем проекте модель поверхности с именем «Рельеф». Для этого выбираем в Панели навигатора команду Проводник моделей рельефа и в открывшемся окне Проводник проекта указываем Создать поверхность (соответствующее контекстное меню появится при нажатии правой клавиши на папке Поверхности). Имя поверхности задается в окне Создать поверхность (рис. 7).
    Рис. 7 Рис. 7

    Мы дали имя модели поверхности, но для ее построения нам понадобится создать ряд объектов, имеющих не только соответствующие координаты (X, Y), но и высотные отметки (Z).

  9. Цифруем горизонтали. Для этого выбираем в Панели навигатора команду Дигитализация горизонталей, задаем имя слоя, на котором будут отрисованы горизонтали, и отметку горизонтали, с которой начнется оцифровка. Устанавливаем интервал горизонталей и выбираем для них яркий цвет — иначе результаты оцифровки будут видны не очень хорошо (рис. 8).
    Рис. 8 Рис. 8

    Завершив оцифровку горизонтали, можно по правой клавише выбрать команду Замкни или Enter, а затем «+» или «-» (в этом случае отметка следующей горизонтали изменится на заданный интервал) либо ввести любую отметку с клавиатуры и выполнить оцифровку следующей горизонтали. Цифровать все горизонтали не обязательно: если мы работаем с фрагментом, где горизонтали расположены параллельно и на одинаковом расстоянии, достаточно оцифровать первую и последнюю из них.

  10. Добавим созданные горизонтали в состав исходных данных для построения модели «Рельеф». Входим в Проводник проекта, находим тему «Горизонтали», нажимаем правую клавишу мыши и выбираем Добавить данные горизонталей (рис. 9). Далее задаем параметры «прополки» горизонталей (эта операция необходима для упрощения линий, полученных при автоматической векторизации растра) и указываем, с какого слоя взять примитивы.
    Рис. 9 Рис. 9

    Добавленная информация отображается в окне Проводника проекта (рис. 10).

    Рис. 10 Рис. 10
  11. После оцифровки горизонталей остается оцифровать характерные точки плана: на вершинах и в местах с редким расположением горизонталей. Для этого выбираем в Панели навигатора команду Создать геоточки -> Вручную, последовательно указываем местоположение точек и вводим их отметки (рис. 11).
    Рис. 11 Рис. 11

    Оцифрованные точки попадают в базу данных проекта, где их можно просматривать, сортировать, редактировать и объединять в группы.

  12. Создаем группу оцифрованных геоточек: в Панели навигатора указываем команду Список геоточек, а в одноименном окне выбираем режим Все геоточки и нажимаем кнопку Создать группу. Открывается окно Создать группу геоточек — здесь мы вводим имя группы (рис. 12).
    Рис. 12 Рис. 12
  13. Добавляем созданную группу геоточек в состав исходных данных для построения модели «Рельеф». Для этого в Проводнике проекта нажимаем правую клавишу мыши на теме Группы геоточек и выбираем в появившемся контекстном меню строку Добавить группу. Открывается окно, в котором мы выбираем соответствующую группу (рис. 13).
    Рис. 13 Рис. 13
  14. Создаем границу модели — ее важно задать в том случае, когда граница съемки имеет вогнутости, и программа может построить модель в тех участках, где съемка фактически не проводилась. В Проводнике проекта, щелкнув правой клавишей на теме Границы, выбираем Отрисовать внешнюю и в появившемся окне Параметры ввода границы (рис. 14) задаем Брать из указанной точки как способ получения координат и отметки.
    Рис. 14 Рис. 14

    Имейте в виду, что отметки вершин границы поверхности участвуют в построении модели, поэтому следует использовать объектную привязку к вершинам горизонталей и узлам геоточек. Для контроля программа выводит отметку каждой вершины в командной строке — ее нужно или подтвердить щелчком по правой клавише мыши, или ввести с клавиатуры другое значение. Не забудьте замкнуть отрисованную границу.

  15. Строим модель рельефа. В Панели навигатора выбираем функцию Построить (меню, где находится эта строка, вызывается нажатием правой клавиши на имени поверхности). Появляется окно Свойства поверхности (рис. 15), где нужно выбрать опции Использовать данные групп геоточек, Использовать данные горизонталей, Отрисовать 3D-гранями.
    Рис. 15 Рис. 15

    Отрисованные 3D-грани представляют собой адекватное графическое отображение математической модели поверхности, которая хранится в соответствующих файлах проекта независимо от чертежа DWG. Мы отрисовали 3D-грани только для того, чтобы отобразить на экране результат построения (рис. 16).

    Трехмерные грани можно просматривать с помощью 3D-орбиты и тонировать (рис. 17).

    Рис. 17 Рис. 17
  16. Редактируем модель. В состав GeoniCS включен уникальный редактор поверхностей, позволяющий быстро и наглядно корректировать модель, делая ее максимально адекватной. Выбираем в Панели навигатора функцию Редактор и в появившемся окне Настройки редактора поверхности задаем имя слоя для отрисовки 3D-граней, а также цвет и интервал виртуальных горизонталей, которые в процессе редактирования будут отображать состояние модели (рис. 18).
    Рис. 18 Рис. 18

    Редактируя модель, мы можем применять следующие операции: флип (переброска ребер треугольников), изменение отметки вершины (при этом меняются отметки вершины всех сопряженных треугольников), перемещение вершины, вставка вершины, вставка грани (ее часто называют треугольником), удаление грани. На рис. 19 можно видеть, как выгодно отличается вид горизонтали слева от отметки 87.35 после выполнения операции Флип; теперь нужно выполнить флип справа…

    Рис. 19 Рис. 19

    Работа над моделью завершается ее тщательным просмотром и редактированием. После этого можно передавать чертеж и папку проекта проектировщикам — именно там, в папке, а не в чертеже хранится модель рельефа.

Создание модели рельефа по старому DWG-чертежу

Допустим, имеется старый DWG-файл, где расположение объектов в пространстве модели не соответствует их изыскательским координатам, горизонтали отрисованы полилиниями на отметке 0, а точки съемки — блоками с атрибутом, в котором содержится отметка. Создание модели рельефа по этому чертежу не потребует много сил и времени.

  1. Открываем старый чертеж в программе GeoniCS 2004 (рис. 20).
    Рис. 20 Рис. 20
  2. Позиционируем чертеж в изыскательской системе координат. Для выполнения этой операции нам достаточно знать координаты двух точек съемки, отображенных на чертеже и желательно находящихся на его противоположных краях. На запрос «Выберите объекты» выбираем рамкой весь чертеж, указываем (с привязкой к узлу блока) первую точку, вводим ее координаты с клавиатуры, указываем вторую точку, вводим ее координаты, нажимаем ENTER и на запрос «Масштабировать объекты?» отвечаем «Да».
  3. Задаем масштаб готового чертежа, выбрав команду в разделе Установки Панели навигатора (рис. 21).
    Рис. 21 Рис. 21
  4. Создаем проект 1.
  5. Сохраняем рисунок нового формата в подпапке DWG папки созданного проекта.
  6. Создаем поверхность с именем «Рельеф».
  7. Задаем отметки горизонталям нашего чертежа. Для этого выбираем в Панели навигатора команду Изменить отметку горизонтали, поочередно указываем каждую горизонталь и вводим в командной строке ее настоящую отметку (рис. 22).
    Рис. 22 Рис. 22
  8. Добавляем горизонтали в состав исходных данных для построения модели «Рельеф» — это предпочтительнее делать, предварительно выбрав по правой клавише опцию По слою. Если горизонтали были отрисованы на разных слоях, придется указать по одному примитиву каждого слоя.
  9. Создаем геоточки по имеющимся в чертеже блокам. Для этого выбираем команду Вставка блока с атрибутами из раздела Создать геоточки -> Примитивы (рис. 23). На запрос «Укажите блок» следует выбрать блок, отображающий в исходном чертеже точки с отметками, а в появившемся окне указать, из какого атрибута нужно взять отметку точки. После этого выбираем все соответствующие блоки опцией По слою.
    Рис. 23 Рис. 23
  10. Создаем из полученных геоточек группу «Рельефные».
  11. Добавляем эту группу в состав исходных данных для построения модели «Рельеф».
  12. Строим модель поверхности «Рельеф».

Создание модели рельефа по файлу координат точек съемки

Допустим, в нашем распоряжении имеется текстовый файл, представленный на рис. 24.

Рис. 24 Рис. 24

Мы видим здесь пять колонок данных, разделенных пробелами. В первой колонке — номер точки съемки, во второй — координата Х, в третьей — Y, в четвертой — отметка, в пятой — описание точки.

  1. Создаем чертеж и открываем проект.
  2. Создаем поверхность «Рельеф».
  3. Создаем новый формат для импорта данных из текстового файла, для чего запускаем Менеджер форматов и в появившемся окне нажимаем кнопку Добавить (рис. 25).
    Рис. 25 Рис. 25

    В появившемся окне Формат файла точек (рис. 26) вводим имя формата, расширение импортируемого файла, отмечаем опцию С разделителем и обязательно вставляем в окошко рядом символ пробела. Затем нажимаем кнопку Добавить колонку и выбираем назначение первой колонки, снова нажимаем кнопку Добавить колонку и т. д. Для проверки правильности созданного формата можно здесь же загрузить и просмотреть исходный файл (кнопки Загрузить и Анализ).

    Рис. 26 Рис. 26
  4. Импортируем точки из текстового файла (рис. 27). Выбираем команду Импорт из файла и в появившемся окне указываем (через кнопку выбора) имя импортируемого файла и формат импорта. Точки импортируются очень быстро и попадают в базу проекта. Согласитесь, это гораздо удобнее, чем вводить их вручную!
    Рис. 27 Рис. 27
  5. Создаем группу точек.
  6. Добавляем группу точек в данные поверхности «Рельеф».
  7. Строим модель поверхности, отметив в окне Свойства поверхности (рис. 28) опцию Добавить данные с высотой больше чем. Дело в том, что в импортированном файле содержались точки без отметок (ситуационные), и эта опция отфильтрует их.
    Рис. 28 Рис. 28
  1. Во всех случаях, когда пункт приводится без комментария, смотрите соответствующий пункт раздела «Создание модели рельефа по растровой подложке».