Why is Konfabulator "Pretty?"

Bill Marriott wjm at wjm.org
Tue Dec 6 13:00:57 EST 2005


Stephen,

I want to clear something up -- 

1) I'm not trying to create the leanest, most efficient clock
2) I'm not trying to create "a" clock at all
3) I was trying to replicate exactly the look of a typical K. widget, which 
happened to be a clock, in order to prove that "we" as Rev users could do 
stuff just as cool as K. if we wanted to.

I thought initially this would be straightforward, if not easy. Honestly.

I thought the hard parts would be all the system tray stuff and the 
preferences window, and figuring out "deep masking" for the first time.

I found out that

a) It's actually impossible* to exactly reproduce the K. clock because
b) Images (bitmaps) do not rotate cleanly in Revolution

- The rotate command will obliterate the image, bring the computer to a 
standstill, and consume vast amounts of memory.

- Setting the angle of an image will result in extreme jaggies at 
non-orthogonal angles.

We did see an example of a *very* beautiful clock executed in Revolution, 
which used completely different methods and did not resemble the K. clock in 
any way.

There was a detour in which I gave up trying to emulate the K. clock, but 
tried a vector minute hand graphic out of curiosity. I discovered that

- RevRotatePoly will always distort a vector graphic with each rotation 
(because it uses integral points).
- Rotating an already rotated vector graphic repeatedly will compress the 
whole thing into a tiny dot with a dramatic crumple effect. (A technique was 
offered where you flipped back-and-forth between the object's original 
position and a rotated position, so that only one generation of corruption 
occurred and the hand mostly stayed the same shape.)
- The revRotatePoly rotates differently than "rotate" and "angle" do. It 
"anchors" the upper-left of the vector graphic's bounding box. (A technique 
was offered which used trigonometry to correct that and rotate the vector 
graphic around a point.)

So,

- if someone wants to create a vector-based clock that kind of looks ok in 
Revolution, we have all the tools for it in this thread.
- if someone wants a really cool looking clock (or really cool looking 
"anything"), they should hire Scott Rossi
- if someone wants to create an exact replica of the K. clock in Rev, they 
should give up, which is what I did :)

Bill

* You could create the exact look of the K. clock by flipping through frames 
of GIF or PNG images of the hands at various positions, but I don't think 
that "counts.")

p.s.: I may pick a different K. widget (beware! lol)


"Stephen Barncard" <stephenAMPEX at barncard.com> 
wrote in message news:p06230900bfb8b7bcec1d@[192.168.1.103]...
> You should search the list about two months back -- there was a heated 
> thread about creating a clock in minimum code and processor load. Several 
> on this list were competing for the cleanest, smartest code. It got down 
> to less than 10 lines I think.
>
>>
>>I believe for certain that a widget like the Konfabulator clock could be
>>done with Rev, but I don't have the faintest idea of how to begin, and it
>>seems like it would be a big project. (I'm going to start on it right 
>>now!)
>>However, Konfabulator seems to make this pretty easy for a casual author.
>>
>>Bill






More information about the use-livecode mailing list