А вообще какую задачу глобально хотите решить? Потому что данная сортировка подходит для частного случая, когда кривые можно отсортировать по x координатам. То, что вы описали, потребует еще разделение на вертикальные и горизонтальные кривые. И, так же, что делать с не прямоугольными помещениями.
Вот здесь ноды для работы с кривыми. Можно делить на участки по длине, либо по количеству участков и т.п.