Аналогично командам двумерной графики все команды трёхмерной графики также формируют графические структуры, которые затем отображаются на выбранном устройстве отображения (по умолчанию рабочий лист или окно графики), но только в отличие от двумерных команд результатом выполнения трёхмерных команд являются PLOT3D-структуры. Их так же, как и PLOT-структуры, можно распечатать командой lprint():
PLOT3D-структуры, как и PLOT-структуры, делятся на геометрические структуры, представляющие отображаемые геометрические объекты, и структуры, соответствуюшие опциям трёхмерной графики. Все двумерные геометрические структуры и опции (см. Лекцию 7) используются и для формирования PLOT3D-структур с естественными изменениями в параметрах: координаты точек должны иметь три значения и в тех опциях, где необходимо задавать информацию по осям координат, следует добавлять информацию по третьей пространственной оси.
Функция PLOT3D() дополнительно поддерживает ещё две геометрические структуры и несколько специальных трёхмерных опций. Дополнительные геометрические объекты представляют поверхности с разным способом задания:
- GRID([a..b,c..d,[z11,...,z1n],...,[zm1,...zmn]]) - поверхности, определённые на прямоугольной области плоскости xy с равномерным распределением точек сетки, в которых заданы значения их z-координат;
- MESH([[x11,y11,z11],...[x1n,y1n,z1n],...]) - поверхности, определённые координатами своих точек, причём каждая поверхность представляется списком трёхэлементных списков координат точек.
В команде PLOT3D() можно использовать дополнительно следующие структуры-опции:
- AMBIENTLIGHT(r,g,b) - определяет рассеянный источник света пользовательской схемы подсветки с параметрами-числами из интервала [0,1], представляющие интенсивности красной, зелёной и синей его составляющих;
- COLOR(параметр) - может определять не только цвет, но и цветовую схему закрашивания поверхности, используя дополнительные возможные значения параметра: XYZSHADING, XYSHADING и ZSHADING для определения цвета объектов на основе значений координат их точек, а также ZHUE и ZGREYSCALE, являющиеся модификациями схемы ZSHADING;
- GRIDSTYLE(параметр) - задаёт отображаемую на поверхности сетку: треугольную (значение параметра равно TRIANGULAR) или прямоугольную (значение параметра равно RECTANGULAR);
- LIGHT(phi,theta,r,g,b) - определяет направление и интенсивность направленного источника света: первые два параметра соответствуют углам в сферической системе координат направления к источнику света и задаются в градусах, остальные три задают интенсивности красной, зелёной и синей составляющих источники света;
- LIGHTMODEL(параметр) - определяет используемую схему подсветки: пользовательскую (USER) или одну из предопределённых (LIGHT_1, LIGHT_2, LIGHT_3, LIGHT_4);
- STYLE(параметр) - определяет способ отображения поверхности и может иметь дополнительные значения параметра: HIDDEN для отображения каркаса поверхности с удалением невидимых линий, CONTOUR для отображения поверхности посредством только линий уровня и PATCHCONTOUR для отображения закрашенной поверхности с нанесёнными линиями уровня.
Пример слева демонстрирует непосредственное использование трехмерных графических структур для построения сложного графика в пространстве. |