Commit Graph

167 Commits

Author SHA1 Message Date
Jackson Campolattaro 0219e677c5 Shorten "is dependent" to "depends" 2020-07-31 11:33:28 -04:00
Jackson Campolattaro e39cd3e9a1 Remove capitalization from doxygen summaries 2020-07-31 11:25:09 -04:00
Jackson Campolattaro 48a02b8841 Wrap std::max in parens to avoid problems with VC++ 2020-07-31 11:19:04 -04:00
Jackson Campolattaro 5fbb5e7c02 Fix typo "heirarchy" --> "hierarchy" 2020-07-31 11:12:32 -04:00
Jackson Campolattaro 513a93e987 Remove m_unit_per_depth 2020-07-22 15:48:29 -04:00
Jackson Campolattaro df0dff7fab Add max_depth_reached accessor 2020-07-22 14:25:43 -04:00
Jackson Campolattaro 438ba69c53 Reset max depth before refining 2020-07-22 13:17:49 -04:00
Sébastien Loriot 2a4f221197 handle license check for Octree 2020-07-22 07:45:12 +02:00
Jackson Campolattaro a041e69579 Fix walker function 2020-07-21 17:13:09 -04:00
Jackson Campolattaro fa615ab67c Update locate test 2020-07-21 16:08:36 -04:00
Jackson Campolattaro 833433e90b Remove non-const access to root node 2020-07-21 14:55:45 -04:00
Jackson Campolattaro 5f7c31b46d Rename barycenter function 2020-07-21 12:44:01 -04:00
Jackson Campolattaro b78fdf2fba Enable repeated refinement of an octree 2020-07-21 12:42:11 -04:00
Jackson Campolattaro d4c458a284 Add safety check to node splitting function 2020-07-21 12:39:44 -04:00
Jackson Campolattaro ff85538648 Combine node splitting and point reassignment 2020-07-21 12:37:42 -04:00
Jackson Campolattaro 715b7b756b Add to doxygen comments on equality and inequality operators 2020-07-21 12:30:38 -04:00
Jackson Campolattaro 1b96f3edb4 Replace neighbour (British spelling) with neighbor (American spelling) for consistency 2020-07-21 12:14:21 -04:00
Jackson Campolattaro 55940662a0 Add to doxygen comments on nearest neighbours functions 2020-07-21 12:09:57 -04:00
Jackson Campolattaro 5934343968 Assert point passed to locate is bounded by octree 2020-07-21 11:53:11 -04:00
Jackson Campolattaro f21425a8a5 Add to doxygen comments on locate and bbox methods 2020-07-21 11:48:27 -04:00
Jackson Campolattaro 0d4e7c78a1 Add to doxygen comments on constructor and refine methods 2020-07-21 11:22:35 -04:00
Sébastien Loriot 1c133be811 license headers 2020-07-21 08:32:32 +02:00
Jackson Campolattaro f27fba979e Add timing data to kd_tree/octree comparison test 2020-07-20 12:12:28 -04:00
Jackson Campolattaro b1a55ed20a Add epsilon as optional argument 2020-07-19 23:22:06 -04:00
Jackson Campolattaro 3be77cd0d6 Remove underscore marking new nearest neighbor implementation 2020-07-19 23:14:46 -04:00
Jackson Campolattaro 908f6b8ea3 Add nearest_k_neighbours_in_radius, implement nearest_k_neighbours in terms of this function 2020-07-19 22:28:20 -04:00
Jackson Campolattaro 3330d8d7a5 Remove old nearest neighbour solution 2020-07-19 22:19:02 -04:00
Jackson Campolattaro adbd84bf1c Implement streamlined nearest neighbour as drop in replacement for old version 2020-07-19 22:18:10 -04:00
Jackson Campolattaro 29d93de185 Outline recursive case 2020-07-19 20:16:09 -04:00
Jackson Campolattaro 5385c84eb4 Implement base case of streamlined algorithm 2020-07-19 19:57:04 -04:00
Jackson Campolattaro 707b256386 Begin outlining streamlined nearest neighbour implementation 2020-07-19 17:04:37 -04:00
Jackson Campolattaro 15482a52d2 Add search benchmarking 2020-07-17 15:52:10 -04:00
Jackson Campolattaro c353b6dee5 Add is_empty method to Node 2020-07-17 12:36:39 -04:00
Jackson Campolattaro 918bae51fa Rename value accessors to points 2020-07-17 12:33:18 -04:00
Jackson Campolattaro de1973c75b Nodes now expect to contain iterator ranges 2020-07-17 11:59:41 -04:00
Jackson Campolattaro 4c00bf0a92 Add inequality operators 2020-07-16 17:08:18 -04:00
Jackson Campolattaro 919da2662c Simplify names of split criterion 2020-07-16 15:29:40 -04:00
Jackson Campolattaro 6aba4c443e Add Split_criterion namespace 2020-07-16 15:28:21 -04:00
Jackson Campolattaro 608f654be4 Pass k explicitly, simplifying the logic necessary to add a new point to the output list 2020-07-16 14:20:44 -04:00
Jackson Campolattaro b494e0cca9 Test show an improvement in octree performance 2020-07-16 14:03:36 -04:00
Jackson Campolattaro b5a26c9f91 Find mistake: only update search radius after K points are found 2020-07-16 13:58:04 -04:00
Jackson Campolattaro ecbf15c274 Add more useful printout to the kd_tree comparison test 2020-07-16 13:33:08 -04:00
Jackson Campolattaro 77775f7592 Add node ranking for increased nearest neighbour performance, currently failing tests for k > 1 2020-07-16 13:22:55 -04:00
Jackson Campolattaro 71d56294d8 Octree equality operator is now const 2020-07-16 10:50:16 -04:00
Jackson Campolattaro 4a2bbff45a Add param documentation to all public member functions 2020-07-16 10:49:27 -04:00
Jackson Campolattaro f0c4b6016d Add brief documentation for bbox and nearest_k_neighbours 2020-07-16 10:40:10 -04:00
Jackson Campolattaro 498ac2fd21 Octree now outperforms naive for over 1000 points 2020-07-15 21:49:24 -04:00
Jackson Campolattaro d6b41c8875 Add bbox function for getting the bounding box of a node 2020-07-15 12:13:50 -04:00
Jackson Campolattaro 7d0ef74b71 Use pairs to map each point to its distance from the search point, reducing recalculation 2020-07-15 11:26:16 -04:00
Jackson Campolattaro b866d5a0c3 Nearest neighbour algorithm now skips nodes, but not yet enough to be faster than the naive algorithm 2020-07-15 11:02:32 -04:00