Hello, We are a team of five french students from the "Ecole Centrale de Lyon" (an engineer high school, see www.ec-lyon.fr). Our programs are quite general, we attend programming lessons but we are not informatics specialists
In second year, we have to work on a professional project for five months (officialy 4 hours a week, but... we can spend much more time). I thought it would be a good idea to help developing inkscape. The only things the school demands is a tutor (in our case, from the dev team) and requirements. The tutor will be here to help on specific technical questions, to check the progress of the project and to validate goals.
I have been using inkscape for two years for serious projects. And I am currently working with both the stable and the svn version (on ubuntu and windows) I've found some some projects from the wiki that could fit with what we have to do : - the perspective tool ( http://wiki.inkscape.org/wiki/index.php/PerspectiveObject ) - the add/substract node tool ( http://wiki.inkscape.org/wiki/index.php/NewTools ) - Inkscape / GIMP raster graphics Editing Integration from GSoC 07
Thanks for your response Steren
On Mon, Oct 15, 2007 at 07:05:24PM +0200, Steren Giannini wrote:
Hello, We are a team of five french students from the "Ecole Centrale de Lyon" (an engineer high school, see www.ec-lyon.fr). Our programs are quite general, we attend programming lessons but we are not informatics specialists
In second year, we have to work on a professional project for five months (officialy 4 hours a week, but... we can spend much more time). I thought it would be a good idea to help developing inkscape. The only things the school demands is a tutor (in our case, from the dev team) and requirements. The tutor will be here to help on specific technical questions, to check the progress of the project and to validate goals.
I have been using inkscape for two years for serious projects. And I am currently working with both the stable and the svn version (on ubuntu and windows) I've found some some projects from the wiki that could fit with what we have to do :
- the perspective tool (
http://wiki.inkscape.org/wiki/index.php/PerspectiveObject )
- the add/substract node tool (
http://wiki.inkscape.org/wiki/index.php/NewTools )
- Inkscape / GIMP raster graphics Editing Integration from GSoC 07
The perspective tool might be quite ripe for a student project; the GSoC project focused on the underpinnings, and I believe there are a number of avenues to take it from here. Hopefully Bulia could provide more info on directions that can be taken.
Btw, that NewTools page is actually pretty out-dated. The add/subtract tool, paint tool, and other ideas on that page are already implemented. However, there seems to always be more work to be done on tools, so Bulia may have some alternate suggestions for tool improvements or enhancements needed.
I don't know the status of the raster graphics integration work. But I'd suggest doublechecking that we're not at a point where major architectural work is required before moving ahead, as that would not fit within a high school student project.
Hope this helps, Bryce
On Mon, 15 Oct 2007 11:57:26 -0700, Bryce Harrington <bryce@...961...> wrote:
The perspective tool might be quite ripe for a student project; the GSoC project focused on the underpinnings, and I believe there are a number of avenues to take it from here. Hopefully Bulia could provide more info on directions that can be taken.
2geom provides most of the pieces necessary to perform perspective operations on path data, so it would be nice if we could get someone to use those bits from 2geom for this.
-mental
MenTaLguY wrote:
On Mon, 15 Oct 2007 11:57:26 -0700, Bryce Harrington wrote:
The perspective tool might be quite ripe for a student project; the GSoC project focused on the underpinnings, and I believe there are a number of avenues to take it from here. Hopefully Bulia could provide more info on directions that can be taken.
2geom provides most of the pieces necessary to perform perspective operations on path data, so it would be nice if we could get someone to use those bits from 2geom for this.
As indicated in an earlier email, the 3D box tool internals are currently subject to rewrite. When this is finished, I believe they would indeed provide a good basis for further applications.
But since the mockup on the wiki page mentioned in Steren's email is rather for a kind of "distortion tool" than a "perspective tool" (at least that's what the image is suggesting), I'm quite certain that none of the 3D box stuff would actually be needed. Furthermore, from what I have seen, 2geom is perfect for this as it already provides the necessary functionality in an amazingly flexible kind of way. It's a really addictive toy, so I can only recommend giving this a try (I would definitely to do it myself if I had the time).
On the other hand, a longer-term goal of mine is to combine the functionalities of the 3D box tool and 2geom to achieve something like "true" perspective distortion of paths, maybe in a live path effect kind of fashion. This might make a nice student project, too, but if I'm not mistaken there are some small bits missing in 2geom to achieve this, so it requires the above-mentioned rewrite to be finished first. In the long run, I believe it would be nice to integrate the results into 2geom, too. This is all on my would-be-nice-to-do-list. If someone wants to pick up any of these loose ends, I'd be glad to be of help. But I believe that at present it is more satisfactory (in terms of visible results per invested time) to play with 2geom and try to tackle the tool described in the wiki, which can in turn be used as the basis for the above-mentioned things.
Max
On Mon, 2007-10-15 at 11:57 -0700, Bryce Harrington wrote:
I don't know the status of the raster graphics integration work. But I'd suggest doublechecking that we're not at a point where major architectural work is required before moving ahead, as that would not fit within a high school student project.
Well, it might be at a good point. Chris has made a good framework in that everything is translated into ImageMagick buffers by just subclassing the bitmap implementation. Chris implemented all the functions that are in ImageMagick, but there is room for more to be added.
--Ted
Steren Giannini wrote:
Sent: maandag 15 oktober 2007 19:05
- the perspective tool (
Looking at the mockup, this is something that LPE's could very well do. (http://www.inkscape.org/screenshots/gallery/inkscape-0.46-lpe-pathalongpath....) I've been thinking about implementing this deformation effect myself or tricking ACSpike into doing so! :P I'd be more than happy to help you with this. Note that extending this leads to mesh deformation, very cool! Probably the most difficult part is getting the UI right; I think 2geom already has mesh deforming code.
Cheers, Johan
Hello all, Thanks for your responses,
You were right, the "perspective tool" I think about is more a "distortion tool". Concerning the 2geom lib, I think this is the way to do it. It may be quite hard for students like us to start with such a project but I think it's feasible. Why don't give it a try?
Johan, if you want it and if the dev team accept it, you could be our "tutor" for this project. Indeed the only things we need to get the project official in our school is a person in charge and a good requirements document. For this one, the wiki is well done, updating it will be sufficient.
We would be very proud to contribute to such a tool.
By the way, when I talk about "Inkscape / GIMP raster graphics Editing Integration from GSoC 07" I mean a scenario like this one : - right click on a graphic - select "Edit in external editor" - Gimp opens automatically itself on the graphic file - Press the save button in Gimp - Back to inkscape : the graphic is refreshed The command line for opening a file could be customizable in user preferences (People might like to open Photoshop instead for example) This project seams to be feasible too.
Thanks for your support. Steren
On 10/16/07, Steren Giannini wrote:
By the way, when I talk about "Inkscape / GIMP raster graphics Editing Integration from GSoC 07" I mean a scenario like this one :
- right click on a graphic
- select "Edit in external editor"
- Gimp opens automatically itself on the graphic file
- Press the save button in Gimp
- Back to inkscape : the graphic is refreshed
A GIMP implementation already exists, AFAIK
Alexandre
On 10/16/07, Alexandre Prokoudine wrote:
A GIMP implementation already exists, AFAIK
http://users.pandora.be/blendix/verse/
Talking to myself again :)
Alexandre
On Tue, 2007-10-16 at 14:43 +0200, Steren Giannini wrote:
By the way, when I talk about "Inkscape / GIMP raster graphics Editing Integration from GSoC 07" I mean a scenario like this one :
- right click on a graphic
- select "Edit in external editor"
- Gimp opens automatically itself on the graphic file
- Press the save button in Gimp
- Back to inkscape : the graphic is refreshed
The command line for opening a file could be customizable in user preferences (People might like to open Photoshop instead for example) This project seams to be feasible too.
I think probably the trickiest part of this is to set up a listener so that Inkscape knows when the file changes. So you'd need to set something up with GNOME-VFS and tie that all in. I'm not saying that it's impossible, but that's definitely a tricky part.
In general, I want to say that I think as I project we'd be happy to find a mentor and define a project that you could build onto Inkscape with. Don't consider the Wiki all the possible options, we also have a lot of enhancement requests in the bug tracker that users would definitely like.
--Ted
On Oct 16, 2007, at 9:07 AM, Ted Gould wrote:
I think probably the trickiest part of this is to set up a listener so that Inkscape knows when the file changes. So you'd need to set something up with GNOME-VFS and tie that all in. I'm not saying that it's impossible, but that's definitely a tricky part.
An alternative is to keep a list of files that *might* be changing and then look at their timestamps when Inkscape regains focus. It's very "low tech", but gets the job done fairly well.
Jon A. Cruz suggerì:
An alternative is to keep a list of files that *might* be changing and then look at their timestamps when Inkscape regains focus. It's very "low tech", but gets the job done fairly well.
Polling on timestamps could give a lot of headaches as filesystems usually have 1 second granularity, with FAT using a 2 seconds granularity.
On Oct 21, 2007, at 2:45 PM, Emanuele Aina wrote:
Jon A. Cruz suggerì:
An alternative is to keep a list of files that *might* be changing and then look at their timestamps when Inkscape regains focus. It's very "low tech", but gets the job done fairly well.
Polling on timestamps could give a lot of headaches as filesystems usually have 1 second granularity, with FAT using a 2 seconds granularity.
That usually doesn't come into play in real world situations.
Consider the use case scenario that we would encounter:
Someone switches to inkscape. inkscape looks to the timestamps It sees that a file has changed. A confirmation dialog for reloading is approved. Inkscape reloads the file... while the user then quickly switches over to a different graphical app Some edit is done in the other app A File|Save is done in the other app the user switches back to inkscape
I'd say that 99.9+% of the time all this will not occur in the small window where the filesystem granularity will go get in the way. However, in the rare case that it might actually happen, it turns out that most users will realize they just did some crazy app speed flipping, and not be bothered that things are missed upon rare occasion.
Another mitigating factor is that most windows users have NTFS, not fat.
And another is that on machines using FAT or such, the system itself is slow enough that it prevents the small window of time from coming to be an actual problem.
(BTW, I've done this with many systems, including Java code since the late nineties)
Steren Giannini wrote:
Sent: dinsdag 16 oktober 2007 14:44
Johan, if you want it and if the dev team accept it, you could be our "tutor" for this project. Indeed the only things we need to get the project official in our school is a person in charge and a good requirements document. For this one, the wiki is well done, updating it will be sufficient.
The wiki page describes an alternative solution that (I feel) has become obsolete now with the path effects. A lot of the functionality described there is already implemented. But a lot is missing aswell; basically the intrusive changes to Inkscape have been done mostly, what needs to be done is the UI of changes parameters to the effects on-canvas and implementing the envelope effect itself (the mathematics). Perhaps you should play around a little with the path-along-path or curve-stitch effect to see what is possible and what is not at the moment.
I can make a rewrite of the wiki page, using path effects.
Can we discuss things perhaps in the IRC/jabber channel?
Cheers, Johan
On 10/16/07, J.B.C.Engelen@...1578... <J.B.C.Engelen@...1578...> wrote:
I can make a rewrite of the wiki page, using path effects.
That would be much appreciated!
participants (10)
-
unknown@example.com
-
Alexandre Prokoudine
-
Bryce Harrington
-
bulia byak
-
Emanuele Aina
-
Jon A. Cruz
-
Maximilian Albert
-
MenTaLguY
-
Steren Giannini
-
Ted Gould