Научная статья на тему 'Автоматизация процесса визуализации проектных решений в среде AutoCAD'

Автоматизация процесса визуализации проектных решений в среде AutoCAD Текст научной статьи по специальности «Строительство и архитектура»

CC BY
400
67
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Вестник МГСУ
ВАК
RSCI
Ключевые слова
СОЛНЕЧНОЕ ОСВЕЩЕНИЕ / SOLAR LIGHTING / РАССЕЯННОЕ ОСВЕЩЕНИЕ / AMBIENT LIGHTING / AUTOCAD / ФОТОРЕАЛИСТИЧЕСКАЯ ВИЗУАЛИЗАЦИЯ / PHOTOREALISTIC VISUALIZATION / АЗИМУТ СОЛНЦА / AZIMUTH OF THE SUN / ПОВОРОТ ТОЧКИ / TURNING POINTS / ОДНОРОДНЫЕ КООРДИНАТЫ / HOMOGENEOUS COORDINATES / ПРОГРАММА НА VB

Аннотация научной статьи по строительству и архитектуре, автор научной работы — Лебедева Ирина Михайловна, Синенко Сергей Анатольевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Automation of the process of visualization applicable to design solutionsin the autocad environment

The authors provide a brief description of the software algorithm designed to automatize some of the final stages of design and research into buildings and structures, namely, computer-aided realistic visualization of a simulated object in the AutoCAD environment. Special attention is driven to realistic shadows that are important whenever a construction site is positioned within the environment. The software simulates sunlight by creating a remote source of light. Diffused light is generated by a set of three additional sources of light. The software algorithm is based on a pattern of light sources simulating sunlight and skylight. The point of location of each additional source of light is pre-set by the software operator. This point is identified by the software as the set of coordinates calculated using a special subroutine. The article has a table of sun angles for any time of the day and each month of the year at the latitude of Moscow.

Текст научной работы на тему «Автоматизация процесса визуализации проектных решений в среде AutoCAD»

УДК 69:004.43

И.М. Лебедева, С.А. Синенко

ФГБОУ ВПО «МГСУ»

АВТОМАТИЗАЦИЯ ПРОЦЕССА ВИЗУАЛИЗАЦИИ ПРОЕКТНЫХ РЕШЕНИЙ В СРЕДЕ AUTOCAD

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

Ключевые слова: солнечное освещение, рассеянное освещение, AutoCAD, фотореалистическая визуализация, азимут солнца, поворот точки, однородные координаты, программа на VB.

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

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

Для автоматического выполнения реалистической визуализации моделей проектируемых строительных объектов в среде AutoCAD было разработано специальное приложение.

Приложение создано на алгоритмическом языке Visual BASIC for Applivations (VBA). Средой разработки может служить встроенный в AutoCAD редактор VBA или редактор Visual Studio. Такие приложения могут использоваться как самостоятельные программы или в системе AutoCAD непосредственно из текущего чертежа.

Язык VBA имеет ряд преимуществ для разработки приложений для AutoCAD:

прозрачная логика; простой синтаксис;

дружественный интерфейс как редактора VisualStudio, так и встроенного в AutoCAD редактора VisualBasic;

возможность обработки ошибок; возможность компиляции в режиме отладки; варианты конечной компиляции в P-код либо в машинный код. Основная цель приложения — создание и настройка освещения, подготовка и выполнение операции реалистической визуализации моделируемых строительных объектов.

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

Такое решение вызвано рядом причин. В AutoCAD имеется такой вид освещения, как солнечный. Для его настройки требуется задать географическое положение и время суток. Солнечное освещение является фотометрическим, т.е. все параметры света: интенсивность излучения, цвет и т.д., — являются стандартными, недоступными для редактирования. Включение солнца в AutoCAD не вызывает трудностей. Освещение получается бледно серым с резкими тенями. Для включения небесного отраженного освещения пользователь должен обладать определенными знаниями и навыками. Требуется провести ряд операций, связанных с созданием именованного вида с фоном «Солнце и небо» и с подключением небесного освещения. Создание такого вида полностью исключает использование в качестве фона, например, фотографию реальной окружающей среды. Кроме того, временные затраты на визуализацию увеличиваются.

