| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Эти функции контролируют где и как график будет расположен. Существует определенный порядок вызова этих функций для лучшего вида графика. Вначале должны вызываться функции subplot, multiplot или inplot для указания местоположения вывода. После них – функции вращения rotate и aspect. И наконец любые другие функции для рисования графика. Вместо вращения графика можно вызвать функцию columnplot, gridplot, stickplot или относительную inplot для расположения графиков в столбец одного над другим без зазора между осями. См. раздел Subplots, для примеров кода и графика.
nx ny m ['stl'='<>_^' dx=0 dy=0]mglGraph: void SubPlot (int nx, int ny, int m, const char *stl="<>_^", mreal dx=0, mreal dy=0)void mgl_subplot (HMGL gr, int nx, int ny, int m, const char *stl)void mgl_subplot_d (HMGL gr, int nx, int ny, int m, const char *stl, mreal dx, mreal dy)Помещает последующий вывод в m-ую ячейку сетки размером nx*ny от всего рисунка. Функция сбрасывает матрицу трансформации (повороты и сжатие графика) и должна вызываться первой для создания "подграфика". С эстетической точки зрения не рекомендуется вызывать эту функцию с различными (или не кратными) размерами сетки. Место для осей/colorbar резервируется только если строка stl содержит: ‘L’ или ‘<’ – с левого края, ‘R’ или ‘>’ – с правого края, ‘A’ или ‘^’ – с верхнего края, ‘U’ или ‘_’ – с нижнего края. Если строка stl содержит ‘#’, то оси координат будут занимать все доступное пространство (место резервироваться не будет). Ячейка может быть дополнительно сдвинута относительно своего обычного положения на относительный размер dx, dy.
nx ny m dx dy ['style'='<>_^']mglGraph: void MultiPlot (int nx, int ny, int m, int dx, int dy, const char *stl="<>_^")void mgl_multiplot (HMGL gr, int nx, int ny, int m, int dx, int dy, const char *stl)Помещает последующий вывод в прямоугольник из dx*dy ячеек, начиная с m-ой ячейки, сетки размером nx*ny от всего рисунка. Функция сбрасывает матрицу трансформации (повороты и сжатие графика) и должна вызываться первой для создания "подграфика". Место для осей/colorbar резервируется если строка stl содержит: ‘L’ или ‘<’ – с левого края, ‘R’ или ‘>’ – с правого края, ‘A’ или ‘^’ – с верхнего края, ‘U’ или ‘_’ – с нижнего края.
x1 x2 y1 y2 [rel=on]mglGraph: void InPlot (mreal x1, mreal x2, mreal y1, mreal y2, bool rel=true)void mgl_inplot (HMGL gr, mreal x1, mreal x2, mreal y1, mreal y2)void mgl_relplot (HMGL gr, mreal x1, mreal x2, mreal y1, mreal y2)Помещает последующий вывод в прямоугольную область [x1, x2]*[y1, y2] (исходный размер [0,1]*[0,1]). Эта функция позволяет поместить график в произвольную область рисунка. Если параметр rel=true, то используется позиция относительно текущего subplot (или inplot с rel=false). Функция сбрасывает матрицу трансформации (повороты и сжатие графика) и должна вызываться первой для создания "подграфика".
num ind [d=0]mglGraph: void ColumnPlot (int num, int ind, mreal d=0)void mgl_columnplot (HMGL gr, int num, int ind)void mgl_columnplot_d (HMGL gr, int num, int ind, mreal d)Помещает последующий вывод в ind-ую строку столбца из num строк. Положение столбца выбирается относительно последнего вызова subplot (или inplot с rel=false). Параметр d задает дополнительный зазор между строк.
nx ny ind [d=0]mglGraph: void GridPlot (int nx, int ny, int ind, mreal d=0)void mgl_gridplot (HMGL gr, int nx, int ny, int ind)void mgl_gridplot_d (HMGL gr, int nx, int ny, int ind, mreal d)Помещает последующий вывод в ind-ую ячейку таблицы nx*ny. Положение ячейки выбирается относительно последнего вызова subplot (или inplot с rel=false). Параметр d задает дополнительный зазор между строк.
num ind tet phimglGraph: void StickPlot (int num, int ind, mreal tet, mreal phi)void mgl_stickplot (HMGL gr, int num, int ind, mreal tet, mreal phi)Помещает последующий вывод в ind-ую ячейку "бруска" из num ячеек. При этом сам брусок повернут на углы tet, phi. Положение выбирается относительно последнего вызова subplot (или inplot с rel=false).
size=-2]mglGraph: void Title (const char *txt, const char *stl="", mreal size=-2)mglGraph: void Title (const wchar_t *txt, const char *stl="", mreal size=-2)void mgl_title (HMGL gr, const char *txt, const char *stl, mreal size)void mgl_titlew (HMGL gr, const wchar_t *txt, const char *stl, mreal size)Выводит заголовок title для текущего "подграфика" шрифтом stl с размером size. Если строка stl содержит ‘#’, то рисуется обрамляющий прямоугольник. Функция сбрасывает матрицу трансформации (повороты и сжатие графика) и должна вызываться сразу после создания "подграфика".
tetz tetx [tety=0]mglGraph: void Rotate (mreal TetX, mreal TetZ, mreal TetY=0)void mgl_rotate (HMGL gr, mreal TetX, mreal TetZ, mreal TetY)Вращает систему координат относительно осей {x, z, y} последовательно на углы TetX, TetZ, TetY.
tet x y zmglGraph: void RotateN (mreal Tet, mreal x, mreal y, mreal z)void mgl_rotate_vector (HMGL gr, mreal Tet, mreal x, mreal y, mreal z)Вращает систему координат относительно вектора {x, y, z} на угол Tet.
ax ay [az=1]mglGraph: void Aspect (mreal Ax, mreal Ay, mreal Az=1)void mgl_aspect (HMGL gr, mreal Ax, mreal Ay, mreal Az)Устанавливает соотношение размеров осей в отношении Ax:Ay:Az. Для лучшего вида следует вызывать после функции rotate. Если Ax=NAN, то функция выберет оптимальное соотношение размеров, чтобы шаг по осям x-y был одинаков. При этом, Ay задает фактор пропорциональности шага (обычно 1), или указывает на его автоматический выбор при Ay=NAN.
valmglGraph: void Perspective (mreal a)void mgl_perspective (HMGL gr, mreal a)Добавляет (включает) перспективу для графика. Параметр a ~ 1/z_eff \in [0,1). По умолчанию (a=0) перспектива отключена.
mglGraph: void Push ()void mgl_mat_push (HMGL gr)Помещает матрицу преобразования в стек. Позднее вы можете восстановить текущее состояние с помощью функции Pop().
mglGraph: void Pop ()void mgl_mat_pop (HMGL gr)Заменяет (восстанавливает) матрицу преобразования на последнюю помещенную в стек матрицу.
mglGraph: void SetPlotFactor (mreal val)void mgl_set_plotfactor (HMGL gr, mreal val)Задает масштаб картинки. Не рекомендуется устанавливать значения меньше 1.5. Это аналог функции Zoom(), но применяется только к конкретному подграфику. Используйте ноль для включения автоматического масштабирования.
Также есть 2 функции, которые управляют масштабированием Zoom() и вращением View() всего рисунка. Т.е. они действуют как ещё одна матрица трансформации. Они были введены для вращения/приближения графика с помощью мыши. Не рекомендуется вызывать их при рисовании графика.
tetx tetz [tety=0]mglGraph: void View (mreal TetX, mreal TetZ, mreal TetY=0)void mgl_view (HMGL gr, mreal TetX, mreal TetZ, mreal TetY)Вращает систему координат относительно осей {x, z, y} последовательно на углы TetX, TetZ, TetY. Вращение происходит независимо от rotate. Внимание! эти настройки не могут быть переписаны функцией DefaultPlotParam(). Используйте Zoom(0,0,1,1) для возвращения к виду по умолчанию.
x1 y1 x2 y2mglGraph: void Zoom (mreal x1, mreal y1, mreal x2, mreal y2)void mgl_set_zoom (HMGL gr, mreal x1, mreal y1, mreal x2, mreal y2)Масштабирует весь рисунок. После вызова функции текущий график будет очищен и в дальнейшем рисунок будет содержать только область [x1,x2]*[y1,y2] от исходного рисунка. Координаты x1, x2, y1, y2 меняются в диапазоне от 0 до 1. Внимание! эти настройки не могут быть переписаны никакими другими функциями, включая DefaultPlotParam(). Используйте Zoom(0,0,1,1) для возвращения к виду по умолчанию.
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] |
This document was generated by Autobuild on September 28, 2013 using texi2html 1.82.