Randa Meetings 2014 – KDE

Hi everyone.

Did you know that for the 5th year, KDE is planning a Developer Sprint which is going to be held in Randa, Switzerland from the 9th to 15th of August this year?

Let me tell you a few words about it if you don’t know what is all about. These sprints are mostly the only times when KDE developers gather under the same roof to work on specific parts of our beloved open-source organization. These sprints are a great opportunity to plan and design new features as well as to hack on them. If you are interested, you can find more about previous sprints here.

A picture from 2010 Randa Meetings

A picture from 2010 Randa Meetings

But things cannot be as accessible as we might want. As you have probably guessed already, KDE needs money in order to make possible these meetings, since it is a non-profit organization which gained its popularity (and raises it day by day) owing to its great contributors and its great users. These contributors donate their time to help improve the software you love, so if you are a dedicated KDE user or if you are simply enthusiastic about free and open-source software you can support the Randa Meetings by making a donation here. Thank you! 🙂

Remember that wonderful ‘bird out of cage’ feeling FOSS gives you.

Călin Cruceru

GSoC – “Properties” option on polygons

Hello everyone!

Even though I have been a little bit less active during the last week due to my end of semester exams, I have managed to implement a new option on drawn polygons – Properties. This makes possible the customization of a polygon by setting any color for both polygon lines and its inner surface, as well as adjusting their opacity and, in the case of lines, its width.

This is how the option and its associated edit dialog are shown:

pict1_v1
pict2_v1

I think its usability is pretty intuitive so I will let these pictures speak for me:

pic4_v1
pict4_v1

Pretty sweet, huh? 🙂
I am waiting suggestions for possible improvements or other completely new features regarding polygon customization.

EDIT:
At the suggestion of richard I added a screenshot from the OSM. It will offer much more accessibility when I will finish implementing the possibility of adding nodes to an already drawn polygon as well as other features which I am planning to work on in the near future.

pict5_v1

Călin Cruceru

GSoC – Progress after the first two weeks

Hi again! In this post I will make a short presentation of my progress in my Google Summer of Code project.

So, after two weeks from the official and much awaited coding period start I am glad to say that I have entirely respected the previously designed timeline, even though this start has occurred simultaneously with the beginning of my exam period.

Even before the official start, I proceeded with resurrecting the annotate plugin with focus on adapting the Ground Overlays editing mode implemented during the previous GSoC edition (and which has not been branched to master). It came straight forward to me to do this, since I had already talked to the guy who worked on it last year, so I was pretty knowledgeable about the implementation (here is his blog). However, there were a couple of adjustments to be made (some unavoidable segmentation faults as well as few unpleasant UI aspects), but finally it reached its desired shape.

Ground Overlay SS 1
Ground Overlay SS 2

Next, my mentors and me decided that the work on the User Interface for the Ground Overlays/Polygons editing mode should be postponed until we find a way of keeping it as a plugin but also offer a friendly user interaction.

The first thing I implemented (and which is directly related to my project) is the polygon moving feature, which added more dynamism. Next, I started working on per-node properties and node interaction in general, since only adding and moving were available until then. I added the possibility of selecting (marking as selected) nodes as well as deleting nodes.

linux3_v1
linux4_v1

Having available these two options on each node seemed pretty good so far, but we also need options on the entire polygon and this is what I continued working on. The following options are available so far when right-clicking a polygon: Deselect All Nodes which provides a faster way of deselecting the nodes than clicking on each of them, Delete All Selected Nodes which streamlines the restructuring of an already drawn polygon and Remove Polygon.

linux5_v1

The last feature I implemented is the possibility of drawing holes within an already drawn polygon, or, in other words, adding inner boundaries to a polygon. This was the most time consuming feature since the existing implementation did not take at all into consideration a polygon’s inner boundaries. However, I managed after a couple of days to have it fully working. These images will show it better:

linux6_v1
linux7_v1

In the last screenshot you can see that I also handled the situation in which after the deletion of a node from the polygon’s outer boundary, the polygon would not be valid anymore, since one of its inner boundaries would cross its outer boundary, so a warning will pop-up.

To sum up, these have been two great weeks of coding, although I could not work on the project as much as I wanted due to my end of semester exams. However, I only have two more exams and afterwards I will be much more active. I hope that this post put some light into what I am actually doing for my GSoC project and I am very excited of what is following.

Călin Cruceru

‘Let’s rock this summer’ they said

And this is certainly what we are going to do.

I am proud to say that I have been accepted to Google Summer of Code under KDE, Marble project. Surprised? Yes, a little bit. That is, I belived in my chances but, at the same time, had dozens of emotions as the accepted students announcement approached. I think I had a pretty good proposal and I had also proven my acquaintance with the codebase through the 13 patches I had sent even before the student application period ended, but you never know what brilliant idea one may have.

Marble is a virtual globe and a world atlas. My project, named ‘Editing mode for Polygons inside Marble’, deals with the implementation of a new and fresh feature to Marble, called Polygons Editing. In plain English that is a set of tools which will allow the user to draw new polygons onto the map as well as managing and customizing (adding, removing, moving nodes) already drawn ones.

Why is such a feature highly needed within an exploring software? Well, I will show you a picture to give you a quick insight into what its purpose may be.
forblog_v1
This is an existing feature of Marble which shows the eclipses from a particular date. Imagine how many similar shapes one could draw using the the Polygons Editing feature. The people to which this is addresed are researchers who could use it in presentations as an overview of their studies, students who may find it useful for their school assessments and many others who want to mark some specific places onto the earth for any reasons.

My work will also involve polishing the whole Editing Mode from Marble, including the Ground Overlays Editing. This is a feature implemented during Google Summer of Code 2013 and which have not been branched to master, although it was very close to look as a fresh and fully working feature. In fact, this is the task I have been working on lately and all I can say is that it is very close to the full functionality I was speaking above. I will not give any more details, but I will come back with another post where I will present my work done so far and this feature will certainly be included.

I am very excited to get it started officially and, hopefully, every line of code written by me will be accepted upstream.

Regards,
Călin Cruceru