Dandelion 1.1.2
A light-weight 3D builder for educational usage
载入中...
搜索中...
未找到
Group类 参考

表示物体组的类。 更多...

#include <group.h>

Public 成员函数

 Group (const std::string &group_name)
bool load (const std::string &file_path)
 Group (Group &other)=delete
 Group (const Group &other)=delete

Public 属性

std::vector< std::unique_ptr< Object > > objects
std::size_t id
std::string name

Private 属性

std::shared_ptr< spdlog::logger > logger

静态 Private 属性

static std::size_t next_available_id = 0

详细描述

表示物体组的类。

一个模型文件(例如一个 obj 文件)中可以包含多个物体, 因此加载一个模型文件的结果是一个组而不是一个物体。加载完成后,组名即文件名、 各物体名即文件中各 mesh 的名称。在删除组中所有的物体后该组为空但不会被删除, 未来将实现组间转移物体和向组中添加物体的功能。

构造及析构函数说明

◆ Group() [1/3]

Group::Group ( const std::string & group_name)

创建一个组只需要指定组名,加载模型数据要显式调用 load 方法。

参数
position要创建组的组名

◆ Group() [2/3]

Group::Group ( Group & other)
delete

禁止复制组。

◆ Group() [3/3]

Group::Group ( const Group & other)
delete

禁止复制组。

成员函数说明

◆ load()

bool Group::load ( const std::string & file_path)

Scene::load 调用,真正加载模型数据的函数。

参数
file_path要加载模型的文件路径

类成员变量说明

◆ id

std::size_t Group::id

组的唯一 ID。

◆ name

std::string Group::name

组名,来自加载时的文件名。

◆ next_available_id

size_t Group::next_available_id = 0
staticprivate

下一个可用的组 ID。

◆ objects

std::vector<std::unique_ptr<Object> > Group::objects

组中所有的物体。


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