Show / Hide Table of Contents

Interface IOctant<T, K, P>

Interface for implementing an octant (1/8 of a cube and node in an Octree).

Inherited Members
IBucket<T, K>.Center
IBucket<T, K>.Size
Namespace: Fusee.Structures
Assembly: Fusee.Structures.dll
Syntax
public interface IOctant<T, K, P> : IBucket<T, K>
Type Parameters
Name Description
T

Type of the center point of this octant.

K

Type of the size of this octant.

P

Type of the payload of this octant.

Properties

Children

Children of this Octant. Must contain eight or null (leaf node) children.

Declaration
IOctant<T, K, P>[] Children { get; }
Property Value
Type Description
IOctant<T, K, P>[]

IsLeaf

Is this octant a leaf node in the octree?

Declaration
bool IsLeaf { get; set; }
Property Value
Type Description
System.Boolean

Level

The level of the octree this octant belongs to.

Declaration
int Level { get; }
Property Value
Type Description
System.Int32

Payload

The payload of this octant.

Declaration
List<P> Payload { get; }
Property Value
Type Description
System.Collections.Generic.List<P>

PosInParent

Integer that defines this octants position (1 to 8) in its parent.

Declaration
int PosInParent { get; }
Property Value
Type Description
System.Int32

Methods

CreateChild(Int32)

Instantiates a child octant at the given position.

Declaration
IOctant<T, K, P> CreateChild(int atPosInParent)
Parameters
Type Name Description
System.Int32 atPosInParent

The PosInParent the new child has.

Returns
Type Description
IOctant<T, K, P>
Generated by DocFX
GitHub Repo
Back to top