/// <summary> /// Creates a new updatable QuadTree instance /// </summary> /// <param name="insertStrategy">Strategy used to insert new entries into the index.</param> /// <param name="nodeSplitStrategy">Strategy used to split nodes when they are full.</param> /// <param name="heuristic">Heuristics used to build the index and keep it balanced.</param> public DynamicQuadTree(IGeometryFactory geoFactory, IItemInsertStrategy <IExtents, TItem> insertStrategy, INodeSplitStrategy <IExtents, TItem> nodeSplitStrategy, DynamicQuadTreeBalanceHeuristic heuristic) : base(geoFactory) { _insertStrategy = insertStrategy; _nodeSplitStrategy = nodeSplitStrategy; _heuristic = heuristic; }
public ISpatialIndexNode <IExtents, TItem> SplitNode(ISpatialIndexNode <IExtents, TItem> node, IndexBalanceHeuristic heuristic) { if (node == null) { return(null); } QuadTreeNode <TItem> quadTreeNode = node as QuadTreeNode <TItem>; DynamicQuadTreeBalanceHeuristic quadTreeHeuristic = heuristic as DynamicQuadTreeBalanceHeuristic; throw new NotImplementedException(); }