已放置的建筑实例。 更多...
#include <BuildingTypes.h>
Public 成员函数 | |
| bool | hasTag (const std::string &tag) const |
| True when tag. | |
| std::string | getProp (const std::string &key, const std::string &fallback={}) const |
| Returns the prop. | |
| void | setProp (const std::string &key, const std::string &value) |
| Sets the prop. | |
Public 属性 | |
| int | instanceId = 0 |
| std::string | buildingId |
| std::string | placementKind = "cell" |
Placement domain snapshot: cell, edge, corner, or free. | |
| EdgeAddress | edge |
Canonical edge address when placementKind is edge. | |
| EdgeCurveGroupId | edgeCurveGroupId |
| Optional link to a world-owned curve group; zero means an ordinary edge. | |
| CornerAddress | corner |
Canonical grid vertex when placementKind is corner. | |
| float | freeRadius = 0.f |
| Committed free-domain collision radius in world-plane units. | |
| float | freeHalfWidth = 0.f |
| Committed OBB half width in world-plane units; zero denotes circular collision. | |
| float | freeHalfHeight = 0.f |
| Committed OBB half height in world-plane units; zero denotes circular collision. | |
| std::vector< float > | freeFootprintVertices |
| Committed convex local polygon as world-plane x/y pairs; empty selects OBB or circle. | |
| int | originCellX = 0 |
| int | originCellY = 0 |
| int | level = 0 |
| Authoritative discrete floor coordinate used by occupancy and topology. | |
| float | worldX = 0.f |
| float | worldY = 0.f |
| float | elevation = 0.f |
| std::string | surfaceId |
| Stable provider-local surface name used to create this placement; empty for unsurfaced placement. | |
| uint64_t | surfaceRevision = 0 |
| Provider revision observed when the surface attachment was sampled. | |
| float | surfaceNormalX = 0.f |
| Unit surface normal captured at placement time. | |
| float | surfaceNormalY = 1.f |
| float | surfaceNormalZ = 0.f |
| float | surfaceTangentX = 1.f |
| Unit tangent captured with the normal to define the local placement frame. | |
| float | surfaceTangentY = 0.f |
| float | surfaceTangentZ = 0.f |
| int | surfaceSampleCount = 0 |
| float | surfaceMaxSlopeDegrees = 0.f |
| float | surfaceHeightDelta = 0.f |
| float | rotationDeg = 0.f |
| std::string | channel |
| std::unordered_map< std::string, std::string > | props |
| std::vector< std::string > | tags |
| std::vector< int > | supportInstanceIds |
| Derived support links rebuilt from authoritative level/address data. | |
| std::vector< GarrisonMember > | garrison |
| Authoritative logical garrison membership, not a render list. | |
| eve::Revision | garrisonRevision = eve::Revision::zero() |
| Revision used by the garrison container adapter for stale checks. | |
详细描述
已放置的建筑实例。
在文件 BuildingTypes.h 第 184 行定义.
成员函数说明
◆ getProp()
| std::string eve::building::PlacedBuilding::getProp | ( | const std::string & | key, |
| const std::string & | fallback = {} |
||
| ) | const |
◆ hasTag()
| bool eve::building::PlacedBuilding::hasTag | ( | const std::string & | tag | ) | const |
◆ setProp()
| void eve::building::PlacedBuilding::setProp | ( | const std::string & | key, |
| const std::string & | value | ||
| ) |
类成员变量说明
◆ buildingId
| std::string eve::building::PlacedBuilding::buildingId |
在文件 BuildingTypes.h 第 186 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ channel
| std::string eve::building::PlacedBuilding::channel |
◆ corner
| CornerAddress eve::building::PlacedBuilding::corner |
Canonical grid vertex when placementKind is corner.
在文件 BuildingTypes.h 第 194 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveCornerResult(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ edge
| EdgeAddress eve::building::PlacedBuilding::edge |
Canonical edge address when placementKind is edge.
在文件 BuildingTypes.h 第 190 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::replaceBuildingResult() , 以及 eve::building::PlacementSystem::restoreExact().
◆ edgeCurveGroupId
| EdgeCurveGroupId eve::building::PlacedBuilding::edgeCurveGroupId |
Optional link to a world-owned curve group; zero means an ordinary edge.
在文件 BuildingTypes.h 第 192 行定义.
被这些函数引用 eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::replaceBuildingResult() , 以及 eve::building::PlacementSystem::restoreExact().
◆ elevation
| float eve::building::PlacedBuilding::elevation = 0.f |
垂直高度(平面法向):XY 平面 = 世界 Z;XZ 平面 = 世界 Y。
在文件 BuildingTypes.h 第 210 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementWorld::getBuildingWorldY(), eve::building::PlacementWorld::getBuildingWorldZ(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ freeFootprintVertices
| std::vector<float> eve::building::PlacedBuilding::freeFootprintVertices |
Committed convex local polygon as world-plane x/y pairs; empty selects OBB or circle.
在文件 BuildingTypes.h 第 202 行定义.
◆ freeHalfHeight
| float eve::building::PlacedBuilding::freeHalfHeight = 0.f |
Committed OBB half height in world-plane units; zero denotes circular collision.
在文件 BuildingTypes.h 第 200 行定义.
◆ freeHalfWidth
| float eve::building::PlacedBuilding::freeHalfWidth = 0.f |
Committed OBB half width in world-plane units; zero denotes circular collision.
在文件 BuildingTypes.h 第 198 行定义.
◆ freeRadius
| float eve::building::PlacedBuilding::freeRadius = 0.f |
Committed free-domain collision radius in world-plane units.
在文件 BuildingTypes.h 第 196 行定义.
◆ garrison
| std::vector<GarrisonMember> eve::building::PlacedBuilding::garrison |
Authoritative logical garrison membership, not a render list.
在文件 BuildingTypes.h 第 233 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation().
◆ garrisonRevision
| eve::Revision eve::building::PlacedBuilding::garrisonRevision = eve::Revision::zero() |
Revision used by the garrison container adapter for stale checks.
在文件 BuildingTypes.h 第 235 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation().
◆ instanceId
| int eve::building::PlacedBuilding::instanceId = 0 |
在文件 BuildingTypes.h 第 185 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::placeCornerResult(), eve::building::PlacementSystem::placeEdge(), eve::building::PlacementSystem::placeFreeResult(), eve::building::PlacementSystem::placeFreeSurfaceResult(), eve::building::PlacementSystem::placeGhost() , 以及 eve::building::PlacementSystem::restoreExact().
◆ level
| int eve::building::PlacedBuilding::level = 0 |
Authoritative discrete floor coordinate used by occupancy and topology.
在文件 BuildingTypes.h 第 206 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementWorld::getBuildingWorldY(), eve::building::PlacementWorld::getBuildingWorldZ(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult() , 以及 eve::building::PlacementSystem::restoreExact().
◆ originCellX
| int eve::building::PlacedBuilding::originCellX = 0 |
在文件 BuildingTypes.h 第 203 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ originCellY
| int eve::building::PlacedBuilding::originCellY = 0 |
在文件 BuildingTypes.h 第 204 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ placementKind
| std::string eve::building::PlacedBuilding::placementKind = "cell" |
Placement domain snapshot: cell, edge, corner, or free.
在文件 BuildingTypes.h 第 188 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ props
| std::unordered_map<std::string, std::string> eve::building::PlacedBuilding::props |
在文件 BuildingTypes.h 第 228 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), getProp() , 以及 setProp().
◆ rotationDeg
| float eve::building::PlacedBuilding::rotationDeg = 0.f |
在文件 BuildingTypes.h 第 226 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ supportInstanceIds
| std::vector<int> eve::building::PlacedBuilding::supportInstanceIds |
Derived support links rebuilt from authoritative level/address data.
在文件 BuildingTypes.h 第 231 行定义.
被这些函数引用 eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult() , 以及 eve::building::PlacementSystem::restoreExact().
◆ surfaceHeightDelta
| float eve::building::PlacedBuilding::surfaceHeightDelta = 0.f |
在文件 BuildingTypes.h 第 225 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation().
◆ surfaceId
| std::string eve::building::PlacedBuilding::surfaceId |
Stable provider-local surface name used to create this placement; empty for unsurfaced placement.
在文件 BuildingTypes.h 第 212 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ surfaceMaxSlopeDegrees
| float eve::building::PlacedBuilding::surfaceMaxSlopeDegrees = 0.f |
在文件 BuildingTypes.h 第 224 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation().
◆ surfaceNormalX
| float eve::building::PlacedBuilding::surfaceNormalX = 0.f |
Unit surface normal captured at placement time.
在文件 BuildingTypes.h 第 216 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ surfaceNormalY
| float eve::building::PlacedBuilding::surfaceNormalY = 1.f |
◆ surfaceNormalZ
| float eve::building::PlacedBuilding::surfaceNormalZ = 0.f |
◆ surfaceRevision
| uint64_t eve::building::PlacedBuilding::surfaceRevision = 0 |
Provider revision observed when the surface attachment was sampled.
在文件 BuildingTypes.h 第 214 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation().
◆ surfaceSampleCount
| int eve::building::PlacedBuilding::surfaceSampleCount = 0 |
在文件 BuildingTypes.h 第 223 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation().
◆ surfaceTangentX
| float eve::building::PlacedBuilding::surfaceTangentX = 1.f |
Unit tangent captured with the normal to define the local placement frame.
在文件 BuildingTypes.h 第 220 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ surfaceTangentY
| float eve::building::PlacedBuilding::surfaceTangentY = 0.f |
◆ surfaceTangentZ
| float eve::building::PlacedBuilding::surfaceTangentZ = 0.f |
◆ tags
| std::vector<std::string> eve::building::PlacedBuilding::tags |
◆ worldX
| float eve::building::PlacedBuilding::worldX = 0.f |
在文件 BuildingTypes.h 第 207 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::moveFreeResult(), eve::building::PlacementSystem::moveFreeSurfaceResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
◆ worldY
| float eve::building::PlacedBuilding::worldY = 0.f |
在文件 BuildingTypes.h 第 208 行定义.
被这些函数引用 eve::building_editing::BuildingPlacementTarget::applyDomainOperation(), eve::building::PlacementWorld::getBuildingWorldY(), eve::building::PlacementWorld::getBuildingWorldZ(), eve::building::PlacementSystem::moveBuildingResult(), eve::building::PlacementSystem::moveEdgeResult(), eve::building::PlacementSystem::placeAt(), eve::building::PlacementSystem::replaceBuildingResult(), eve::building::PlacementSystem::restoreExact() , 以及 eve::buildingfx::BuildingFx::updateGhost().
该结构体的文档由以下文件生成:
- src/modules/building/BuildingTypes.h
- src/modules/building/BuildingDef.cpp