Эти функции позволяют создавать несколько картинок одновременно. В большинстве случаев это бесполезно, но для органов управления (см. “Оконные” классы) это позволяет показывать анимацию. Также можно записать несколько кадров в анимированный GIF файл.
mglGraph: void NewFrame () ¶void mgl_new_frame (HMGL gr) ¶Создает новый кадр. Функция возвращает номер текущего кадра. В режиме OpenGL функция не должны вызываться в параллельных потоках! – используйте прямое создание списка. Функция EndFrame() должна быть вызвана после рисования кадра для каждого вызова этой функции.
mglGraph: void EndFrame () ¶void mgl_end_frame (HMGL gr) ¶Завершает рисование кадра.
mglGraph: int GetNumFrame () ¶int mgl_get_num_frame (HMGL gr) ¶Возвращает число созданных кадров.
mglGraph: void GetFrame (int i) ¶void mgl_get_frame (HMGL gr, int i) ¶Завершает рисование кадра и сохраняет объекты рисования в кадр с номером i, который должен быть в диапазоне [0, GetNumFrame()-1]. Функция аналогична EndFrame(), но не добавляет кадр в GIF изображение.
mglGraph: void GetFrame (int i) ¶void mgl_get_frame (HMGL gr, int i) ¶Заменяет объекты рисования на объекты из кадра с номером i. Функция работает если установлен флаг MGL_VECT_FRAME (по умолчанию).
mglGraph: void ShowFrame (int i) ¶void mgl_show_frame (HMGL gr, int i) ¶Добавляет объекты рисования из кадра с номером i к уже существующим. Функция работает если установлен флаг MGL_VECT_FRAME (по умолчанию).
mglGraph: void DelFrame (int i) ¶void mgl_del_frame (HMGL gr, int i) ¶Удаляет объекты рисования для кадра с номером i и сдвигает нумерацию всех последующих кадров. Функция работает если установлен флаг MGL_VECT_FRAME (по умолчанию).
mglGraph: void ResetFrames () ¶void mgl_reset_frames (HMGL gr) ¶Сбрасывает счетчик кадров в 0.
mglGraph: void ClearFrame (int i) ¶void mgl_clear_frame (HMGL gr, int i) ¶Очищает текущий список объектов.
mglGraph: void StartGIF (const char *fname, int ms=100) ¶void mgl_start_gif (HMGL gr, const char *fname, int ms) ¶Начинает запись кадров в анимированный GIF файл fname. Параметр ms задает задержку между кадрами в миллисекундах. Вы не должны менять размер рисунка во время создания кино. Используйте CloseGIF() для завершения записи. Эта функция не работает в режиме OpenGL.