API

Class OctreeBlock<T>

Class used to store a cell in an octree

Type Parameters

  • T
Index
  • Creates a new block

    Type Parameters

    • T

    Parameters

    • minPoint: Vector3

      defines the minimum vector (in world space) of the block's bounding box

    • maxPoint: Vector3

      defines the maximum vector (in world space) of the block's bounding box

    • capacity: number

      defines the maximum capacity of this block (if capacity is reached the block will be split into sub blocks)

    • depth: number

      defines the current depth of this block in the octree

    • maxDepth: number

      defines the maximal depth allowed (beyond this value, the capacity is ignored)

    • creationFunc: (entry: T, block: OctreeBlock<T>) => void

      defines a callback to call when an element is added to the block

    Returns OctreeBlock<T>

blocks: OctreeBlock<T>[]

Gets the list of block children

entries: T[] = []

Gets the content of the current block

  • Test if the current block intersect with the given bounding sphere and if yes, then add its content to the selection array

    Parameters

    • sphereCenter: Vector3

      defines the bounding sphere center

    • sphereRadius: number

      defines the bounding sphere radius

    • selection: SmartArrayNoDuplicate<T>

      defines the array to store current content if selection is positive

    • OptionalallowDuplicate: boolean

      defines if the selection array can contains duplicated entries

    Returns void

  • Test if the current block intersects the frustum planes and if yes, then add its content to the selection array

    Parameters

    • frustumPlanes: Plane[]

      defines the frustum planes to test

    • selection: SmartArrayNoDuplicate<T>

      defines the array to store current content if selection is positive

    • OptionalallowDuplicate: boolean

      defines if the selection array can contains duplicated entries

    Returns void