Эти функции рисуют графики для 2D и 3D векторных полей. Есть несколько типов графиков: просто векторное поле (Vect), вектора вдоль траектории (Traj), векторное поле каплями (Dew), нити тока (Flow, FlowP), трубки тока (Pipe). По умолчанию (если отсутствуют) значения x, y и z равно распределены в диапазоне осей координат. Младшие размерности массивов x, y, z и ax должны быть одинаковы. Размеры массивов ax, ay и az должны быть одинаковы. Массивы x, y и z могут быть векторами (не матрицами как ax). Строка sch задает цветовую схему (см. Цветовая схема). Строка opt задает опции графика (см. Опции команд).
y1dat y2dat ['sch'='']
¶x1dat y1dat x2dat y2dat ['sch'='']
¶x1dat y1dat z1dat x2dat y2dat z2dat ['sch'='']
¶mglGraph
: void
Lines (const mglDataA &
y1, const mglDataA &
y2, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Lines (const mglDataA &
x1, const mglDataA &
y1, const mglDataA &
x2, const mglDataA &
y2, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Lines (const mglDataA &
x1, const mglDataA &
y1, const mglDataA &
z1, const mglDataA &
x2, const mglDataA &
y2, const mglDataA &
z2, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_lines_xyz (HMGL
gr, HCDT
x1, HCDT
y1, HCDT
z1, HCDT
x2, HCDT
y2, HCDT
z2, const char *
sch, const char *
opt)
¶void
mgl_lines_xy (HMGL
gr, HCDT
x1, HCDT
y1, HCDT
x2, HCDT
y2, const char *
sch, const char *
opt)
¶void
mgl_lines (HMGL
gr, HCDT
y1, HCDT
y2, const char *
sch, const char *
opt)
¶Функция рисует линии между точками {x1, y1, z1} и {x2, y2, z2}. Строка pen задает цвет (см. Стиль линий). По умолчанию (pen=""
) используется текущий цвет из палитры (см. Палитра и цвета). Размер по 1-му индексу должен быть одинаков. График рисуется для каждой строки если один из массивов матрица. См. также plot, traj. См. раздел Sample ‘lines’, для примеров кода и графика.
xdat ydat udat vdat ['sch'='']
¶xdat ydat zdat udat vdat wdat ['sch'='']
¶mglGraph
: void
Traj (const mglDataA &
x, const mglDataA &
y, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Traj (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_traj_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶void
mgl_traj_xy (HMGL
gr, HCDT
x, HCDT
y, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶Рисует вектора {ax, ay, az} вдоль кривой {x, y, z}. Длина векторов пропорциональна \sqrt{ax^2+ay^2+az^2}. Строка pen задает цвет (см. Стиль линий). По умолчанию (pen=""
) используется текущий цвет из палитры (см. Палитра и цвета). Опция value
задает фактор длины векторов (если не нуль) или выбирать длину пропорционально расстоянию между точками кривой (если value=0
). Размер по 1-му индексу должен быть 2 или больше. График рисуется для каждой строки если один из массивов матрица. См. также vect. См. раздел Sample ‘traj’, для примеров кода и графика.
udat vdat ['sch'='']
¶xdat ydat udat vdat ['sch'='']
¶mglGraph
: void
Vect (const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Vect (const mglDataA &
x, const mglDataA &
y, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_vect_2d (HMGL
gr, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶void
mgl_vect_xy (HMGL
gr, HCDT
x, HCDT
y, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶Рисует векторное поле {ax, ay} параметрически зависящее от координат x, y на плоскости при z равном минимальному значению оси z. Длина и цвет векторов пропорциональна \sqrt{ax^2+ay^2}. Число рисуемых векторов зависит от meshnum. Вид стрелок/штрихов может быть изменён символами:
См. также flow, dew. См. раздел Sample ‘vect’, для примеров кода и графика.
udat vdat wdat ['sch'='']
¶xdat ydat zdat udat vdat wdat ['sch'='']
¶mglGraph
: void
Vect (const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Vect (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_vect_3d (HMGL
gr, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶void
mgl_vect_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶Это 3d версия графика. Здесь массивы ax, ay, az должны трёхмерными тензорами и длина вектора пропорциональна \sqrt{ax^2+ay^2+az^2}.
udat vdat wdat ['sch'='' sval]
¶xdat ydat zdat udat vdat wdat ['sch'='' sval]
¶mglGraph
: void
Vect3 (const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, mreal
sVal=-1
, const char *
opt=""
)
¶mglGraph
: void
Vect3 (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, mreal
sVal=-1
, const char *
opt=""
)
¶void
mgl_vect3 (HMGL
gr, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, mreal
sVal, const char *
opt)
¶void
mgl_vect3_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, mreal
sVal, const char *
opt)
¶Рисует 3D векторное поле {ax, ay, az} параметрически зависящее от координат x, y, z. График рисуется на срезе sVal в направлении {‘x’, ‘y’, ‘z’}, указанном в строке sch (по умолчанию, в напралении ‘y’). Длина и цвет векторов пропорциональна \sqrt{ax^2+ay^2+az^2}. Число рисуемых векторов зависит от meshnum. Вид стрелок/штрихов может быть изменён символами:
См. также vect, flow, dew. См. раздел Sample ‘vect’, для примеров кода и графика.
udat vdat ['sch'='']
¶xdat ydat udat vdat ['sch'='']
¶mglGraph
: void
Dew (const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Dew (const mglDataA &
x, const mglDataA &
y, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_dew (HMGL
gr, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶void
mgl_dew_xy (HMGL
gr, HCDT
x, HCDT
y, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶Рисует капли для векторного поля {ax, ay}, параметрически зависящего от координат x, y при z равном минимальному значению оси z. Замечу, что график требует много памяти и процессорного времени для своего создания! Цвет капель пропорционален \sqrt{ax^2+ay^2}. Число капель определяется meshnum. См. также vect. См. раздел Sample ‘dew’, для примеров кода и графика.
udat vdat ['sch'='']
¶xdat ydat udat vdat ['sch'='']
¶mglGraph
: void
Flow (const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Flow (const mglDataA &
x, const mglDataA &
y, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_flow_2d (HMGL
gr, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶void
mgl_flow_xy (HMGL
gr, HCDT
x, HCDT
y, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶Рисует нити тока для векторного поля {ax, ay}, параметрически зависящего от координат x, y на плоскости при z равном минимальному значению оси z. Число нитей пропорционально значению опции value
(по умолчанию 5). Цвет нитей пропорционален \sqrt{ax^2+ay^2}. Строка sch может содержать
См. также pipe, vect, tape, flow3, barwidth. См. раздел Sample ‘flow’, для примеров кода и графика.
udat vdat wdat ['sch'='']
¶xdat ydat zdat udat vdat wdat ['sch'='']
¶mglGraph
: void
Flow (const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Flow (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_flow_3d (HMGL
gr, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶void
mgl_flow_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶Это 3d версия графика. Здесь массивы должны трёхмерными тензорами и цвет пропорционален \sqrt{ax^2+ay^2+az^2}.
x0 y0
udat vdat ['sch'='']
¶x0 y0
xdat ydat udat vdat ['sch'='']
¶mglGraph
: void
FlowP (mglPoint
p0, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
FlowP (mglPoint
p0, const mglDataA &
x, const mglDataA &
y, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_flowp_2d (HMGL
gr, mreal
x0, mreal
y0, mreal
z0, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶void
mgl_flowp_xy (HMGL
gr, mreal
x0, mreal
y0, mreal
z0, HCDT
x, HCDT
y, HCDT
ax, HCDT
ay, const char *
sch, const char *
opt)
¶Аналогично flow, но рисует одну нить из точки p0={x0,y0,z0}. Строка sch также может содержать: ‘>’ или ‘<’ для рисования линии тока только вперед или только назад от заданной точки (по умолчанию, рисует в обе стороны).
x0 y0 z0
udat vdat wdat ['sch'='']
¶x0 y0 z0
xdat ydat zdat udat vdat wdat ['sch'='']
¶mglGraph
: void
FlowP (mglPoint
p0, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
FlowP (mglPoint
p0, const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_flowp_3d (HMGL
gr, mreal
x0, mreal
y0, mreal
z0, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶void
mgl_flowp_xyz (HMGL
gr, mreal
x0, mreal
y0, mreal
z0, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, const char *
opt)
¶Это 3d версия графика.
udat vdat wdat ['sch'='']
¶xdat ydat zdat udat vdat ['sch'='']
¶mglGraph
: void
Flow3 (const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, double
sVal=-1
, const char *
opt=""
)
¶mglGraph
: void
Flow3 (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, double
sVal=-1
, const char *
opt=""
)
¶void
mgl_flow3 (HMGL
gr, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, double
sVal, const char *
opt)
¶void
mgl_flow3_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, double
sVal, const char *
opt)
¶The function draws flow threads for the 3D vector field {ax, ay, az} parametrically depending on coordinates x, y, z. Flow threads starts from given plane. Option value
set the approximate number of threads (default is 5). String sch may contain:
See also flow, pipe, vect. См. раздел Sample ‘flow3’, для примеров кода и графика.
pdat ['sch'='']
¶xdat ydat pdat ['sch'='']
¶xdat ydat zdat pdat ['sch'='']
¶mglGraph
: void
Grad (const mglDataA &
phi, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Grad (const mglDataA &
x, const mglDataA &
y, const mglDataA &
phi, const char *
sch=""
, const char *
opt=""
)
¶mglGraph
: void
Grad (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
phi, const char *
sch=""
, const char *
opt=""
)
¶void
mgl_grad (HMGL
gr, HCDT
phi, const char *
sch, const char *
opt)
¶void
mgl_grad_xy (HMGL
gr, HCDT
x, HCDT
y, HCDT
phi, const char *
sch, const char *
opt)
¶void
mgl_grad_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
phi, const char *
sch, const char *
opt)
¶Рисует линии градиента скалярного поля phi[i,j] (или phi[i,j,k] в 3d случае) заданного параметрически {x[i,j,k], y[i,j,k], z[i,j,k]}. Число линий пропорционально значению опции value
(по умолчанию 5). См. также dens, cont, flow.
udat vdat ['sch'='' r0=0.05
]
¶xdat ydat udat vdat ['sch'='' r0=0.05
]
¶mglGraph
: void
Pipe (const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, mreal
r0=0.05
, const char *
opt=""
)
¶mglGraph
: void
Pipe (const mglDataA &
x, const mglDataA &
y, const mglDataA &
ax, const mglDataA &
ay, const char *
sch=""
, mreal
r0=0.05
, const char *
opt=""
)
¶void
mgl_pipe_2d (HMGL
gr, HCDT
ax, HCDT
ay, const char *
sch, mreal
r0, const char *
opt)
¶void
mgl_pipe_xy (HMGL
gr, HCDT
x, HCDT
y, HCDT
ax, HCDT
ay, const char *
sch, mreal
r0, const char *
opt)
¶Рисует трубки тока для векторного поля {ax, ay}, параметрически зависящего от координат x, y на плоскости при z равном минимальному значению оси z. Число трубок пропорционально значению опции value
. Цвет и радиус трубок пропорционален \sqrt{ax^2+ay^2}. Тёплые цвета соответствуют нормальному току (типа стока). Холодные цвета соответствуют обратному току (типа источника). Параметр r0 задает радиус трубок. При r0<0 радиус трубок обратно пропорционален их амплитуде. См. также flow, vect. См. раздел Sample ‘pipe’, для примеров кода и графика.
udat vdat wdat ['sch'='' r0=0.05
]
¶xdat ydat zdat udat vdat wdat ['sch'='' r0=0.05
]
¶mglGraph
: void
Pipe (const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, mreal
r0=0.05
, const char *
opt=""
)
¶mglGraph
: void
Pipe (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const mglDataA &
ax, const mglDataA &
ay, const mglDataA &
az, const char *
sch=""
, mreal
r0=0.05
, const char *
opt=""
)
¶void
mgl_pipe_3d (HMGL
gr, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, mreal
r0, const char *
opt)
¶void
mgl_pipe_xyz (HMGL
gr, HCDT
x, HCDT
y, HCDT
z, HCDT
ax, HCDT
ay, HCDT
az, const char *
sch, mreal
r0, const char *
opt)
¶Это 3d версия графика. Здесь массивы ax, ay, az должны трёхмерными тензорами и цвет пропорционален \sqrt{ax^2+ay^2+az^2}.