Commit Graph

146 Commits

Author SHA1 Message Date
Jackson Campolattaro 7be1861444 Implement and test locate() 2020-07-09 23:37:32 -04:00
Jackson Campolattaro ea20663f13 Add placeholder doxygen comment for locate() 2020-07-09 13:15:27 -04:00
Jackson Campolattaro 06815b9b7c Add outline of locate() implementation 2020-07-09 13:14:37 -04:00
Jackson Campolattaro 5cb4e73f40 Add simple locate test for a tree that only has a root node 2020-07-09 12:50:38 -04:00
Jackson Campolattaro e730c72814 Add locate method stub 2020-07-09 11:02:35 -04:00
Jackson Campolattaro 3ed346f489 Remove redundant `nodes` method 2020-07-09 10:47:40 -04:00
Jackson Campolattaro 167b5e20bc Replace invocations of `nodes` method with new `walk` method 2020-07-09 10:43:19 -04:00
Jackson Campolattaro 25101d4309 Remove second boost bind header 2020-07-09 10:06:42 -04:00
Jackson Campolattaro 2b31cd4f68 Remove boost bind header 2020-07-09 10:06:21 -04:00
Simon Giraudot 909bbbfe6a Fix walker + some corrections 2020-07-09 09:47:40 +02:00
Jackson Campolattaro 6d9c83b760 Fix namespace indentation 2020-07-08 13:52:53 -04:00
Jackson Campolattaro af2c28e40c Add demonstration of walker failure 2020-07-08 13:23:29 -04:00
Jackson Campolattaro 9e3b251ce9 Attempt several tree walker solutions 2020-07-07 12:40:24 -04:00
Jackson Campolattaro 21dfe23fc2 Begin outlining a new potential solution for working with walker methods 2020-07-03 16:35:58 -04:00
Jackson Campolattaro 1f3aaaac9f Add empty documentation to Points_iterator_range typedef 2020-07-02 23:42:36 -04:00
Jackson Campolattaro 45e198524e Deprecate old Node class 2020-07-02 22:35:25 -04:00
Jackson Campolattaro 63dfd5851b Switch octree to use new node class 2020-07-02 18:48:17 -04:00
Jackson Campolattaro f412ec61c3 Make some Octree_node typedefs private 2020-07-01 16:26:31 -04:00
Jackson Campolattaro 38952a1c2e Make several typedefs private 2020-07-01 15:06:58 -04:00
Jackson Campolattaro e4d7eea511 Add more typedefs for cleaner function signatures 2020-07-01 14:57:21 -04:00
Jackson Campolattaro 512e97872b Add Node_range typedef 2020-07-01 14:37:17 -04:00
Jackson Campolattaro e195c5e52d Add short documentation to typedefs 2020-07-01 14:06:01 -04:00
Jackson Campolattaro b60f4217ac Remove const_iterator from Octree 2020-07-01 13:38:50 -04:00
Jackson Campolattaro 7f48b60189 Switch to Walker_iterator in Octree range method 2020-07-01 13:37:17 -04:00
Jackson Campolattaro f383936993 Begin defining a Walker_iterator class which isn't a member of Octree 2020-07-01 13:21:50 -04:00
Jackson Campolattaro 2d1f95f2ef Add doxygen description of octree class 2020-07-01 12:48:50 -04:00
Jackson Campolattaro 0dc7c3153e Add empty doxygen comments to Octree_node.h 2020-06-30 23:33:54 -04:00
Jackson Campolattaro 1cb3ccdf4e Restore Vector typedef 2020-06-30 19:37:27 -04:00
Jackson Campolattaro 4bb10a7dbb Remove unused vector typedef 2020-06-30 19:27:00 -04:00
Jackson Campolattaro b1e44106b8 Add placeholder documentation to octree code 2020-06-30 19:26:16 -04:00
Jackson Campolattaro a1d621fbcc Add placeholder text to manual 2020-06-30 18:40:19 -04:00
Jackson Campolattaro 34eb17e911 Begin setting up doxygen generation 2020-06-30 17:18:08 -04:00
Jackson Campolattaro 2e02daf30e Use const ref to generate nodes iterator 2020-06-30 12:29:13 -04:00
Jackson Campolattaro ef3ad5fc46 Use const ref to split criterion function 2020-06-30 12:26:12 -04:00
Jackson Campolattaro 87a3b5c65a Use const ref to function pointer as member of node iterator 2020-06-30 12:25:00 -04:00
Jackson Campolattaro 9bb2af63db Use const ref to function pointer for node iterator 2020-06-30 12:24:13 -04:00
Jackson Campolattaro bb414da117 Add octree namespace 2020-06-30 11:06:54 -04:00
Jackson Campolattaro 606322a0b8 Mark node range builder const 2020-06-29 18:02:59 -04:00
Jackson Campolattaro 31f1812013 Nodes range generator is now parametric for different traversals 2020-06-29 17:58:02 -04:00
Jackson Campolattaro 6ffb281ada Refine node printing method 2020-06-29 17:40:12 -04:00
Jackson Campolattaro 6f4de6bd50 Begin testing iterator-based tree traversal 2020-06-29 16:49:39 -04:00
Jackson Campolattaro 8a63704699 Add boost iterator over nodes as member class of octree 2020-06-29 12:31:56 -04:00
Jackson Campolattaro 1c67675309 Clarify naming of node point iterator accessors 2020-06-26 17:07:07 -04:00
Jackson Campolattaro 60eba4415d Tree walking is now done with const nodes, octree stream operator is based on it 2020-06-26 12:00:11 -04:00
Jackson Campolattaro d054b07f37 Rename depth_first to preorder 2020-06-25 09:53:17 -04:00
Jackson Campolattaro 5839fd3cf6 Split tree walker testing into its own file 2020-06-25 09:05:45 -04:00
Jackson Campolattaro c32fb24efb Begin implementing depth first traversal 2020-06-25 00:10:44 -04:00
Jackson Campolattaro 0ae7a4f07a Add print method which takes a tree walker as an argument 2020-06-24 21:39:25 -04:00
Jackson Campolattaro 719afe8a35 Add 'Siblings' tree walker method 2020-06-24 21:01:44 -04:00
Jackson Campolattaro 9315feea2b Switch to std::max when finding the longest side of the bounding box in the constructor 2020-06-24 15:20:47 -04:00
Jackson Campolattaro 35e3ce8097 Remove non-recursive split solution 2020-06-24 14:53:57 -04:00
Jackson Campolattaro 88d82d9728 Add default arguments to recursive split 2020-06-24 14:52:04 -04:00
Jackson Campolattaro 4532d40b83 Rearrange recursive split arguments 2020-06-24 14:44:36 -04:00
Jackson Campolattaro 76b62fdfe0 Implement recursive split method 2020-06-24 14:27:17 -04:00
Jackson Campolattaro 918f878ad3 Begin defining a recursive split method 2020-06-24 13:23:31 -04:00
Jackson Campolattaro 8a459b2e61 Add a couple of Tree walker algorithms with code outlines 2020-06-24 13:04:42 -04:00
Jackson Campolattaro a4df98a212 Remove naive partitioning algorithm 2020-06-22 23:05:32 -04:00
Jackson Campolattaro 312dd581b7 Benchmark naive algorithm 2020-06-22 23:04:48 -04:00
Jackson Campolattaro 4954286977 Add naive partitioning algorithm for comparison. 2020-06-22 22:54:09 -04:00
Jackson Campolattaro 883f1bf1e9 Kernel is now deduced from other template parameters 2020-06-22 12:22:55 -04:00
Jackson Campolattaro cdd3ad38ff Replace stop criterion with split criterion 2020-06-20 19:51:16 -04:00
Jackson Campolattaro ed1395d63b Change stop criterion to accept node references 2020-06-20 12:22:00 -04:00
Jackson Campolattaro a46b3068f0 Stop criterion now provided in Stop_criterion.h 2020-06-20 12:01:06 -04:00
Jackson Campolattaro 3425f7a216 Add refinement method which takes a stop criterion 2020-06-19 22:58:03 -04:00
Jackson Campolattaro 7997b878c3 Remove recursive refinement method 2020-06-19 21:12:28 -04:00
Jackson Campolattaro baa1fd0f28 Add sequential refinement method 2020-06-19 21:08:37 -04:00
Jackson Campolattaro 99d2e678ff Add criterion.h, where tree building oracle functors will be added 2020-06-19 14:39:09 -04:00
Jackson Campolattaro f7771125a7 Make point iterators contained by nodes private 2020-06-19 11:41:15 -04:00
Jackson Campolattaro 8dfc913049 Remove member variables used by old refinement method 2020-06-18 18:56:37 -04:00
Jackson Campolattaro 88db1e6100 Remove underscores from new refinement functions. 2020-06-18 18:50:59 -04:00
Jackson Campolattaro 02e65fb738 Remove old refinement methods 2020-06-18 18:47:26 -04:00
Jackson Campolattaro 555d42d938 Add benchmark results 2020-06-18 17:30:36 -04:00
Jackson Campolattaro e8eae80bd8 New refinement method produces identical trees to original 2020-06-18 15:57:47 -04:00
Jackson Campolattaro 2dc052784c New refinement method can now produce trees, but doesn't account for points near edges 2020-06-18 14:57:01 -04:00
Jackson Campolattaro d8659c6131 Add new versions of important methods, preceded by underscores 2020-06-18 14:48:26 -04:00
Jackson Campolattaro ec2f269cb3 Add rudimentary function for partitioning the points of a node among its children 2020-06-18 12:30:59 -04:00
Jackson Campolattaro 5e2498dc60 Change root accessor to return a reference 2020-06-17 15:38:39 -04:00
Jackson Campolattaro 73c0db153c Remove child() accessor, prefer references over pointers 2020-06-17 15:18:40 -04:00
Jackson Campolattaro d58bb2731a Begin implementing Node equality operator 2020-06-17 15:06:33 -04:00
Jackson Campolattaro db4d0d1a1a Implement miminal Octree equality operator 2020-06-17 14:20:26 -04:00
Jackson Campolattaro 0567fda363 Add empty equality test 2020-06-17 13:42:33 -04:00
Jackson Campolattaro 2ed5a00951 Normal map removed from octree template 2020-06-16 23:02:07 -04:00
Jackson Campolattaro b52b3bcc54 Switch from shared_ptr to unique_ptr for children array 2020-06-16 18:48:36 -04:00
Jackson Campolattaro ca7d0586cb Remove unused IntPoint_3 code 2020-06-16 18:09:31 -04:00
Jackson Campolattaro c0e988a3d2 Change barycentric point constructor syntax 2020-06-16 16:31:34 -04:00
Jackson Campolattaro 38d43c440f Document how bounding box is used in constructor 2020-06-16 00:32:23 -04:00
Jackson Campolattaro 18eb1a9787 Remove Grade() 2020-06-15 18:46:09 -04:00
Jackson Campolattaro 8e1a5629a8 Add commentary to Octree.h 2020-06-15 15:59:17 -04:00
Jackson Campolattaro 66d444dc63 Add placeholder benchmarking function 2020-06-14 16:56:44 -04:00
Jackson Campolattaro 0fb1bd3562 Remove private functions no longer used 2020-06-12 10:21:31 -04:00
Jackson Campolattaro bb0484f066 Remove debugging functions 2020-06-12 10:20:48 -04:00
Jackson Campolattaro 33fa96355c Remove (unused) normal map 2020-06-12 10:08:12 -04:00
Jackson Campolattaro 619aa44e72 Add placeholder stream operator for octree nodes 2020-06-10 15:35:19 -04:00
Jackson Campolattaro 0ede04b029 Move Octree_node to seperate header 2020-06-10 14:53:31 -04:00
Jackson Campolattaro b16542066d Remove unnecessary OCTREE namespace 2020-06-10 11:41:14 -04:00
Jackson Campolattaro a13b895d6a Rename Octree_3.h to Octree.h 2020-06-09 14:31:23 -04:00