Morphic 3 architecture.

Juan Vuletich juan at jvuletich.org
Fri Feb 1 01:33:31 UTC 2008


Michael van der Gulik wrote:
>
>
> "Pentagrams" and logarithmic scales in music? What in the devil's name 
> are you talking about? 
> http://en.wikipedia.org/wiki/Pentagram_%28disambiguation%29.
>

I apologize. I made up that one. I mean 
http://en.wikipedia.org/wiki/Music_notation especially "Modern musical 
notation". And when plotting a spectrogram for working in music, the 
frequency scale should be logarithmic, to make height on the Display the 
same for all notes.

> I can never see the majority of people ever using the features you 
> mention. They're all specialised applications and IMHO better suited 
> to custom implementations in the applications themselves. The GUI is 
> the wrong place for this functionality.

Well, I don't agree.

>
> I've had a good think about the usefulness of using non-linear 
> coordinate system. The only realistic examples I could think of are:
>
> - Zooming in, specifically for documents or graphical applications. 
> This is a linear transformation.
> - Rotating things... such as photos. Again, a linear transformation.
> - Silly animated window effects.
>
>

Saying that software for music, technical plots, maps and teaching math 
is non realistic sounds pretty strange to me.

>  
>
>
>     >
>     > What other features does Morphic 3 have? All I'm seeing is
>     "non-linear
>     > coordinate systems".
>     >
>
>     Morph specification that is agnostic about pixels and resolution. This
>     is the key to building GUIs that look good on screen with
>     different dpi's.
>
>     Theorically correct antia aliasing ("the signal processing approach to
>     anti aliasing").
>
>     Better design that current Morphic, with simpler and smaller code.
>
>
>
> These are good features, although I must say I'm most interested in 
> the cleaner code.

Once you support the signal processing approach to anti aliasing, 
supporting non-linear coordinate systems besides linear, is almost free.

>
> Is Morphic 3 retargetable? Could I run it using the Rome-based Canvas 
> or Sig's OpenGL implementation?

It could be done, if you restrict yourself to Cartesian coordinate 
systems and linear transformations. However the services offered by the 
canvas are not the same as existing canvases. New Canvas classes would 
be needed.

>
> Are you considering how to best use graphics hardware, or are you 
> doing most operations in software?
>

Currently, everything is done in software. Many of the algorithms and 
techniques are new. However, the rendering engine is separated from the 
morphs. It's no big deal to replace it with another one that uses 
OpenGL, Cairo or anything.


Cheers,
Juan Vuletich




More information about the Squeak-dev mailing list