Dandelion 1.1.1
A light-weight 3D builder for educational usage
载入中...
搜索中...
未找到
UI::Toolbar类 参考

工具栏提供大部分对场景、物体、相机和光源的操作。 更多...

#include <toolbar.h>

Public 成员函数

 Toolbar (WorkingMode &mode, const SelectableType &selected_element)
 工具栏持有对工作模式的引用和对选中元素的引用,构造时必须传递。
 
void render (Scene &scene)
 

Public 属性

std::function< void(SelectableType)> on_element_selected
 
std::function< void()> on_selection_canceled
 

Private 成员函数

void scene_hierarchies (Scene &scene)
 
void xyz_drag (float *x, float *y, float *z, float v_speed, const char *format="%.2f")
 
void material_editor (GL::Material &material)
 
void layout_mode (Scene &scene)
 
void model_mode (Scene &scene)
 
void render_mode (Scene &scene)
 
void simulate_mode (Scene &scene)
 

Private 属性

WorkingModemode
 
const SelectableTypeselected_element
 
unsigned int gl_rendered_texture
 

详细描述

工具栏提供大部分对场景、物体、相机和光源的操作。

构造及析构函数说明

◆ Toolbar()

Toolbar::Toolbar ( WorkingMode & mode,
const SelectableType & selected_element )

工具栏持有对工作模式的引用和对选中元素的引用,构造时必须传递。

工具栏还有 on_element_selectedon_selection_canceled 两个与选择和拾取有关的回调函数,如果没有设置这两个回调函数,工具栏将不能正常工作。 但构造函数并不会设置它们,而是由控制器在创建工具栏时设置。目前,

成员函数说明

◆ layout_mode()

void Toolbar::layout_mode ( Scene & scene)
private

布局模式对应的标签页。

◆ material_editor()

void Toolbar::material_editor ( GL::Material & material)
private

显示并编辑单个物体的材质属性。

◆ model_mode()

void Toolbar::model_mode ( Scene & scene)
private

建模模式对应的标签页。

◆ render()

void Toolbar::render ( Scene & scene)

显示工具栏。

◆ render_mode()

void Toolbar::render_mode ( Scene & scene)
private

渲染模式对应的标签页。

◆ scene_hierarchies()

void Toolbar::scene_hierarchies ( Scene & scene)
private

将场景层次结构展示为一个树形列表。

◆ simulate_mode()

void Toolbar::simulate_mode ( Scene & scene)
private

物理模拟模式对应的标签页。

◆ xyz_drag()

void Toolbar::xyz_drag ( float * x,
float * y,
float * z,
float v_speed,
const char * format = "%.2f" )
private

显示标签分别为 x, y, z 的三个 ImGui::DragFloat 控件。

类成员变量说明

◆ gl_rendered_texture

unsigned int UI::Toolbar::gl_rendered_texture
private

用于在渲染模式下展示渲染结果的 OpenGL 纹理描述符。

◆ mode

WorkingMode& UI::Toolbar::mode
private

与 Dandelion 的工作模式一一对应,render 方法据此调整渲染行为。

◆ on_element_selected

std::function<void(SelectableType)> UI::Toolbar::on_element_selected

选中元素时的回调函数。

◆ on_selection_canceled

std::function<void()> UI::Toolbar::on_selection_canceled

取消选中时的回调函数。

◆ selected_element

const SelectableType& UI::Toolbar::selected_element
private

工具栏需要了解当前被选中的元素才能显示相应的操作。


该类的文档由以下文件生成: