Spherical Geodesics in $\zzz$By a linear-time elementary number-theoretic algorithmAlgorithmRanita Biswas and Partha Bhowmick,On Finding Spherical Geodesic Paths and Circles in ℤ3, 18th IAPR International Conference on Discrete Geometry for Computer Imagery: DGCI'14, 10-12 September 2014, Siena, Italy, LNCS 8668, pp. 396-409, Springer. ContributionA discrete spherical geodesic path $\gp{s,t}$ between two 3D integer points (voxels) $s$ and $t$ lying on a discrete sphere $\ds$ is a/the 1-connected shortest path from $s$ to $t$, comprising voxels of $\ds$ intersected by the real plane $\rp{s,t}$ passing through $s$, $t$, and the center of $\ds$. We show that $\dsrp{s,t}$, the set of voxels of $\ds$ intersected by $\rp{s,t}$, always contains a 1-connected cycle passing through $s$ and $t$, and each voxel in $\dsrp{s,t}$ lies within an isothetic distance of $\frac32$ from $\rp{s,t}$. Hence, to obtain $\gp{s,t}$, the algorithm starts Prioritized-BFS from $s$, and iteratively computes in constant time each voxel $p$ of $\gp{s,t}$ in succession from the predecessor of $p$.A novel number-theoretic property is used to facilitate the process of searching the 1-connected voxels comprising $\gp{s,t}$. In addition, the 48-symmetry of discrete sphere is used to decide the quadraginta octants that $\gp{s,t}$ would pass through. The proposed algorithm requires only the radius $r$ of $\ds$ as input, apart from $s$ and $t$. The algorithm is output-sensitive, having its time and space complexities both linear in the length of $\gp{s,t}$. It can be extended for constructing 1-connected discrete 3D circles of arbitrary orientations, specified by a few appropriate input parameters. Experimental results and some related analysis demonstrate the efficiency and versatility of the proposed technique. |
Figure: Discrete spherical geodesics and their corresponding circles for $r=30$. The sequence of red voxels is $\gp{s,t}$ with $s=(8,25,14)\in\qoct{6}$ and $t=(29,3,6)\in\qoct{3}$, which, when combined with $\gp{t,s}$, shown in yellow, yields the discrete 3D geodesic circle passing through $s$, $t$, and centered at $o$. Shown in blue are 16 longitude circles produced by extending the geodesics from source points taken from the discrete great circle on $zx$-plane to destination point $t=(0,30,0)$ for each. |