/// <summary> /// Creates a <c>PointIndex</c> that contains nothing. /// </summary> internal PointIndex() { Extent all = new Extent(); m_Root = new DataNode(all); }
/// <summary> /// Adds a point into this index. /// </summary> /// <param name="p">The index to add</param> internal void Add(IPoint p) { m_Root = m_Root.Add(p, 0); }
/// <summary> /// Includes a spatial indexing node in these statistics /// </summary> /// <param name="n">The node to include</param> internal void Add(Node n) { if (n is DataNode) { m_NumDataNode++; m_MaxItemInDataNode = Math.Max(m_MaxItemInDataNode, n.Count); m_NumItem += n.Count; } else { m_NumIndexNode++; m_MaxItemInIndexNode = Math.Max(m_MaxItemInIndexNode, n.Count); } m_MinSize = Math.Min(m_MinSize, n.Window.Width); }