dimitris kalamaras

math, social network analysis, web dev, free software…

Month: February 2009

SocNetV 0.51: changes, new logo, and RPM packages

Last Friday, I released version 0.50 of Social Networks Visualiser (SocNetV) and version 0.51 followed already (yesterday), fixing an important (and yet embarrassing) bug in Graph::createDistanceMatrix() method.

IMHO, this new version is the first really usable version of this little application. With it you can draw mathematical graphs (social networks, to be precise, since the focus is more on Social Network Analysis than on Graph Theory), by pointing and clicking, load existing networks of most popular formats (Pajek, GraphML, GraphViz, UCINET, etc), create random networks (Small Worlds, Erdos-Renyi, Ring Lattices, etc), compute actor centralities (Betweeness, Closeness, Graph, etc) and clustering coefficients, select a different network layout based on these centralities (or Spring-Embedder models), and finally export your work to PDF, BMP or PNG file formats, without crashes (unlike earlier releases). A complete workflow, that is!

I am really proud of this progress (if not amazed) since I didn’t expect it to come this far 5 winters ago when I was playing with Qt toolkit while I was on army service in Evros 🙂 Yet, this application has really evolved in my spare time, and seems to be useful to some people (mostly academia).

To celebrate this new release, I prepared RPMs for both Fedora 10 and openSUSE 11.1 distros. Serafeim Zanikolas maintains already an older .deb package in Debian ‘experimental’ (and soon in Sid), while Markos Chandras just added SocNetV to qting-edge overlay, which also houses all new Qt4 and KDE4 software. Ubuntu users may add my Launchpad PPA (older version) to their repos or opt to compile from source (it’s really easy!). Meanwhile, 0.51 is the first version for which we provide a Windows zipped archive with executables (although I cant say I really tested it :P)…Oh, and we now have a much more polished and ad hoc logo (handmade with Gimp/Inkscape of course):

Nice, isn’t it? 😛

Qt (Μέρος IV): Φτιάξτε παιχνίδια

Στα τρία προηγούμενα μέρη αυτού του tutorial, μάθαμε τα βασικά κόλπα της Qt, και την αξιοποιήσαμε στη δημιουργία διαχειριστικών εργαλείων για βάσεις δεδομένων. Καλά όλα αυτά, αλλά πως χειριζόμαστε γραφικά με την Qt; Λοιπόν, δεν υπάρχει τίποτε πιο εύκολο από αυτό! Για να σας το αποδείξουμε, θα φτιάξουμε ένα μικρό παιχνίδι σκοποβολής, το MouseShooter.

Το παιχνίδι θα αποτελείται από ένα μοναδικό παράθυρο, πάνω στο οποίο θα τοποθετήσουμε δύο κουμπιά (για Εναρξη και Τερματισμό του παιχνιδιού) και από κάτω ένα καμβά, όπου θα εμφανίζονται τα γραφικά. Είναι πρωτόγονο, αλλά ο στόχος είναι να δούμε τις βασικές έννοιες, όχι να ξαναφτιάξουμε το …DOOM! Αυτή τη φορά, δεν θα χρησιμοποιήσουμε το QtDesigner για να σχεδιάσουμε κάποια φόρμα για το MouseShooter. Το παιχνίδι μας θα έχει ένα πολύ απλοικό interface, οπότε θα είναι εύκολο να του στήσουμε το περιβάλλον κατευθείαν από τον κώδικα – για να δείτε πως γίνεται κι αυτό…

Η ιδέα για το γραφικό θέμα του MouseShooter είναι απλή μέχρι αηδίας: τα ποντίκια έχουν πέσει πάνω στο τυρί, και εμείς τα πιάνουμε στα πράσα και τα …πυροβολούμε. Αυτά πανικοβάλλονται και αρχίζουν να τρέχουν αριστερά και δεξιά. Τα γραφικά, δηλαδή το spite του ποντικιού και το φόντο του τυριού, τα “δανειστήκαμε” από ένα απλοικό παράδειγμα της Qt. Εμείς όμως θα φτιάξουμε κάτι πολύ πιο σύνθετο…Ας ξεκινήσουμε λοιπόν!


Εικόνα 1: Το εκπληκτικό shooter μας σε όλο του το μεγαλείο! Τα ποντίκια δεν μένουν ακίνητα βέβαια…

Read More

Powered by Linux & Theme by Anders Norén