| 83 | |
| 84 | template<typename Sorter> |
| 85 | void PointView::basic_sort(Sorter sort, Compare comp) |
| 86 | { |
| 87 | std::vector<PointId> order(size()); |
| 88 | |
| 89 | std::iota(order.begin(), order.end(), 0); |
| 90 | |
| 91 | sort(order.begin(), order.end(), comp); |
| 92 | |
| 93 | for (PointId& o : order) |
| 94 | o = m_index[o]; |
| 95 | for (size_t i = 0; i < m_index.size(); ++i) |
| 96 | m_index[i] = order[i]; |
| 97 | } |
| 98 | |
| 99 | void PointView::sort(Dimension::Id dim) |
| 100 | { |