布局生成器:把 HouseRequest 解析为 HouseLayout(组件库驱动)。 更多...
#include <HouseGenerator.h>
Public 成员函数 | |
| HouseGenerator (const HouseComponentLibrary *library=nullptr) | |
| 绑定可选组件库(生成时也可用 setLibrary)。 | |
| void | setLibrary (const HouseComponentLibrary *library) |
| 更换组件库。 | |
| const HouseComponentLibrary * | library () const |
| 当前组件库。 | |
| bool | generate (const HouseRequest &request, HouseLayout &out, std::string *error=nullptr) const |
| 生成布局;失败返回 false 并写入 error。 | |
详细描述
布局生成器:把 HouseRequest 解析为 HouseLayout(组件库驱动)。
在文件 HouseGenerator.h 第 12 行定义.
构造及析构函数说明
◆ HouseGenerator()
|
inlineexplicit |
绑定可选组件库(生成时也可用 setLibrary)。
在文件 HouseGenerator.h 第 15 行定义.
成员函数说明
◆ generate()
| bool eve::housegen::HouseGenerator::generate | ( | const HouseRequest & | request, |
| HouseLayout & | out, | ||
| std::string * | error = nullptr |
||
| ) | const |
生成布局;失败返回 false 并写入 error。
在文件 HouseGenerator.cpp 第 120 行定义.
引用了 a, active, b, eve::housegen::HouseComponentLibrary::byCategory(), eve::housegen::HouseLayout::clear(), eve::housegen::HouseRequest::depth, eve::housegen::East, eve::housegen::HouseRequest::entrance, eve::housegen::HouseLayout::entranceSide, error, eve::housegen::HouseRequest::floorHeight, eve::housegen::HouseLayout::floorHeight, eve::housegen::HouseRequest::floors, eve::housegen::HouseRequest::footprint, eve::housegen::HouseLayout::footprintStyle, eve::housegen::HouseLayout::instances, eve::housegen::HouseRequest::maxAttempts, eve::housegen::HouseRequest::moduleSize, eve::housegen::HouseLayout::moduleSize, eve::housegen::North, eve::housegen::HouseRequest::roof, eve::housegen::HouseLayout::roofStyle, eve::housegen::HouseLayout::rooms, eve::housegen::HouseRequest::seed, eve::housegen::HouseLayout::seed, sides, eve::housegen::South, eve::housegen::HouseRequest::style, u, eve::housegen::West, eve::housegen::HouseRequest::width, x, y , 以及 z.
被这些函数引用 eve::housegen::HouseGen::generate().
◆ library()
|
inline |
◆ setLibrary()
|
inline |
该类的文档由以下文件生成:
- src/modules/housegen/HouseGenerator.h
- src/modules/housegen/HouseGenerator.cpp