Пример #1
0
        private static void DoTestVerticalSlices(int itemCount, int sliceCount,
                                                 int expectedBoundablesPerSlice, int expectedBoundablesOnLastSlice)
        {
            var t      = new STRtreeDemo.TestTree(2);
            var slices = t.VerticalSlices(ItemWrappers(itemCount), sliceCount);

            Assert.AreEqual(sliceCount, slices.Length);
            for (int i = 0; i < sliceCount - 1; i++)
            {
                //-1
                Assert.AreEqual(expectedBoundablesPerSlice, slices[i].Count);
            }
            Assert.AreEqual(expectedBoundablesOnLastSlice, slices[sliceCount - 1].Count);
        }
Пример #2
0
        private static void DoTestCreateParentsFromVerticalSlice(int childCount,
                                                                 int nodeCapacity, int expectedChildrenPerParentBoundable,
                                                                 int expectedChildrenOfLastParent)
        {
            var t = new STRtreeDemo.TestTree(nodeCapacity);
            var parentBoundables
                = t.CreateParentBoundablesFromVerticalSlice(ItemWrappers(childCount), 0);

            for (int i = 0; i < parentBoundables.Count - 1; i++)
            {
                //-1
                var parentBoundable = (AbstractNode)parentBoundables[i];
                Assert.AreEqual(expectedChildrenPerParentBoundable, parentBoundable.ChildBoundables.Count);
            }
            var lastParent = (AbstractNode)parentBoundables[parentBoundables.Count - 1];

            Assert.AreEqual(expectedChildrenOfLastParent, lastParent.ChildBoundables.Count);
        }