An unfortunate reality of trying to represent continuous real numbers in a fixed space (e.g. with a limited number of bits) is that this comes with an inevitable loss of both precision and accuracy.
I am working on a viewshed* algorithm that does some floating point arithmetic. The algorithm sacrifices accuracy for speed and so only builds an approximate viewshed. The algorithm iteratively ...