A quick update on what’s been happening deep down the bunkers of KStars.
GSoC student Harry de Valence has been very successful in getting a working OpenGL-rendered skymap. While we still don’t use GL goodness for things like atmosphere simulation, light-pollution simulation, cool animated graphics as yet at the end of this GSoC, the GL version is much faster. In the process, Harry had to clean up a lot of old KStars code — he has a shiny new class to handle sky map projections in a clean manner, for instance. This has solved a good deal of really annoying bugs that were plaguing KStars since quite long. You could check out his branch at branches/kstars/hdevalence if you’re interested.
Our other GSoC student Victor Carbune, who had to resign officially from the program half way through since he was offered an internship at Google (Yay!), still plans to continue contribution to KStars. So far, he has ported our deep-sky object data into a neat relational database and unleashed flexible search power to the user. Prakash Mohan (his mentor) and Victor are planning the course of the merger. His branch lies at branches/kstars/carbonix
New in trunk, is a feature called the Moon phase almanac. To access this, fire up the KStars Calculator (Ctrl+C) and you’ll find it under “Solar System”. It shows the moon phases for an entire month, so that you could plan your observation schedule easily. For the uninitiated, those who like to see the moon through a telescope would probably choose to observe on a day close to the half moon, and those who like to observe deep-sky objects would pick a date close to the new moon. The idea was to make something similar to http://stardate.org/nightsky/moon/ available off-line, within KStars. I hope the feature will pick up a few improvements as we go on, which will better integrate this with other features of KStars.
The implementation is a hack, using KDateTable, with a rewrite of KDatePicker’s features around it, since it seems to me that there’s no other way around this at the moment. At the moment, only the Gregorian Calendar is supported because of this. KDateTable is subclassed and KDateTable::paintCell is overrided. There’s a GenericCalendarWidget located in kstars/widgets, which accepts a custom KDateTable subclass and attempts to draw some month / year controls on top of it, and that’s what is used in this feature. It would be really nice if KDatePicker allowed me access to its internal KDateTable and let me replace that with my own KDateTable, but that’s not allowed at the moment.