В разработанном приложении роль солнца будет выполнять удаленный источник света. Его положение определяется лишь направлением света, лучи параллельны, интенсивность не меняется с расстоянием. Форма теней, соответственно, также не искажается, как и в случае солнечного освещения. Значит, картина теней будет приближена к реальной.

Пользователь после старта приложения должен будет определиться с временем суток и выбрать время года (месяц). Также пользователю придется задать направление на север, для того чтобы в зависимости от времени определить направление лучей. Все параметры освещения, такие как яркость, цвет, будут настроены автоматически. Тени также будут иметь различные густоту, цвет и мягкость кромок в зависимости от времени суток.

Рассеянное освещение будет создаваться за счет взаимодействия двух дополнительных удаленных источников света. Все они будут иметь отключенную функцию формирования теней, их интенсивность и положение будут соответственно рассчитаны. Дополнительное освещение предназначено для подсветки неосвещенных областей.

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

Для вычисления параметров основного освещения от пользователя потребуется определиться со сторонами света, временем года и временем суток. Это осуществляется в специальной форме в диалоговом режиме.

Далее в программе создается пользовательская система координат ПСК-Компас, начало координат при этом совпадает с центром композициии и лежит в нулевой плоскости, направление оси Y совпадает с направлением на север, а направление оси X — на восток.

ВЕСТНИК

МГСУ-

В процессе расчета направления основных лучей приходится обращаться к матричной алгебре и аналитической геометрии.

На плоскости точку представляют с помощью двух ее координат. Их значения можно рассматривать как элементы матрицы Р[ху], т.е. в виде вектор-строки или вектора положения точки. Геометрически преобразовать точку, представленную с помощью вектора положения, можно, умножив этот вектор на некую матрицу преобразования Т.

[х' у'] = [х у] Т. (1)

Существует три типа элементарных преобразований: перенос, масштабирование относительно начала координат, поворот относительно начала координат. Математически их можно представить в виде систем уравнений, а также в матричном виде: перенос

Р' = Р + М; (2)

масштабирование относительно начала координат Р' = Р • 5; (3)

поворот относительно начала координат

Р' = Р • R. (4)

Перенос реализуется с помощью операции сложения, а масштабирование и поворот — с помощью умножения. Это неудобно для более сложных преобразований, например, для поворота относительно произвольного центра.

Чтобы получить результирующую матрицу такого преобразования, необходимо применить однородные координаты.

Однородные координаты в данном случае можно представить как вложение промасштабированной с коэффициентом Ж двумерной плоскости в плоскость Z = Ж в трехмерном пространстве (рис. 1). В этом случае количество координат увеличивается до трех: Р(х, у) ^Р(м> х, ц> у, м>).

Рис. 1. Однородные координаты

Введение однородных координат позволяет:

записать преобразования в универсальном виде, т.е. с учетом формулы (1) в виде произведения матриц

Р'= Р х Т; (5)

записать сложные преобразования в виде матрицы за счет композиции элементарных преобразований:

T = M x R x M2;

(6)

использовать при необходимости очень большие или очень маленькие координаты за счет коэффициента масштабирования V.

Для решения задач преобразования коэффициент масштабирования не имеет значения. Поэтому для простоты примем V = 1. Теперь вектор положения точки Р будет записываться в виде [х у 1].

И любое преобразование с учетом (5) и (6) можно записать в виде [х' у' 1] = [х у 1] • Т.

Поворот относительно произвольного центра можно представить как цепь последовательных преобразований:

перенос центра поворота в начало координат

М1 =

l о -d„

0

1 d

(7)

поворот относительно начала координат

cosa sina 0 R = -sina cosa 0 ; 0 0 1

(8)

перенос центра поворота из начала координат обратно в исходную позицию

M2 =

l 0 d

0 l

d

Суммарную матрицу для поворота относительно точки рСеп4ег (рс) с учетом однородных координат можно записать в таком виде:

