Morphic中的Morph与Cocoa中的NSView有什么区别?

我想知道使Morphic特别的事情。     
已邀请:
Morphic不仅仅是NSView或任何其他图形类,只是允许重新实现一组有限的功能。 Morphic是一个极具可塑性的UI构建工具包。 Morphic背后的一些设计理念使这个意图明确: 包括2D坐标系的综合层次结构。它们不限于笛卡儿或线性。有用的非线性坐标系包括极坐标,对数,双曲线和地理(类似地图)投影。 从变形本身分离坐标系的处理。变形应该只需要选择其首选坐标系,而不是需要将它绘制的每个点单独转换为世界坐标。其
#drawOn:
方法及其子变形的位置以其自己的坐标系表示。 显示属性(如大小或分辨率)的完全独立性。没有像素的概念。 GUI被认为处于更高层次。所有GUI都与像素分辨率无关。所有渲染都是抗锯齿的。 分离坐标系可以简化变形的移动,缩放和旋转。 所有坐标都是浮点数。这对于允许完全任意的比例而没有明显的舍入误差是有益的。 变形层次结构不是形状的层次结构。变形没有边界或颜色的概念。亚模态对齐没有一般概念。特定的变体可以以对自身有意义的任何方式实现这些。 Morphic事件处理非常灵活,允许您将事件发送到任意对象。该对象不需要子类Morph。     
警告:Smalltalk的现场动态环境是一个红色药丸。静态,冷冻语言对你来说永远不会是一样的;-) 简而言之:Morphic是一个虚拟世界,您可以直接探索实时对象(就像现实世界一样)。你有没有看过UI和...... 想知道“哇,真的很酷!他们是怎么做到的?” 福步“我希望他们做过X!” 虽然这些想法会导致任何其他环境中的痛苦和挫折,但在Morphic中则不然。 如果你想要打击你的心灵,成为一个形态世界的神: 启动Pharo图像,然后单击背景(实际上是“世界”)以显示世界菜单: 在其中一个菜单选项上打开“halos”(在我的Mac上按住Shift键并单击): 拖动“拾取”光环(中上部)并将其放在世界的某个位置: 享受您现在可以在任何地方使用的菜单项: 说真的,点击它,看看浏览器打开!! 有没有一个选项,你总是使用一个供应商埋藏三个菜单级深?这有用吗?!这是Morphic等直播GUI环境的强大功能。 如果您对此感兴趣,请阅读John Maloney& Randall Smith在Morphic用户界面构建环境中的直接性和生动性     

要回复问题请先登录注册