Robust and efficient internal memory algorithm for vector map overlay is proposed.The algorithm employs the plane sweep idea improved from the traditional plane sweep algorithm to calculate the intersection points
by which all the special cases are handled properly.Then rings of the results are constructed by the intersection points and the information
and original rings with no intersection point are ignored or added to the result as outer rings(contour) or holes.All the generated rings have ID information
which simplifies the following two processes-finding the matching outer ring for each hole and attributes propagation.With this algorithm
we can determine all the intersection points for any overlay operation immediately
not by a one to one loop.We implemented the algorithm
and the comparisons with the one-by-one method(using spatial access method) demonstrated its efficiency.Besides
we implemented the whole function(including the algorithm and the necessary processes of reading data from and writing data to the disk)
and compared it with ESRI’s ArcGIS
by which correctness and efficiency of our approach are demonstrated.