Adjacency algorithms for linear octree nodes

Abstract A formula for deriving the rectangular coordinates X, Y and Z from the octal locational code of a linear octree node is introduced. This formula is simpler than those that have previously been proposed1. Algorithms for determining the octal locational code of a face, edge and corner adjacent block to a given linear octree node are proposed. The edge and the corner adjacency algorithms are presented as direction extensions of the eastern, western, front, back, southern and northern neighbour finding procedures. Necessary and sufficient conditions for two octree nodes to be face adjacent in any of the above named directions are formulated in a form of digit tests on their respective locational codes. The face adjacency conditions derived in this paper were later used to select the octal value of the rightmost digit that must be appended or deleted from the locational code of the same size neighbour to identify smaller or larger size neighbours of a selected node in the specified direction. All the adjacency algorithms presented have a computational complexity of O(n), where n is the number of digits that form the locational code of the octree node for which a neighbour is sought.

[1]  S. Sitharama Iyengar,et al.  Space and Time Efficient Virtual Quadtress , 1984, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[2]  Clifford A. Shaffer,et al.  Optimal quadtree construction algorithms , 1987, Comput. Vis. Graph. Image Process..

[3]  J. L. Smith,et al.  A data structure and algorithm based on a linear key for a rectangle retrieval problem , 1983, Comput. Vis. Graph. Image Process..

[4]  Michael L. Rhodes,et al.  Organization and Access of Image Data by Areas , 1979, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[5]  Hanan Samet,et al.  The Quadtree and Related Hierarchical Data Structures , 1984, CSUR.

[6]  Gabor T. Herman,et al.  Dynamic boundary surface detection , 1978 .

[7]  Irene Gargantini,et al.  Linear octtrees for fast processing of three-dimensional objects , 1982, Comput. Graph. Image Process..

[8]  Sargur N. Srihari,et al.  Boundary Detection in Multidimensions , 1982, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[9]  Irene Gargantini,et al.  An effective way to represent quadtrees , 1982, CACM.

[10]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[11]  Sargur N. Srihari,et al.  Representation of Three-Dimensional Digital Images , 1981, CSUR.