Thursday, April 19, 2007

Rendering chess positions


Chess, 3-D graphics and FOSS are three areas I like. I have been using the POV-Ray program for sometime now and prepared files to render individual chess pieces, which can be included in a POV-Ray scene. I tested the include files with a board and a few lights. This way, I could include the shape definition for a piece and place it on a given position on the board by translating it.

Next, I studied the CPAN Chess libraries in Perl and figured how to read in a file saved in FEN with a Perl script. The script would then generate a POV-Ray file with necessary translate instructions to place different pieces in different positions, as specified in the input FEN file. Now, I simply used POV-Ray to render the file generated above and I have a 3-D view of the board position. I have included a sample image. I got this position by editing the start position in Xboard using the "Edit Game" feature. I saved the position as an FEN file and then ran the perl script and the povray program on my ubuntu powered laptop.

Thursday, April 12, 2007

Varsity project on sourceforge.net

In the penultimate year of my bachelors course in Information Science engineering, my classmate, Vineeth and I developed a handy little piece of software. Back then, we were learning UML and were amused with how new applications could be designed using it's methodology. Why not develop software using which we could design UML diagrams, we thought. This idea stuck as our curricular mini-project for the 6th semester.

The UML design suite, which was the result of our efforts, finally had 7 modules. You could develop
  • Use-case diagrams
  • Sequence diagrams
  • Activity diagrams
  • Class diagrams
  • Component diagrams
  • Deployment diagrams
We implemented two options for saving work. First, an open XML based file format which we developed. Second, any of a set of well known image formats including JPEG and PNG.

The project was not publically available for long and we knew we could not leave something of it's kind stored somewhere on a CD or computer without any positives coming out of it. So recently, I submitted the online and requested sourceforge to have our project up on their archives.

On sourceforge, our project has a homepage, screenshots, a subversion repository, forums for development and open discussion. All these can be accessed by clicking:

http://sourceforge.net/projects/umldesignsuite