Fred Weinhaus on  wrote...
| >Fred Weinhaus on  wrote...
| >However when allowing an infinate number of arguments seperating the
| >control points in the current form of...
| >
| >      u1,v1  u2,v2...  x1,y1  x2,y2...
| >
| >is harder to manage instead of a mixed argument order of...
| >
| >      u1,v1  x1,y1    u2,v2 x2,y2  ...
| >
| >In that form you can easilly add more control points if you need it.
| >
| >
| >If I am doing to change the argument format NOW is the time...
| >What is your view?
| >
| 
| Infinite?  perhaps unlimited!
| 
| Boy that is a hard one to choose.
| 
| I think your users are most used to the first method from -distort.
| 
| But the second allows one to keep better control over the 
| correspondence of the two sets.
| 
| However, I would also ask, if the control points come from a file, 
| which is easier to parse or makes more sense to store the values in 
| the file. The latter offers:
| 
| u1,v1 x1,y1
| u2,v2 x2, y2
| .
| .
| .
| 
Not only that but you can then use that file like this from 'shell'...

     convert ....  -distort Perspective `cat points.dat`  ....

In the future, Im may even do this for you using...

    convert ....  -distort Perspective @points.dat  ...

IM already does not care about spaces, newlines or other non number
separators between the argument values.

| this way you don't have to know or use a separator in the file to 
| figure out how many points or some count at the top.
| 
| On the other hand, the first method could allow all of the source 
| points to be on one line and all of the destination points to be on a 
| second line.
| 
| So, really tough choice.
| 
| Any other pros vs cons that should be considered.
| 
| Is it too hard to allow either method with some parameter?
| 

YES. the only parameters is the 'method' and the numbers that follow
not much else.

| Sorry to be evasive, but I would like your thoughts as well. I am 
| going to have to mull this over some.
| 
The problem was I instigated the current method, as that was the
argument order used in the old  'generate FX expressions' scripts.
This just sort of carried over.

The later however is much more practical as you can list them in a file
in the same order (as you noted), and just append more arguments as they
become available.

Also on the plus side.  The  src and dest control points are right
next to each other making the matching of src to dest coords easier.

| If you made me choose today, I would probably go with the second 
| method as I think one has better control over making mistakes  - one 
| has a one-to-one correspondence that is easy to see.
| 
I preference would be the second method, now.

When I add 'unlimited' control points, with least squares fitting of the
distortion coefficients, it will be just so much harder to manage
control points without this change.

I have decided however that least squares is the next step in 'distort'
development, so I probably will need to make this argument change now,
both in the code, the documentation and examples.


I Cc'ed this to the developers list for others to comment.
  Anthony Thyssen ( System Programmer )    <[EMAIL PROTECTED]>
 -----------------------------------------------------------------------------
    SPACE FOR THIS INSERTION IS DONATED BY THE PUBLISHERS AS
    A SERVICE TO THE COMMUNITY      -- John Brunner - "The Sheep Look Up"
 -----------------------------------------------------------------------------
     Anthony's Home is his Castle     http://www.cit.gu.edu.au/~anthony/
_______________________________________________
Magick-developers mailing list
Magick-developers@imagemagick.org
http://studio.imagemagick.org/mailman/listinfo/magick-developers

Reply via email to