3D-mapping-aided (3DMA) global navigation satellite system (GNSS) positioning that improves positioning performance in dense urban areas has been under development in the recent years, but it still faces many challenges. This paper details a new algorithm that explores the potential of using building boundary for positioning. Rather than applying complex simulations to analyze and correct signal reflections by buildings, the approach utilizes a convolutional neural network to differentiate between the sky and building in a sky-pointing fisheye image. A new skymask matching algorithm is then proposed to match the segmented fisheye images with skymasks generated from a 3D building model. Each matched skymask holds a latitude and longitude coordinate to determine the precise location of the fisheye image. The results are then compared with the conventional GNSS and advanced 3DMA GNSS positioning methods. The aims of the proposed algorithm are to increase positioning and heading accuracy in a rich urban environment.