[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Этот класс производный от класса mglGraph (см. Ядро MathGL). Он определен в #include <mgl2/window.h>
. Класс содержит методы для создания и управления окном, содержащим графику MathGL. Похожий набор классов существует отдельно для каждой библиотеки виджетов: mglQT
в #include <mgl2/qt.h>
, mglFLTK
в #include <mgl2/fltk.h>
, mglWX
в #include <mgl2/wx.h>
.
mglWindow
: mglWindow (const char *
title="MathGL"
)mglWindow
: mglWindow (int
(*draw)(HMGL
gr, void *
p), const char *
title="MathGL"
, void *
par=NULL
, int
kind=0
, void
(*reload)(HMGL
gr, void *
p)=0)mglWindow
: mglWindow (int
(*draw)(mglGraph *
gr), const char *
title="MathGL"
, int
kind=0
)mglWindow
: mglWindow (mglDraw *
draw, const char *
title="MathGL"
, int
kind=0
)HMGL
mgl_create_graph_qt (int
(*draw)(HMGL
gr, void *
p), const char *
title, void *
par, void
(*reload)(HMGL
gr, void *
p))HMGL
mgl_create_graph_fltk (int
(*draw)(HMGL
gr, void *
p), const char *
title, void *
par, void
(*reload)(HMGL
gr, void *
p))HMGL
mgl_create_graph_glut (int
(*draw)(HMGL
gr, void *
p), const char *
title, void *
par, void
(*reload)(HMGL
gr, void *
p))Создает окно для вывода графика. Параметр draw – указатель (имя) функции рисования. Есть возможность создания нескольких кадров вначале (требует больше памяти) и их быстрая анимации в дальнейшем. В этом случае функция draw должна возвращать число кадров или ноль для рисования по запросу. Замечу, что draw может быть равна NULL
для отображения статической (текущей) картинки. Параметр title задает заголовок окна. Параметр par содержит указатель на данные, передаваемые функции рисования draw. Параметр kind может иметь следующие значения: ‘0’ – использовать окно FLTK, ‘1’ – использовать окно Qt.
В окне просмотра можно использовать клавиши: ’a’, ’d’, ’w’, ’s’ для вращения; ’,’, ’.’ для просмотра предыдущего и следующего кадров; ’r’ для переключения прозрачности; ’f’ для переключения оспещенности; ’x’ для закрытия окна.
mglWindow
: int
RunThr ()int
mgl_fltk_thr ()Запускает цикл обработки сообщений в отдельном потоке. В данный момент работает только для окон FLTK.
mglWindow
: int
Run ()int
mgl_qt_run ()int
mgl_fltk_run ()Запускает цикл обработки сообщений. Обычно эта функция должна вызываться в отдельном потоке или последней функцией в main()
.
mglWindow
: void
SetClickFunc (void
(*func)(HMGL
gr, void *
p))void
mgl_set_click_func (void
(*func)(HMGL
gr, void *
p))Устанавливает функцию, которая будет вызвана при щелчке мышью.
mglWindow
: void
ToggleAlpha ()void
mgl_wnd_toggle_alpha (HMGL
gr)Включает/выключает прозрачность, но не перекрывает ее включение в пользовательской функции рисования.
mglWindow
: void
ToggleLight ()void
mgl_wnd_toggle_light (HMGL
gr)Включает/выключает освещение, но не перекрывает его включение в пользовательской функции рисования.
mglWindow
: void
ToggleRotate ()void
mgl_wnd_toggle_rotate (HMGL
gr)Включает/выключает вращение мышкой. Нажатая левая кнопка используется для вращения, средняя для сдвига, правая для приближения/перспективы.
mglWindow
: void
ToggleZoom ()void
mgl_wnd_toggle_zoom (HMGL
gr)Включает/выключает приближение мышкой. Выделите прямоугольную область и она будет приближена.
mglWindow
: void
ToggleNo ()void
mgl_wnd_toggle_no (HMGL
gr)Выключает вращение и приближение мышкой, а также восстанавливает исходный вид графика.
mglWindow
: void
Update ()void
mgl_wnd_update (HMGL
gr)Обновляет содержимое окна. Функция полезна при ручном обновлении содержимого, пока долгий расчет идет в параллельном потоке.
mglWindow
: void
ReLoad ()void
mgl_wnd_reload (HMGL
gr)Перегружает данные и обновляет рисунок. Функция также обновляет число кадров, которое создает функция рисования.
mglWindow
: void
Adjust ()void
mgl_wnd_adjust (HMGL
gr)Подгоняет размер рисунка под размер окна.
mglWindow
: void
NextFrame ()void
mgl_wnd_next_frame (HMGL
gr)Показывает следующий кадр, если он есть.
mglWindow
: void
PrevFrame ()void
mgl_wnd_prev_frame (HMGL
gr)Показывает предыдущий кадр, если он есть.
mglWindow
: void
Animation ()void
mgl_wnd_animation (HMGL
gr)Запускает/останавливает анимацию кадров.
mglWindow
: void
SetDelay (double
dt)void
mgl_wnd_set_delay (HMGL
gr, double
dt)Задает задержку при анимации в секундах. По умолчанию интервал – 1 секунда.
mglWindow
: double
GetDelay ()double
mgl_wnd_get_delay (HMGL
gr)Возвращает задержку при анимации в секундах.
mglWindow
: void
Setup (bool
clfupd=true
, bool
showpos=false
)void
mgl_setup_window (HMGL
gr, bool
clfupd, bool
showpos)Включает/выключает:
mglWindow
: mglPoint
LastMousePos ()void
mgl_get_last_mouse_pos (HMGL
gr, mreal *
x, mreal *
y, mreal *
z)Возвращает положение щелчка мыши.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] |
This document was generated by Autobuild on September 28, 2013 using texi2html 1.82.