I know I can use a data structure such as the kd-tree to look for the k nearest points to each point in the plane (using the Euclidean distance). But I've already constructed a Delaunay triagulation in my program, so I'd like to find the k nearest neighbors more efficiently by taking adavntage of the Delaunay triangulation. I'm using Matlab, and the delaunayTriangulation class allows to query only the first nearest neighbor to a given point. How can I find the k nearest neighbors in MATLAB using the Delaunay triangulation? Or otherwise, if I have to implement myself the k nearest neighbors search algorithm from the Delaunay triangulation, can you point me out to such an algorithm?