On Jan 29, 2011, at 10:43 AM, J. Landman Gay wrote:

On 1/29/11 6:12 AM, Jim Ault wrote:
Assuming all fields on a card are the target fields to sort and combine

on sortFlds
repeat with k = 1 to the number of fields
put the rect of field k after fieldList
put comma & k after fieldList
put cr after fieldList
end repeat
sort fieldList numeric by item 2 of each -- Y
sort fieldList numeric by item 1 of each -- X

repeat for each line LNN in fieldList
put fld (item 5 of LNN) after tWholeenchilada
put cr after tWholeenchilada
end repeat
put tWholeenchilada into msg box
end sortFlds

-- in the second repeat loop you could use ...
-- put item 5 of LNN into fldNum
-- put fld fldNum after tWholeenchilada


I tried something almost identical and it didn't work, so I was waiting to see if anyone else could come up with a solution. The task is harder than you'd think at first.

For testing, stagger the fields a little bit so their tops and lefts aren't aligned in any way.

My test I used did have scattered fields, but if all the X values are different, then that becomes the sort order and the Y values have no effect on the final order. I think the idea is to sort based on the X- Y ratio, rather than the raw values.

Any algorithm will work and the result become the sort value, such as

get the rect of fleld k
get (item 2 of IT) div (item 1 of IT) after fieldList
put comma & k after fieldList
put cr after fieldList

It depends on the authors desired logic.

Jim Ault
Las Vegas



_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to