How to| 制作动态图形

Wolfram 语言的图形语言完全集成了动态交互式功能. 这使得用户可以使用多种方式创建可以对输入设备作出响应的图形.

Video Database Error (404) : Video does not exist

从使用 Graphics 创建一个 Disk 开始:

In[1]:=
Click for copyable input
Out[1]=

Wolfram 语言使得用户可以在图形中嵌入工具提示条. 工具提示条是对图形增加注释的好办法.

Graphics 中使用 Tooltip 在圆盘中嵌入一个工具提示条. 把鼠标悬停到圆盘上以查看工具提示条:

In[2]:=
Click for copyable input
Out[2]=

不仅如此,其他鼠标悬停的特点也被加到图形中.

例如,使用 Mouseover 使得当鼠标移到圆盘上时,圆盘变成红色的:

In[3]:=
Click for copyable input
Out[3]=

用户也可以通过在圆盘周围使用 Button,处理图形内的鼠标点击. 点击下面的圆盘产生一个发声提示音:

In[4]:=
Click for copyable input
Out[4]=

Wolfram 语言甚至允许用户从一个图形创建一个超链接. 点击下面的图形可以把您带到 Wolfram Research 的主页:

In[5]:=
Click for copyable input
Out[5]=

通过把 Dynamic 放置在 Graphics 表达式内合适的位置,用户可以创建一个当鼠标在图形内移动时可更新的图形.

例如,把鼠标光标移到下面的框架中. 圆盘动态的把中心调整到您的鼠标光标处. 无论鼠标当前移到任何位置,在 Dynamic 内部使用MousePosition 可以给出鼠标的位置:

In[6]:=
Click for copyable input
Out[6]=

当鼠标光标移到任何图形上时,该图形将会更新. 如果用户把鼠标移到一个也是超链接的圆盘上时,用户将会看到带框架的圆盘在框架内跟随鼠标光标移动.

如果用户不想要图形出现这样的行为,对鼠标位置进行限制,以使得仅当鼠标位于特定图形内部时才发生触发行为.

例如,在下面图形中移动鼠标光标,使得在两个带框架的图形中的圆盘位置匹配. 但是,反之未必. 事实上,把鼠标移到上面任何图形上,不会引起下面圆盘位置的改变:

In[7]:=
Click for copyable input
Out[7]=