Hi Jens-Hanno,

> i started correcting the dt problem with masks borders displayed at a wrong 
> position.
> 
> There is a detail i don't understand and currently dont't know how to do.
> 
> Lets assume i have a point p(x,y), x and y are both in the 0->1 range 
> covering the whole
> raw data (no lensfun applied).
> 
> So my question: 
> How can i calculate the position (also 0->1 range for both) **after** lensfun 
> correction?

This is done by a transform function in the IOP. Actually each IOP must
provide a distort_transform() and distort_backtransform() function that
will transform a set of points.

Fact is lens.cc seems to have the very same implementation in transform
and backtransform which is obviously pretty wrong. I had started fixing
that, but it seems there is something more. I can create a PR with what
I have now if you want to start from that, let me know.

When mask needs it calls a generic transform function in one direction
or the other in the pipe and this will trigger calls to transform
functions for each active IOP.

Hope this helps,

-- 
  Pascal Obry /  Magny Les Hameaux (78)

  The best way to travel is by means of imagination

  http://www.obry.net

  gpg --keyserver keys.gnupg.net --recv-key F949BD3B

___________________________________________________________________________
darktable developer mailing list
to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org

Reply via email to