Графика в системе Maple V

Доклад - Компьютеры, программирование

Другие доклады по предмету Компьютеры, программирование

?ь красного (red), зеленого (green) и синего (blue) цветов в относительных единицах (от 0 до 1). axes=f Задает вид координатных осей (BOXED, NORMAL, FRAME и NONE, по умолчанию NONE). grid=[m,nl Задает число линии каркаса поверхности. gridstyle=x Задает стиль линий каркаса х ( rectangular или triangular). labels=[x,y,z] Задает надписи по осям (х, у и z строки, по умолчанию пустые). light=[phi,theta,r,g, b] Задает углы, под которыми расположен источник освещения поверхности и интенсивности составляющих (г, g и b) цвета. lightmodel=x Задает режим яркости (соответственно, none", lightl, light2, light3 и light4). orientation=[theta, phi] Задает углы ориентации поверхности (по умолчанию 45 градусов). projection=r Задает перспективу при обзоре поверхности (г может быть числом 0 или 1, задающим включение или выключение перспективы, а также одной из строк FISHEYE, NORMAL, или ORTHOGONAL (это соответствует численному значению г 0, 0.5, или 1, соответственно, причем по умолчанию задано projection = ORTHOGONAL). shading=s Задает направления, по которым меняется цвет функциональной окраски (значения s могут быть XYZ, XY, Z, ZGREYSCALE, ZHUE, NONE). tickmarks=[l,n,m] Задает характер маркировки по осям х, у и z (числа 1, п и m имеют значения не менее 1). view=zmin..zmax или Ixmin..xmax,ymin.. ymax,zmin..zmax] Задает минимальные и максимальные координаты поверхности для ее видимых участков.

13.3.3. Выбор и пересчет координат ЗО-графиков

Для трехмерных графиков возможно задание 31-го типа координатных систем с помощью параметра соога5=Тип_координатнои_системь1. Поскольку на экране дисплея поверхность отображается только в прямоугольной системе координат и характеризуется координатами х, у и z, то для представления поверхности, заданной в иной системе координат с координатами u, v и w используются известные [46,47] формулы для преобразования (u, v, w) --> (х, у, z). Ниже представлены типы координатных систем для трехмерной графики и соответствующие формулы преобразования:

bipolarcylindrical

х = a*sinh(v)/(cosh(v)-cos(u)) у = a*sin(u)/(cosh(v)-cos(u)) z = w

bispherical

х = sin(u)*cos(w)/d у = sin(u)*sin(w)/d z = sinh(v)/d (где d = cosh(v) - cos(u) )

cardiodal

x = u*v*cos(w)/(lГ2+v2)-2 у = u*v*sin(w)/(ir2+v"2r2 z = (u"2-v2)/2/^2+v2)-2

cardiodcylindrical

x = (u2-v~2)/2/(u-2+v~2)-2 у = u*v/(u2+v-2)"2 z = w

casscylindrical

x = a*2~(l/2)/2*((exp(2*u)+2*exp(u)*cos(v)+l)-(l/2)+exp(u)*cos(v)+l)-(l/2) y= a*2(l/2)/2*((exp(2*u)+2*exp(u)*cos(v)+l)"(l/2)-exp(u)*cos(v)-l)"(l/2) z = w

confocalellip

x = ((a~2-u)*{a2-v)*(a"2-w)/{a2-b2)/(a-2-c-2)Y(l/2) у = ((b2-u)*(b~2-v)*(b"2-w)/(b"2-a2)/(b2-c2))(l/2) z = ((c2-u)*(^2-v)*(c2-w)/(c2-a2)/(c^2-\)2))~(l/2)

confocalparab

x = ((a2-u)*(si2-v)*(a2-w)/{V2-a2))(l/2) у = ((b2-u)*(b2-v)*(b-2-w)/(b-2-a-2) Г(1/2) z = (a"2+b"2-u-v-w)/2

conical

x = u*v*w/(a*b) у = u/b*((v"2 - h~2)*(b~2-w2)/(a~2-V2)Y(l/2) z = u/a*((a2 - v2)*(a2 - w~2)/(a-2-b2))"(l/2)

cylindrical

x = u*cos(y) у = u*sin(y) z = w

ellcylindrical

x = a*cosh(u)*cos(v) у = a*sinh(u)*sin(v) z = w

ellipsoidal

x = u*v*w/a/b у = ((u^-b^Mv^-b^^b^-w^Aa^-b^^l^/b z = ((u-2-a2)*(a2-v2)*(a2-w"2)/(a2-b2))(l/2)/a

hypercylindrical

x= ((u"2+v"2Y(l/2)+u)(l/2) y^u^+v^ni^-iO-O/^) z=w

invcasscylindrical

x = a*2-(l/2)/2*((exp(2*u)+2*exp(u)*cos(v)+l)-(l/2) +

exp(u)*cos(v)+l)(l/2)/(exp(2*u)+2*exp(u)*cos(v)+l)(l/2) у = a*2-(l/2)/2*((exp(2*u)+2*exp(u)*cos(v)+l)-(l/2) -

exp(u)*cos(v)-l)(l/2)/(exp(2*u)+2*exp(u)*cos(v)+l)(l/2) z = w

invellcylindrical

x = a*cosh(u)*cos(v)/(cosh(ur2-sin(v)"2) у = a*sinh(u)*sin(v)/(cosh(u)"2-sin(v)~2) z = w

invoblspheroidal

x = a*cosh(u)*sin(v)*cos(w)/(cosh(u)"2-cos(v)2) у = a*cosh(u)*sin(v)*sin(w)/(cosh(u)2-cos(v)"2) z = a*sinh(u)*cos(v)/(cosh(u)2-cos(v)2)

invprospheroidal

x = a*sinh(u)*sin(v)*cos(w)/(cosh(u)2-sin(v)"2) у = a*sinh(u)*sin(v)*sin(w)/(cosh(u)2-sin(v)2) z = a*cosh(Ll)*cos(v)/(cosh(u)2-s^n(v)2)

logcoshcylindrical

x = !i/Pi*\n(cosh(uY2-sm(vY2} у = 2*a/Pi*arctan(tanh(u)*tan(v)) z = w

maxwellcylindrical

x = a/Pi*(u+l+exp(u)*cos(v)) у = a/Pi*(v+exp(u)*sin(v)) z = w

oblatespheroidal

x = a*cosh(u)*sin(v)*cos(w) у = a*cosh(u)*sin(v)*sin(w) z = a*sinh(u)*cos(v)

paraboloidal

x = u*v*cos(w) у = u*v*sin(w) z = (u"2 - v2)/2

paraboloidal2

x = 2*((u-a)*(a-v)*(a-w)/(a-b))-(l/2) у = 2*((u-b)*(b-v)*(b-w)/(a-b))-(l/2) z = u+v+wab

paracylindrical

x = (u2 - v2)/2 у = u*v z = w

prolatespheroidal

x = a*sinh(u)*sin(v)*cos(w) y=a*sinh(u)*sin(v)*sin(w) z=a*cosh(u)*cos(v)

rectangular

x = и у = v z = w

rosecylindrical

x = ((1Г2+у-2)-(1/2)+и)-(1/2)/(1Г2+у-2Г(1/2) у = ((u2+v2y(l/2)-uY(l/2)/(u2+v2V(\/2) z = w

sixsphere

x= u/(u2+v2+w2) у = v/(u-2+v2+v/2) z = w/(u2+v2+w2)

spherical

x = u*cos(v)*sin(w) у = u*sin(v)*sin(w) z = u*cos(w)

tangentcylindrical

x = u/(ir2+v"2) у = v/(u2+v2) z = w

tangentsphere

x = u-costwVdj^+v^) у = u*sin(w)/(ir2+v"2) z = v/(u"2+v~2)

toroidal

x = a*sinh(v)*cos(w)/d у = a*sinh(v)*sin(w)/d z = a*sin(u)/d (где d = cosh(v) - cos(u) )

Эти формулы полезно знать, поскольку в литературе встречаются несколько отличные формулы пересчета.

Вид графиков трехмерных поверхностей очень сильно различается в разных

координатных системах. По умолчанию трехмерные графики строятся в прямоугольной системе координат rectangular.

13.4. Примеры построения трехмерных поверхностей с помощью функции plot3d

13.4.1. Простейшее построение ЗО-поверхности с разным стилем

На рис. 13.15 показано два примера простейших построений графиков трехмерной поверхности. По умолчанию строится каркасная поверхность с функциональной окраской тонких линий каркаса и удалением невидимых линий. Чтобы график выглядел более четким, построение в первом примере задано линиями черного цвета с помощью параметра color-black.


Рис. 13.15. Примеры простейшего построения трехмерных поверхностей.

Во втором примере та же поверхность построена с параметром style=patch, что приводит к появлению ее функциональной окраски (увы, на рисунках в книге воспринимаемой как окраска оттенками серого цвета). Функциональная окраска делает рисунки более информативными.

Помимо значения path, можно задавать ряд других стилей для построения трехмерных поверхностей: point точками, contou