T =

Pc

cosa -sina (l - cosa)+yPcsina

sina cosa

Уpc (1- cosa)-

xp sina

pc

(lO)

Для создания пользовательской системы координат ПСК-Компас используется способ «по трем точкам»: начало координат рСеПег; точка на оси X — точка рЕш,4; точка на оси У — точка р№г(Г

Координаты точек рСеп4ег и снимаются с экрана из заданного пользователем направления на север. Направление на восток будет определяться точкой рЕай, координаты которой можно найти путем поворота точки относительно рСеПег на 90° по часовой стрелке.

Таким образом, координаты точки, определяющей направление оси X в новой ПСК-Компас, будут определены по формулам:

ВЕСТНИК roft,-

3/2013

| x^ =xp cosa - y ^ sina+xp (1 - cosa)+v sina;

J Pe pn ^ pn pe \ j ^ pe (11)

1У Pe =XPn sina+ypn COsa+yp e í1 - COsa ) - xpesina- ( )

Перед созданием удаленного источника света «Уд1» в программе отключается освещение по умолчанию и разрешаются удаленные источники, выключается фотометрическое освещение и включается отображение всех теней, и собственных, и падающих.

Положение источника «Уд1» находится в бесконечности.

Математический алгоритм подпрограммы основан на поиске условной точки положения источника света pL1 в новой системе координат ПСК-Компас.

Для задания направления света необходимо определить следующие параметры:

угол наклона проекции вектора на плоскость XY к оси X;

угол наклона луча к плоскости XY (рис. 2).

Угол с: НИЩ Угол с:

осдоХ VÉlV плоскостью XY' ^5.3

Ёид е плане ОК | Отмена | ¡ Справка

Рис. 2. Углы, определяющие направление распространения света

Будем брать эти величины из таблицы в зависимости от указанного времени года и суток, где а — азимут солнца (юг 0°), в — угол высоты солнцестояния (в зените 90°).

Таблица углов солнечного света

Час (до /после Декабрь Январь, ноябрь Февраль, октябрь Март, сентябрь Апрель, август Май, июль Июнь

полудня) a в a в a в a в a в a в a в

4/20 125 1 127 3

5/19 110 2 114 8 117 11

6/18 90 0 92 10 107 16 105 18

Окончание табл.

Час (до /после полудня) Декабрь Январь, ноябрь Февраль, октябрь Март, сентябрь Апрель, август Май, июль Июнь

а ß а ß а ß а ß а ß а ß а ß

7/17 — — — — 72 0 78 7 85 18 90 20 92 22

8/16 — — 55 0 60 6 65 16 71 27 77 33 80 35

9/15 42 2 44 5 46 13 51 24 57 34 62 42 65 44

10/14 27 7 29 10 31 18 36 29 40 40 44 43 48 51

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

11/13 12 10 14 13 16 22 18 33 20 45 23 53 27 56

12 0 12 0 15 0 24 0 40 0 46 0 55 0 58

Для использования в расчетах азимут солнца удобнее измерять относительно направления на восток, что соответствует оси X пользовательской системы координат ПСК-Компас.

Чтобы привести угол а к мировой системе координат, необходимо найти угол между осью X ПСК-Компас и соответствующей осью мировой системы координат.

Угловой коэффициент прямой, проходящей через две точки, вычисляется по формуле k = (y2 -yx)/(x2 - Xj).

Будем искать угол между прямой, проходящей через точки pCenter и pNord, и осью X МСК.

