gwnavruntime/queries/blobs/navfloorboxblob.h Source File
Go to the documentation of this file.
33 ValidityStatus GetValidityStatus()
const {
return (ValidityStatus)m_status; }
42 SwapEndianness(e,
self.m_floorAABB);
43 SwapEndianness(e,
self.m_cellPos);
44 SwapEndianness(e,
self.m_status);
48 class NavFloorBoxBlobBuilder :
public BaseBlobBuilder<NavFloorBoxBlob>
51 NavFloorBoxBlobBuilder(
const NavFloorPtr& floorPtr) : m_floorPtr(floorPtr) {}
57 if (m_floorPtr.IsValid() ==
false)
63 NavFloor* navFloor = m_floorPtr.GetNavFloor_Unsafe();
64 const NavFloorBlob* navFloorBlob = navFloor->GetNavFloorBlob();
66 const DatabaseGenMetrics& databaseGenMetrics = navFloor->m_database->GetDatabaseGenMetrics();
69 const CoordPos64 cellOrigin64(databaseGenMetrics.ComputeCellOrigin(navFloor->GetCellPos()));
70 const Vec2f cellOrigin(databaseGenMetrics.GetFloatValueFromInteger64(cellOrigin64.x), databaseGenMetrics.GetFloatValueFromInteger64(cellOrigin64.y));
72 m_blob->m_floorAABB.m_min.x = cellOrigin.x + databaseGenMetrics.GetFloatValueFromInteger32(navFloorBlob->m_navFloorAABB.m_min.GetX32());
73 m_blob->m_floorAABB.m_max.x = cellOrigin.x + databaseGenMetrics.GetFloatValueFromInteger32(navFloorBlob->m_navFloorAABB.m_max.GetX32());
75 m_blob->m_floorAABB.m_min.y = cellOrigin.y + databaseGenMetrics.GetFloatValueFromInteger32(navFloorBlob->m_navFloorAABB.m_min.GetY32());
76 m_blob->m_floorAABB.m_max.y = cellOrigin.y + databaseGenMetrics.GetFloatValueFromInteger32(navFloorBlob->m_navFloorAABB.m_max.GetY32());
78 m_blob->m_floorAABB.m_min.z = navFloor->m_floorAltitudeRange.m_minZ;
79 m_blob->m_floorAABB.m_max.z = navFloor->m_floorAltitudeRange.m_maxZ;
88 NavFloorPtr m_floorPtr;
Blob to visual debug NavFloor information.
Definition: navfloorboxblob.h:21
std::uint16_t KyUInt16
uint16_t
Definition: types.h:28
CellPos m_cellPos
The position of the cell that contains this floor within the grid of PathData cells.
Definition: navfloorboxblob.h:36
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:27
3d axis aligned box of 32bits floating points
Definition: box3f.h:16
Vec2LL CoordPos64
A type that represents the position of a point within the 2D integer grid.
Definition: navmeshtypes.h:16
NavFloorBoxBlob * m_blob
The blob maintained by this builder. Only modify using the macros listed under DoBuild().
Definition: baseblobbuilder.h:113
2d vector using KyInt32
Definition: vec2i.h:18
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
bool IsWriteMode()
Indicates whether the builder is operating in COUNT mode or in WRITE mode.
Definition: baseblobbuilder.h:43