русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Команда plot3d()


Дата добавления: 2015-08-06; просмотров: 1741; Нарушение авторских прав


ЛАБОРАТОРНАЯ РАБОТА № 3-2

ПРОСТРАНСТВЕННАЯ ГРАФИКА В MAPLE

Команда plot3d()

Функцию двух переменных можно отобразить как поверхность в трёхмерном пространстве, две оси которого соответствуют значениям двух независимых переменных, а по третьей оси откладываются значения функции. В Maple подобную процедуру визуализации функции двух переменных выполняет команда plot3d(), которая, как и команда отображения графика функции одной переменной plot(), расположена в стандартной библиотеке, а поэтому доступна пользователю в любой момент. Эта команда позволяет отображать графики функций, заданных как в явном виде, так и в параметрическом виде.

Синтаксис команды plot3d() практически полностью соответствует синтаксису команды plot() с небольшим очевидным дополнением, связанным с наличием второй независимой переменной:

plot3d(expr,x=a..b,y=c..d,опции)

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

Пример 1. plot3d((x,t)->cos(x)*sin(t),-1..1,-1..1);

На графике изображена поверхность.

Отметим, что и выражение, и функция, представляющие параметр expr, не должны содержать неопределённых символьных переменных кроме двух упомянутых независимых переменных. Границы диапазонов представляются числами, хотя для второй независимой переменной они могут быть выражениями, зависящими от первой переменной. В этом случае график функции двух переменных отображается не на прямоугольной области, а на четырехугольной области, у которой две противоположные границы являются криволинейными. Например, следующая команда



Пример 2. plot3d(cos(x)*sin(t),x=-1..1,t=-5..x^2);

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

ЗАДАНИЕ. Изобразить поверхности и . Найти наилучший ракурс просмотра. Как называются эти поверхности?

 

В табл.3 перечислены все опции команды plot3d с их кратким описанием и возможными значениями, причём значения по умолчанию выделены подчеркиванием.

Таблица 3. Опции команд трёхмерной графики

Опция Описание
ambientlight Задает цвет внешнего источника интенсивностями его красной, зеленой и синей составляющих, представленными трехэлементным списком вещественных чисел из интервала [0,1]. Эта опция имеет значение при определении пользователем собственной схемы освещенности поверхности
axes Определяет тип отображаемых осей координат. Эта опция может принимать следующие значения: normal – обычные оси координат, пересекающиеся в точке (0,0,0); boxed – поверхность заключена в охватывающий параллелепипед с нанесенными шкалами по трем граням; frame – три оси отображаются по внешним граням охватывающего параллелепипеда; none – оси не отображаются
axesfont Задает шрифт для надписей под засечками вдоль осей координат. Значение этой опции аналогично значению опции font
color Задает цвет отображаемой поверхности в случае ее закрашивания или цвет линий сетки в случае отображения поверхности в виде каркаса или линий уровня. В качестве значения этой опции может выступать одно из зарезервированных значений цвета в Maple: aquamarine, black, blue, navy, coral, cyan, brown, gold, green, gray, grey, khaki, magenta, maroon, orange, pink, plum, red, sienna, tan, turquoise, violet, wheat, white и yellow. Можно также определить и собственный цвет, соответствующий смешению заданных частей красного, зелёного и синего цветов. Это осуществляется с помощью следующей команды macro(palegreen= COLOR(RGB,.5607,.7372,.5607)), где palegreen имя константы нового цвета, в котором красный составляет 0.5607 части, зеленый 0.7372 и синий 0.5607. Задание значения в форме выражения, содержащего две независимые переменные, определяет цвет в каждой точке поверхности по цветовой схеме HUE. Если цвет определяется с помощью процедуры, то она должна иметь два аргумента и возвращать значение цвета
contours Определяет количество линий уровня при отображении их на поверхности или список значений отображаемых линий уровня. Значение по умолчанию равно 10
coords По умолчанию при выводе как явно заданной функции, так и параметрически заданной функции используется декартовая система координат (cartesian), т. е. задаваемое уравнение кривой рассматривается именно в этой системе координат. Данная опция меняет тип системы координат. Возможные значения: bipolarcylindrical, bispherical, cardioidal, cardioidcylindrical, casscylindrical, confocalellip, confocalparab, conical, cylindrical, ellcylindrical, ellipsoidal, hypercylindrical, invcasscylindrical, invellcylindrical, invoblspheroidal, invprospheroidal, logcoshcylindrical, logcylindrical, maxwellcylindrical, oblatespheroidal, paraboloidal, paracylindrical, prolatespheroidal, rosecylindrical, sixsphere, spherical, tangentcylindrical, tangentsphere и toroidal, описание которых можно получить в справочной системе Maple с помощью команды ?coords
filled Установка значения данной опции равным true приводит к тому, что область, ограниченная поверхностью и плоскостью xy, отображается как твердое непрозрачное тело и закрашивается в соответствии с используемой цветовой схемой
font Задает шрифт для вывода текста на рисунке. Значение опции задается в виде списка [семейство, стиль, размер]. Параметр семейство задает гарнитуру шрифта: TIMES, COURIER, HELVETICA или SYMBOL. Параметр стиль определяет стиль шрифта: для гарнитуры TIMES возможные значения ROMAN, BOLD, ITALIC или BOLDITALIC, для гарнитур COURIER и HELVETICA стиль можно опустить, или задать BOLD, OBLIQUE или BOLDOBLIQUE, для шрифта SYMBOL стиль не задается. Последний параметр размер задает размер шрифта в пунктах (points) (один пункт приблизительно равен 1/72 дюйма)
grid Эта опция определяет прямоугольную равномерную сетку значений независимых переменных отображаемой функции, на которой вычисляются ее значения для построения поверхности и задается в виде двухэлементного списка [m,n], в котором каждый элемент является целым числом, определяющим количество точек по соответствующей координате. По умолчанию используется сетка [25,25]
gridstyle Задает тип отображаемой сетки: составленной из прямоугольников или треугольников на основании вычисленных ее значений в соответствии с установками, определяемыми опцией grid. Она может принимать одно из двух значений: RECTANGULAR и TRIANGULAR
labels Задание названий осей координат в виде списка [x,y,z]. Параметры x, y и z задаются в виде строк и соответствуют отображаемым названиям трех осей декартовой системы координат. По умолчанию оси не подписываются
labeldirections Эта опция определяет направление отображения названия осей и задается в виде списке [x,y,z], элементы которого могут принимать одно из двух значения HORISONTAL или VERTICAL.
labelfont Задает шрифт, которым отображаются названия осей координат. Значение этой опции аналогично значению опции font.
light Эта опция определяет расположение и цвет направленного источника света при задании пользовательской схемы подсветки. Ее значения задаются в виде списка [phi,theta,r,g,b], элементы которого имеют следующий смысл: phi и theta определяют углы направления, из которого исходит направленный свет (задаются в сферической системе координат), а r, g, b задают числовые интенсивности красной, зеленой и синей составляющих цвета источника
lightmodel Эта опция позволяет выбрать одну из предопределенных схем подсветки и может принимать следующие значения: 'none' (нет подсветки), 'light1', 'light2', 'light3' или 'light4'
linestyle Определяет тип линии на поверхности. Значением этой опции является целое число n. При n=0 или 1 линии отображаются как сплошные, значение равное 2 соответствует отображению линий точками, 3 — пунктиром и 4 — штрих-пунктиром
numpoints Определяет минимальное количество n вычисляемых точек, по которым строится поверхность (значение по умолчанию равно 625=25^2). Эта опция перекрывает задание сетки опцией grid, определяя ее новые значения по осям независимых переменных равными, равными равномерно распределенным sqrt(n) точкам в диапазонах изменения независимых переменных
orientation Задает углы в сферической системе координат направления, из которого пользователь смотрит на отображаемую поверхность: [theta,phi]. Углы задаются в градусах и по умолчанию равны [45°,45°]
projection Задает проекцию, в которой отображается поверхность. Значением этой опции может быть целое число r из диапазона [0,1], причем 0 соответствует широкоугольной перспективе, 1 — ортогональной проекции, промежуточные значения разным типам перспектив. Можно использовать три зарезервированных ключевых слова: 'FISHEYE' для широкоугольной перспективы (r=0), 'NORMAL' для перспективной проекции с параметром r=0.5 и 'ORTHOGONAL' для ортогональной проекции (r=1)
scaling Задает масштаб, в котором отображается поверхность. Если значение этой опции равно constrained, то это соответствует заданию абсолютных значений по осям координат, т. е. одна единица измерения по оси независимой переменной равна одной единице измерения по оси значений функции. Значение по умолчанию равно unconstrained, и это соответствует тому, что оси растягиваются таким образом, чтобы их размеры соответствовали размерам графического окна вывода
shading Определяет, какая схема закрашивания применяется при отображении поверхности. Допустимые значения: XYZ (цвет точки поверхности зависит от значений трех ее координат), XY (цвет точки поверхности зависит от значений ее двух независимых координат), Z (цвет точки поверхности зависит от значения функции: минимальное представляется синим цветом, максимальное — красным, остальные оттенками при переходе от синего к красному), ZGRAYSCALE (цвет точки поверхности зависит от значения функции: минимальное представляется черным цветом, максимальное — бледно-серым, остальные оттенками при переходе от черного к бледно-серому), ZHUE (цвет точки поверхности зависит от значения функции: от минимального сиреневого через синий, зеленый и желтый к максимальному красному) и NONE (поверхность не закрашена)
style Определяет, как будет отображаться поверхность. Допустимые значения: POINT (точками, представляющими значения функции на сетке), HIDDEN (каркасная модель с удалением невидимых линий), PATCH (закрашенная поверхность с линиями сетки), WIREFRAME или LINE (каркасная модель без удаления невидимых линий), CONTOUR (линиями уровня), PATCHNOGRID (закрашенная поверхность без линий сетки), PATCHCONTOUR (закрашенная поверхность с линиями уровня)
symbol Определяет тип символа, которым помечаются точки поверхности функции при опции style=point. Может принимать следующие значения: box для □, cross для +, circle для ○, POINT для • (точка) и diamond для ◊
symbolsize Задает размер символа в пунктах. Его значением может быть любое натуральное число. По умолчанию используются символы размером 10 пунктов. Действие этой опции не распространяется на символ точка, задаваемый опцией symbol=POINT
thickness Задает толщину линий на поверхности. Значение является целым числом и изменяется от 0 до 3, соответствуя изменению толщины линии от самой тонкой до самой жирной
tickmarks Определяет число точек, не менее которых должно быть помечено по горизонтальной и вертикальной оси координат. Значение задается в виде списка [l,n,m]
title Определяет строку, которая выводится как заголовок рисунка. По умолчанию заголовок не выводится. В строке можно использовать специальные комбинации символов. Например, \n осуществляет перевод на новую строку, формируя тем самым многострочный заголовок
titlefont Определяет шрифт для заголовка рисунка. Значение этой опции аналогично значению опции font
view Определяет минимальное и максимальное значения координаты z, между которыми отображается поверхность, а также диапазоны изменения независимых координат в виде [xmin..xmax, ymin..ymax, zmin..zmax]. По умолчанию отображается вся поверхность без обрезания в пределах заданных диапазонов изменения независимых переменных в команде plot3d()

 



<== предыдущая лекция | следующая лекция ==>
Изменение координат вектора при изменении базиса | ТРЁХМЕРНЫЕ КОМАНДЫ ПАКЕТА PLOTS


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Полезен материал? Поделись:

Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.001 сек.