载入中...
搜索中...
未找到
eve::building::PlacedBuilding结构体 参考

已放置的建筑实例。 更多...

#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

Returns the prop.

在文件 BuildingDef.cpp 第 54 行定义.

引用了 key , 以及 props.

◆ hasTag()

bool eve::building::PlacedBuilding::hasTag ( const std::string &  tag) const

True when tag.

在文件 BuildingDef.cpp 第 50 行定义.

引用了 tag , 以及 tags.

◆ setProp()

void eve::building::PlacedBuilding::setProp ( const std::string &  key,
const std::string &  value 
)

Sets the prop.

在文件 BuildingDef.cpp 第 59 行定义.

引用了 key, props , 以及 value.

类成员变量说明

◆ buildingId

◆ channel

◆ corner

◆ edge

◆ 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

◆ 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

◆ level

◆ originCellX

◆ originCellY

◆ placementKind

◆ props

std::unordered_map<std::string, std::string> eve::building::PlacedBuilding::props

◆ rotationDeg

◆ supportInstanceIds

std::vector<int> eve::building::PlacedBuilding::supportInstanceIds

◆ surfaceHeightDelta

float eve::building::PlacedBuilding::surfaceHeightDelta = 0.f

◆ 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

◆ 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

◆ 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

◆ worldX

◆ worldY


该结构体的文档由以下文件生成: