![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <PointSetHashTable.h>
Public Member Functions | |
| FPointSetHashtable (FPointSetAdapterd *PointSetIn) | |
| GEOMETRYCORE_API void | Build (double CellSize, const FVector3d &Origin) |
| GEOMETRYCORE_API bool | FindPointsInBall (const FVector3d &QueryPt, double QueryRadius, TArray< int > &ResultOut) |
Protected Types | |
| typedef TArray< int > | PointList |
Protected Attributes | |
| FPointSetAdapterd * | Points |
| TSparseGrid3< PointList > | Grid |
| FShiftGridIndexer3d | GridIndexer |
| FVector3d | Origin |
| double | CellSize |
FPointSetHashTable builds a spatial data structure that supports efficient range queries on a point set (in FPointSetAdapterd form). The spatial data structure is currently a uniform sparse 3D grid.
|
protected |
|
inline |
Construct the spatial data structure for the current point set
| CellSize | the size of the cells/voxels in the grid. |
| Origin | World origin of the grid (not strictly necessary since grid is sparse, can set to origin for example) |
| bool FPointSetHashtable::FindPointsInBall | ( | const FVector3d & | QueryPt, |
| double | QueryRadius, | ||
| TArray< int > & | ResultOut | ||
| ) |
Find all points within given query distance from query point. Note that in current implementation the distance must be less than the CellSize used in construction, ie at most the directly adjacent neighbours next to the cell containing QueryPt can be searched
| QueryPt | center of search sphere/ball |
| QueryRadius | radius of search sphere/ball. Points within this distance of QueryPt are returned. |
| ResultOut | indices of discovered points are stored in this list |
|
protected |
Cell size of grid
|
protected |
Sparse grid, each voxel contains lists of contained points
|
protected |
index mapping object
|
protected |
World origin of sparse grid
|
protected |
Input point set