UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Geometry::FBRIOPoints Struct Reference

#include <ZOrderCurvePoints.h>

Public Member Functions

 FBRIOPoints (int32 MaxTreeDepth=10)
 
GEOMETRYCORE_API void Compute (TArrayView< const FVector2d > Points, const FAxisAlignedBox2d &Bounds=FAxisAlignedBox2d::Empty(), const FRandomStream &Random=FRandomStream())
 
GEOMETRYCORE_API void Compute (TArrayView< const FVector2f > Points, const FAxisAlignedBox2f &Bounds=FAxisAlignedBox2f::Empty(), const FRandomStream &Random=FRandomStream())
 
GEOMETRYCORE_API void Compute (TArrayView< const FVector3d > Points, const FAxisAlignedBox3d &Bounds=FAxisAlignedBox3d::Empty(), const FRandomStream &Random=FRandomStream())
 
GEOMETRYCORE_API void Compute (TArrayView< const FVector3f > Points, const FAxisAlignedBox3f &Bounds=FAxisAlignedBox3f::Empty(), const FRandomStream &Random=FRandomStream())
 

Public Attributes

int32 MaxTreeDepth = 10
 Inputs.
 
TArray< int32Order
 Outputs.
 

Detailed Description

Generate a "Biased Randomized Insertion Order" (BRIO) ordering for a point set by randomly bucketing the points, then applying Z-Order-Curve sorting (above) to each bucket This gives an ordering with point locality but enough randomization to typically avoid worst case behavior if using the ordering for Delaunay meshing

Constructor & Destructor Documentation

◆ FBRIOPoints()

UE::Geometry::FBRIOPoints::FBRIOPoints ( int32  MaxTreeDepth = 10)
inline

Member Function Documentation

◆ Compute() [1/4]

void FBRIOPoints::Compute ( TArrayView< const FVector2d Points,
const FAxisAlignedBox2d Bounds = FAxisAlignedBox2d::Empty(),
const FRandomStream Random = FRandomStream() 
)

Compute an ordering for the input points that attempts to order points so adjacent points are close together spatially, while still keeping the order sufficiently randomized to expect to avoid worst-case orderings for Delaunay triangulation Supports both 2D and 3D points.

Parameters
PointsPoints to re-order
BoundsOptional bounding box of the points; if an empty box is passed in, it will be computed for you

◆ Compute() [2/4]

void FBRIOPoints::Compute ( TArrayView< const FVector2f Points,
const FAxisAlignedBox2f Bounds = FAxisAlignedBox2f::Empty(),
const FRandomStream Random = FRandomStream() 
)

◆ Compute() [3/4]

void FBRIOPoints::Compute ( TArrayView< const FVector3d Points,
const FAxisAlignedBox3d Bounds = FAxisAlignedBox3d::Empty(),
const FRandomStream Random = FRandomStream() 
)

◆ Compute() [4/4]

void FBRIOPoints::Compute ( TArrayView< const FVector3f Points,
const FAxisAlignedBox3f Bounds = FAxisAlignedBox3f::Empty(),
const FRandomStream Random = FRandomStream() 
)

Member Data Documentation

◆ MaxTreeDepth

int32 UE::Geometry::FBRIOPoints::MaxTreeDepth = 10

Inputs.

◆ Order

TArray<int32> UE::Geometry::FBRIOPoints::Order

Outputs.


The documentation for this struct was generated from the following files: