[PATCH] SoC: Healing brush
This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.
This is a read-only list on gimpusers.com so this discussion thread is read-only, too.
[PATCH] SoC: Healing brush | Kevin Sookocheff | 10 Aug 16:04 |
[PATCH] SoC: Healing brush | Sven Neumann | 10 Aug 18:50 |
[PATCH] SoC: Healing brush | Tino Schwarze | 10 Aug 19:12 |
[PATCH] SoC: Healing brush | Kevin Sookocheff | 10 Aug 21:16 |
[PATCH] SoC: Healing brush
Hello everyone,
I recently finished an implementation of the healing brush. A patch
implementing the brush is given at
http://bugzilla.gnome.org/show_bug.cgi?id=109801#c11 but does not contain
the icon and cursor that I created for the tool.
I have also posted some screen shots of the results of the tool at: http://picasaweb.google.com/kevin.sookocheff/HealingBrushExamples I just tried the brush on some example images I found on the web.
At this point there are a few things I'd like to do, but I'm not sure how to go about doing them.
TODO:
(1) Allow the source healing point to be taken from a separate image. I tried implementing this by referencing the clone tool implementation, but got stuck on it. At this point I want to get the tool into CVS and get some feedback, so I'll work on this incrementally from here.
(2) The brush does not work for indexed images. I'm not sure how to fix this, but I haven't given it too much thought at this point.
(3) Further integration as a GIMP tool. There are a lot of points in the code where the new tool should be integrated (i.e., app/gimpcore.def). I tried to do some of these things myself but quickly got overwhelmed, and was a bit worried that I would inadvertetently break something. If someone could guide me through these steps that would be great.
So, I'd like to get this tool checked into CVS, but first I'm asking permission to do that :) I have commit access to CVS so if someone gives the go-ahead, please guide me in how to make a branch and commit the code.
I hope that everyone likes the tool and is able to test it out for me.
Thanks, Kevin
[PATCH] SoC: Healing brush
Hi,
On Thu, 2006-08-10 at 10:04 -0400, Kevin Sookocheff wrote:
Hello everyone,
I recently finished an implementation of the healing brush. A patch implementing the brush is given at
http://bugzilla.gnome.org/show_bug.cgi?id=109801#c11 but does not contain the icon and cursor that I created for the tool.I have also posted some screen shots of the results of the tool at: http://picasaweb.google.com/kevin.sookocheff/HealingBrushExamples I just tried the brush on some example images I found on the web.
This looks great!
TODO:
(1) Allow the source healing point to be taken from a separate image. I tried implementing this by referencing the clone tool implementation, but got stuck on it. At this point I want to get the tool into CVS and get some feedback, so I'll work on this incrementally from here.
Shouldn't the healing tool be derived from GimpCloneTool? It seems to be similar enough. Perhaps you need to add a virtual function or two to the clone tool. But then it should be possible to share most of the code by deriving from it.
(2) The brush does not work for indexed images. I'm not sure how to fix this, but I haven't given it too much thought at this point.
Quite a few tools don't work for indexed images (color correction tools). This is not a problem. Nice if it can be avoided but tolerable.
(3) Further integration as a GIMP tool. There are a lot of points in the code where the new tool should be integrated ( i.e., app/gimpcore.def).
What are the other points where it would need to be integrated. app/gimpcore.def is nothing you would have to worry about. It is maintained by Hans Breuer and if he needs it to be updated, he will do that for you.
So, I'd like to get this tool checked into CVS, but first I'm asking permission to do that :) I have commit access to CVS so if someone gives the go-ahead, please guide me in how to make a branch and commit the code.
We first need to decide if we still want to accept this new tool for the 2.4 release. Otherwise it would have to be committed to a branch and merged into HEAD after the stable release is done.
Sven
[PATCH] SoC: Healing brush
On Thu, Aug 10, 2006 at 06:50:52PM +0200, Sven Neumann wrote:
I recently finished an implementation of the healing brush. A patch implementing the brush is given at
http://bugzilla.gnome.org/show_bug.cgi?id=109801#c11 but does not contain the icon and cursor that I created for the tool.I have also posted some screen shots of the results of the tool at: http://picasaweb.google.com/kevin.sookocheff/HealingBrushExamples I just tried the brush on some example images I found on the web.
This looks great!
Me too!!1 Erm. I mean: Yes, it looks good to me too.
So, I'd like to get this tool checked into CVS, but first I'm asking permission to do that :) I have commit access to CVS so if someone gives the go-ahead, please guide me in how to make a branch and commit the code.
We first need to decide if we still want to accept this new tool for the 2.4 release. Otherwise it would have to be committed to a branch and merged into HEAD after the stable release is done.
It would be pretty cool, marketing-wise. :-) New tools are easy to communicate. Improved tools probably do not sound very interesting to the average user (despite the fact that they may improve the workflow a lot).
Bye,
Tino.
[PATCH] SoC: Healing brush
Hello,
Shouldn't the healing tool be derived from GimpCloneTool? It seems to be
similar enough. Perhaps you need to add a virtual function or two to the clone tool. But then it should be possible to share most of the code by deriving from it.
I think there is a possibility to do this and that it should be at least discussed. The idea was presented before but it was decided that just getting a working implementation going is important enough for now. But now that a working implementation is here, we can try and come up with something.
Another idea that was floated earlier mentioned that a GimpFromSourceTool (something that acts on data aquired from a CTRL-click source) could act as a super-class to the clone tool and healing brush, and handle any further, similar tools. However, this approach would most likely be more difficult than deriving the healing brush from the clone tool.
What are the other points where it would need to be integrated.
I'm not sure. I don't know the source code well enough to know this. I just grepped for references to other tools and there are a lot of references to other tools where I don't reference the healing brush. I don't know if this is an issue, or if it affects other places in GIMP. It could be fine how it is, but like I said, I don't know the code well enough.
We first need to decide if we still want to accept this new tool for the
2.4 release. Otherwise it would have to be committed to a branch and merged into HEAD after the stable release is done.
OK. I think that it could be included in the next release with a little fine tuning.
One work constraint that I have is that I will be moving to Kenya on Sept. 16th to start an internship. So, starting on Sept. 1st I won't be contributing much to the code until I get settled in the new environment. I will be active on the mailing list though.
Cheers! Kevin