Hi all, hope everyone is doing well this rainy cold night. Hopefully it's not like that wherever you are. Anyhow - I hope someone can help me out. I'm writing some software for a mobile device to create star maps. I've gotten pretty far into it. I'm using data from the Yale bright star catalog that has the right ascension and declination of stars, then taking into account a users local time/date and geographic location (using the gps on the device), and from that info, calculating MST (mean sidereal time) and using that calculating what the Altitude and Azimuth of a star should be from your observation point on Earth. I've verified my calculations of alt + az are correct using some static star charts, but what I'm wrestling with now is how to map the star onto a plane in order to display it in on a screen, with minimal distortion. Right now, I'm using a simple map to put stars onto the 2d drawing surface. So, if for example my intended vertical and horizontal FOVs are 90 degrees, I want to only display stars with an Altitude 0-90 (0 being the local horizon) and I can easily figure out that: Altitude / verticalFOV = y / heightOfScreen Azimuth / 360 / horizontalFOV = x / widthOfScreen The problem arises as Altitude approaches the zenith (90) and because of this very linear mapping, the distances between the stars on screen is stretched and warped (makes drawing of constellations look pretty dumb). Anyhow, anyone know any way to project a star's location to 2d space given it's altitude and azimuth that minimizes the distortion at the zenith? Welcome to hear about any other ways of calculating or doing this type of thing. Many thanks in advance!