Даже в Википедии сказано:
дерево kd (сокращение от k-мерного дерева) - это структура данных с пространственным разделением для организации точек в k-мерном пространстве.
, так что продолжайте и используйте ваши 2D точки ( без проецирования их в 3D или что-то подобное).
Вставьте их в дерево, а затем выполните запросдерево в логарифмическом времени - и там все счастливы!