Project

General

Profile

Feature #10173

Liquify tool (warp)

Added by Marcello Perathoner over 4 years ago. Updated over 2 years ago.

Status:
Fixed
Priority:
Low
Assignee:
Category:
Darkroom
Target version:
Start date:
10/23/2014
Due date:
% Done:

100%

Affected Version:
git development version
System:
all
bitness:
64-bit
hardware architecture:
amd64/x86

Description

Darktable should have a liquify tool similar to Photoshop's or Gimp's warp tool.

See the new warp tool in Gimp 2.9 dev.

Associated revisions

Revision 6e2f840d
Added by Marcello Perathoner over 3 years ago

[Issue #10173] Liquify tool. Initial commit.

Revision abbeca4a
Added by Marcello Perathoner over 3 years ago

[Issue #10173] Liquify tool. Initial commit.

Revision 0ff65d06
Added by Marcello Perathoner over 3 years ago

[Issue #10173] Liquify tool. Initial commit.

Revision cc965060
Added by Marcello Perathoner over 3 years ago

[Issue #10173] Liquify tool. Initial commit.

Revision aebf1fb2
Added by Pascal Obry over 3 years ago

Merge branch 'liquify'

  • liquify:
    We can have a single dragged items, simplify code.
    When dragging do not accept a change of tool.
    Remove unused routine in liquify.cl
    Minor reformatting.
    Ensure there is no use of uninitialized variable.
    Avoid using bit-field for portability.
    Lock and copy the pipe data in get_point_scale()
    Do a garbage collection when nodes are deleted.
    Set the handle a bit bigger to help selecting/dragging them.
    Factorize some code.
    simplify code.
    Large rework of the liquify module.
    [Issue #10173] Liquify tool. Initial commit.

History

#1 Updated by Roman Lebedev over 4 years ago

  • Status changed from New to Closed: won't fix

Darktable is not general-purpose image editor.
If you want that feature, use gimp dev 2.9
we do not see how that feature could be of any use for raw development process.

#3 Updated by Marcello Perathoner over 4 years ago

Roman Lebedev wrote:

Darktable is not general-purpose image editor.
If you want that feature, use gimp dev 2.9
we do not see how that feature could be of any use for raw development process.

Then you lack imagination. There are many uses for this tool in a developer. If I export the image and then use Gimp on it (which I've done until now) it breaks the workflow.

I've created a PoC module and I'm already using it. I think that with a bit of polish it would make a very useful tool especially if you are in people fotography.

#4 Updated by Jérémy Rosen over 4 years ago

  • % Done changed from 0 to 20
  • Status changed from Closed: won't fix to Triaged

Sorry for the quick close, we tend to be floodded by requests of "this feature is in gimp/LR/photoshop so you should have it too" by people that have never seen a line of code in their life and we tend to quickly close them...

The fact that you actually have starte coding things makes it a bit different and worth considering a little more...

Note however that the original point (that is it is a feature that fits better an image editor than a raw photo processor) still stands, we have delimited a perimiter to what we want to do and liquify doesn't really fit in there. You will need to convince us that this will fit in

on the plus side, this is an iop, it is not too intrusive.

Anyway, you should really come and join us on #darktable on IRC (freenode) which is the place where all the real discussion takes place. The devs are a friendly bunch and we tend to take our decisions by consensus on the channel. Being there will greatly help us know you and discuss your iop with you

#5 Updated by Pascal Obry over 4 years ago

I think this feature has received some good feedback on the mailing-list from some devs. So probably nice to get this moving. Can you tell us what is the current status? Do you have a branch rebased on current master? There was also some comments on the mailing-list about reusing as much code from the heal tool circuitry. Don't remember all the details though.

In any case, I'm for one very interested by this feature.

#6 Updated by Marcello Perathoner over 4 years ago

Pascal Obry wrote:

I think this feature has received some good feedback on the mailing-list from some devs. So probably nice to get this moving. Can you tell us what is the current status? Do you have a branch rebased on current master? There was also some comments on the mailing-list about reusing as much code from the heal tool circuitry. Don't remember all the details though.

In any case, I'm for one very interested by this feature.

Status: The warp engine (everything that is called from process ()) is fairly ready. OpenCL is working in a very basic way. More OpenCL hacking to follow.

The user interface still needs a lot of figuring out in the usability way. GTK3 still doesn't work quite as well as GTK2. I will push as soon as most of the GTK3 bugs are found.

#7 Updated by Pascal Obry over 4 years ago

Ok, keep us informed. This looks like a very nice addition to dt to me.

#8 Updated by Jérémy Rosen over 4 years ago

Ok, GTK3 port is now stable enough that porting your stuff should be possible,

hope to hear more about this...

cheers

#9 Updated by Pascal Obry over 3 years ago

Any news about this one? I'm too would love to see this in darktable. Can we expect this for next release?

#10 Updated by Pascal Obry over 3 years ago

  • Assignee set to Pascal Obry

I've been using this liquify iop a bit. It is really nice. I'd like to have this integrated into darktable and I'll take over this action.

I have already reviewed the code. I have fixed one issue. I'll try to have a pull request ready after the 2.0 release. This is wonderful work that should not disappear!

#11 Updated by Pascal Obry over 3 years ago

I have a proposed pull-request for this now. If you feel like testing it and giving some feedbacks, go ahead!

https://github.com/darktable-org/darktable/pull/1088

#12 Updated by Pascal Obry over 3 years ago

  • % Done changed from 20 to 50
  • Status changed from Triaged to In Progress

#13 Updated by Pascal Obry over 3 years ago

  • % Done changed from 50 to 100
  • Status changed from In Progress to Fixed

This is now implemented.

#14 Updated by Roman Lebedev over 2 years ago

  • Target version changed from Future to 2.2.0

Also available in: Atom PDF