Buran Motion Planning Framework
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
bmpf::GLScene Class Referenceabstract

Базовый класс GL сцены для упрощения работы с OpenGL Базовый класс GL сцены для упрощения работы с OpenGL, почти все нужные методы уже прописаны, необходимо написать класс-потомок, у которого должны быть определены методы инициализации init(), рисования render() и изменения состояния сцены changeState() More...

#include <gl_scene.h>

Inheritance diagram for bmpf::GLScene:
Inheritance graph
[legend]

Public Member Functions

 GLScene (int clientWidth, int clientHeight, const char *caption)
 
virtual void initGL ()
 
virtual void renderGL ()
 
virtual void motionFunc (int x, int y)
 
virtual void myKeyboard (unsigned char key)
 
virtual void myReshape (int width, int height)
 

Protected Member Functions

virtual void init ()=0
 
virtual void render ()=0
 
virtual void changeState (int num, int delta)=0
 
virtual void incActualState ()
 
virtual void decActualState ()
 
virtual void incTarget ()
 
virtual void decTarget ()
 

Protected Attributes

bool _flgPlay
 

Detailed Description

Базовый класс GL сцены для упрощения работы с OpenGL Базовый класс GL сцены для упрощения работы с OpenGL, почти все нужные методы уже прописаны, необходимо написать класс-потомок, у которого должны быть определены методы инициализации init(), рисования render() и изменения состояния сцены changeState()

Шаблон приложения находится в файле demo_gl_scene.cpp

Управление состояниями парами (первая кнопка увеличивает, вторая уменьшает): ['1', '2'], ['3', '4'], ['5', '6'], ['7', '8'], ['9', '0'], ['-', '='], ['q', 'w'], ['e', 'r'], ['t', 'y']

[z, x] - изменение цели (еслои роботов несколько)

[c, v] - изменение номера текущего состояния (если реализован просмотр истории)

Работает только на английской раскладке

По пробелу меняется флаг _flgPlay, чтобы реализовать паузу/плей, обращайтесь из класса-потомка к этому полю

Constructor & Destructor Documentation

◆ GLScene()

bmpf::GLScene::GLScene ( int  clientWidth,
int  clientHeight,
const char *  caption 
)
inline

Конструктор GL сцены

Parameters
clientWidthширина окна
clientHeightвысота окна
captionзаголовок

Member Function Documentation

◆ changeState()

virtual void bmpf::GLScene::changeState ( int  num,
int  delta 
)
protectedpure virtual

изменение состояния сцены, num - номер сочленения, delta - направление изменения (только 1 или -1)

Parameters
num
delta

Implemented in TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, DHRobotScene, UERDFRobotScene, and TemplateGLScene.

◆ decActualState()

virtual void bmpf::GLScene::decActualState ( )
inlineprotectedvirtual

перейти к предыдущему состоянию

Reimplemented in TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, and TemplateGLScene.

◆ decTarget()

virtual void bmpf::GLScene::decTarget ( )
inlineprotectedvirtual

перейти к предыдущей цели

Reimplemented in TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, and TemplateGLScene.

◆ incActualState()

virtual void bmpf::GLScene::incActualState ( )
inlineprotectedvirtual

перейти к следующему состоянию

Reimplemented in TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, and TemplateGLScene.

◆ incTarget()

virtual void bmpf::GLScene::incTarget ( )
inlineprotectedvirtual

перейти к следующей цели

Reimplemented in TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, and TemplateGLScene.

◆ init()

virtual void bmpf::GLScene::init ( )
protectedpure virtual

инициализация, определённая в потомке

Implemented in DHRobotScene, TemplateGLScene, UERDFRobotScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, TemplateGLScene, and TemplateGLScene.

◆ initGL()

void GLScene::initGL ( )
virtual

инициализация OpenGL

◆ motionFunc()

void GLScene::motionFunc ( int  x,
int  y 
)
virtual

обработчик мыши

Parameters
xкоордината X
yкоордината Y

◆ myKeyboard()

void GLScene::myKeyboard ( unsigned char  key)
virtual

обработчик клавиатуры

Parameters
keyвведённый символ

◆ myReshape()

void GLScene::myReshape ( int  width,
int  height 
)
virtual

обработчик изменения размеров окна

Parameters
widthширина окна
heightвысота окна

◆ render()

virtual void bmpf::GLScene::render ( )
protectedpure virtual

◆ renderGL()

void GLScene::renderGL ( )
virtual

рисование OpenGL

Member Data Documentation

◆ _flgPlay

bool bmpf::GLScene::_flgPlay
protected

флаг режима Play


The documentation for this class was generated from the following files: