public void TraverseTest0()
{
double[][] points =
{
new double[] { 2, 3 },
new double[] { 5, 4 },
new double[] { 9, 6 },
new double[] { 4, 7 },
new double[] { 8, 1 },
new double[] { 7, 2 },
};
// To create a tree from a set of points, we use
KDTree<int> tree = KDTree.FromData<int>(points);
double[][] inOrder =
{
new double[] { 2, 3 },
new double[] { 5, 4 },
new double[] { 4, 7 },
new double[] { 7, 2 },
new double[] { 8, 1 },
new double[] { 9, 6 },
};
int i = 0;
foreach (var node in tree.Traverse(TreeTraversal.InOrder))
{
Assert.AreEqual(node.Position[0], inOrder[i][0]);
Assert.AreEqual(node.Position[1], inOrder[i][1]);
i++;
}
}