Для нового направленИЯ на север kj = (Y ^Center - YPNord)/(XPCenter - XPn<J.

Для оси X: k2 = 0.

Если (XpCenter - XpNord) = 0, значит направление на север соответствует оси Y МСК и угол поворота осей равен нулю. В противном случае

k - k

tge =

i+kk

так как k2 = 0, то tg9 = -k.

Направление света задается единичным вектором е. Координаты начала вектора е:

fxe1 = cos 0;

Уе1 =sin 0;

[ zei = sin ф.

Координаты конца вектора е: [ = 0;

¡^2 = 0; ^е2 = 0.

Интенсивность и цвет излучения источника «Уд1» также берем из таблицы.

Для большей реалистичности тени сделаем мягкими, но повторяющими геометрию объектов.

Композиция из двух источников света обеспечивает подсветку неосвещенных областей и имитирует рассеянный свет. Источники располагаются в плане ровно с противоположной от основного света стороны под углом в 90° друг к другу (рис. 3).

pL2

R

\

pAntL \

g г ^

а

pL3

1 ^

^ -- pL1

ОТ X)

Рис. 3. Схема расположения источников света вокруг модели

Для этого сначала найдем точку рАп1Ь, симметричную точке pL1 относительно начала координат в ПСК-Компас. Для определения координат х и у точки рАпЛ используем матрицу масштабирования с учетом однородных координат:

0 0

(12)

Коэффициенты масштабирования по осям х и у:

5 = -1;

х

5 = -1.

у

Таким образом, координаты точки рАп1Ь:

I ХрАп£Ь _ 5xXpL1;

S* 0 0

0 0 0

0 1

I У pAntL = SуУ pL1.

Координату zpAntL возьмем примерно на уровне глаз и примем равной 2000 мм.

Точки, определяющие направления светового потока от двух вспомогательных источников обратного света, получим с помощью поворота точки pAntL относительно оси Z ПСК-Компас в обе стороны, соответственно на 45° и на -45°.

Так как поворот осуществляется в плоскости, параллельной координатной плоскости XOY, то воспользуемся матрицей двухмерного поворота относительно начала координат (8).

Координаты точки, определяющей положение второго удаленного источника света:

*pL2 = *pL1 C0S а- УpL1 Sin a;

УpL2 = *pL1 sin a + УpL1 C0s a'; (13)

z pL2 = z pL1 ;

*pL2 = *pL1 C0S « - УpL1 Sin

УpL2 = *pL1 Sin a + УpL1 C0S ». (14)

Интенсивность излучения для Уд2 и Уд3 будет в 4 раза меньше, чем у Уд1. Функция генерации теней отключена. Цвет назначим в диапазоне цвета Уд1, но менее насыщенный.

С помощью подпрограммы на VB в среде AutoCAD по данным вычислений будут построены три источника света, настроены параметры света и теней, подготовлена и осуществлена реалистическая визуализация проектного решения.

Библиографический список

1. Полещук Н.Н. AutoCAD Разработка приложений, настройка и адаптация. СПб. : БХВ-Петербург, 2006.

2. Сиденко Л.А. Компьютерная графика и геометрическое моделирование. СПб. : Питер, 2009.

3. Глотова В.В., Лебедева И.М. Механизм центрального проецирования в компьютерной графике // Вестник МГСУ 2011. № 2. Т. 2. С. 342—346.

4. Позиционирование солнечных модулей. Метеорологические данные. 2012 г. Режим доступа: http://www.solarinntech.ru/informations/meteorological_data/. Дата обращения: 01.04.12.

5. Движение небесных тел. Специальная астрофизическая обсерватория Российской академии наук. 2011 г. Режим доступа: http://www.sao.ru/Doc-k8/Science/. Дата обращения: 01.04.12.

6. Фоли Дж., Вэн Дэм А. Основы интерактивной машинной графики. М. : Мир, 1987.

Поступила в редакцию в феврале 2013 г.

Об авторах: Лебедева Ирина Михайловна — доцент кафедры начертательной геометрии и графики, ФГБОУ ВПО «Московский государственный строительный университет» (ФГБОУ ВПО «МГСУ»), г. Москва, Ярославское шоссе, д. 26, 8(499)183-24-83, grafika@mgsu.ru;

Синенко Сергей Анатольевич — доктор технических наук, профессор кафедры информационных систем, технологий и автоматизации в строительстве, ФГБОУ ВПО «Московский государственный строительный университет» (ФГБОУ ВПО «МГСУ»), г. Москва, Ярославское шоссе, д. 26, 8(495)287-49-14, доб. 31-07, sasin50@ mail.ru.

Для цитирования: Лебедева И.М., Синенко С.А. Автоматизация процесса визуализации проектных решений в среде AUTOCAD // Вестник МГСУ 2013. № 3. С. 228—236.

I.M. Lebedeva, S.A. Sinenko

AUTOMATION OF THE PROCESS OF VISUALIZATION APPLICABLE TO DESIGN SOLUTIONS IN THE AUTOCAD ENVIRONMENT

The authors provide a brief description of the software algorithm designed to automatize some of the final stages of design and research into buildings and structures, namely, computer-aided realistic visualization of a simulated object in the AutoCAD environment. Special attention is driven to realistic shadows that are important whenever a construction site is positioned within the environment. The software simulates sunlight by creating a remote source of light. Diffused light is generated by a set of three additional sources of light. The software algorithm is based on a pattern of light sources simulating sunlight and skylight. The point of location of each additional source of light is pre-set by the software operator. This point is identified by the software as the set of coordinates calculated using a special subroutine. The article has a table of sun angles for any time of the day and each month of the year at the latitude of Moscow.

Key words: solar lighting, ambient lighting, AutoCAD, photorealistic visualization, azimuth of the sun, turning points, homogeneous coordinates.

References

1. Poleshchuk N.N. AutoCAD Razrabotka prilozheniy, nastroyka i adaptatsiya [AutoCAD Application Development, Customization and Adaptation]. St.Petersburg, BKhV-Peterburg Publ., 2006.

2. Sidenko L.A. Komp'yuternaya grafika i geometricheskoe modelirovanie [Computer Graphics and Geometric Simulation]. St.Petersburg, Piter Publ., 2009.

3. Glotova V.V., Lebedeva I.M. Mekhanizm tsentral'nogo proetsirovaniya v komp'yuternoy grafike [Mechanism of Central Mapping in Computer Graphics]. Vestnik MGSU [Proceedings of Moscow State University of Civil Engineering]. 2011, no. 2, vol. 2, pp. 342—346.

4. Pozitsionirovanie solnechnykh moduley. Meteorologicheskie dannye. 2012 g. [Positioning of Solar Modules. Meteorological data. 2012.] Available at: http://www.solarinntech.ru/ informations/meteorological_data Date of access: 01.04.12.

5. Dvizhenie nebesnykh tel. Spetsial'naya astrofizicheskaya observatoriya Rossiyskoy akademii nauk. 2011 g. [Motion of Celestial Bodies. Special Astrophysical Observatory of the Russian Academy of Sciences. 2011] Available at: http://www.sao.ru/Doc-k8/Science/ Date of access: 01.04.12.

6. Folly G., Van Dam A. Osnovy interaktivnoy mashinnoy grafiki [Fundamentals of Interactive Computer Graphics]. Moscow, Mir Publ., 1987.

About the authors: Lebedeva Irina Mikhaylovna — Associate Professor, Department of Descriptive Geometry and Graphics, Moscow State University of Civil Engineering (MGSU), 26 Yaroslavskoe shosse, Moscow, 129337, Russian Federation; grafika@mgsu.ru; +7 (499) 183-24-83;

Sinenko Sergey Anatol'evich — Doctor of Technical Sciences, Professor, Department of Information Systems, Technology and Automation in Civil Engineering, Moscow State University of Civil Engineering (MGSU), 26 Yaroslavskoe shosse, Moscow, 129337, Russian Federation; sasin50@mail.ru; +7 (495) 287-4914, ext. 31-07.

For citation: Lebedeva I.M., Sinenko S.A. Avtomatizatsiya protsessa vizualizatsii pro-ektnykh resheniy v srede AUTOCAD [Automation of the Process of Visualization Applicable to Design Solutions in the AutoCAD Environment]. Vestnik MGSU [Proceedings of Moscow State University of Civil Engineering]. 2013, no. 3, pp. 228—236.

i Надоели баннеры? Вы всегда можете отключить рекламу.