void KdTree::searchInternal(KdNode* node,const BBox& bb,int d,List<VecItem*>& items){ if( node ){ Vec pn = node->item->getPosition(); if( (d==0 && bb.getMinX()<pn.getX()) || bb.getMinY()<pn.getY() ){ searchInternal(node->left,bb,(d+1)%m_k,items); } if( bb.contains(pn) ){ items.append( node->item ); } if( (d==0 && pn.getX()<=bb.getMaxX()) || pn.getY()<=bb.getMaxY() ){ searchInternal(node->right,bb,(d+1)%m_k,items); } } }