テキストやグラフを「徐々に」表示させる
前提オブジェクト
f = sin(x)
text1 = "絶えず人いこふ夏野の石一つ"
青いグラフ
SlowPlot[ f ] と入力すると、数値オブジェクトaとともに、
g = If[x < x(Corner[2] - Corner[1]) a + x(Corner[1]), f]
が作成される。gが、青いグラフの定義である。
テキスト1行目(text2)
text2 = text1
poly1 = Polygon[Corner[text2, 3], Corner[text2, 2], Corner[text2, 2] + (1 - a) (Corner[text2, 1] - Corner[text2, 2]), Corner[text2, 3] + (1 - a) (Corner[text2, 4] - Corner[text2, 3])]
poly1は、text2よりもレイヤーを高くする。また、poly1の背景色は、不透明の白を選択する。
すると、poly1は、text2の表示を隠す役割を果たす。aが増加するに伴い、poly1が変化し、徐々にテキストを表示する結果となる(下図は、poly1に色をつけて、その仕掛けを可視化したものである)。
テキスト2行目(text3)
text3 = Take[text1, 1, Length[text1] * a]
テキスト3行目(text4)
text4 = text1
text4の「動的な色」を、以下のように設定する。
ポイントは「明度」である。a=0のとき、明度は1(すなわち白色。背景色〔白色〕と同色ゆえに不可視)、aが1まで増加するのに伴い、明度は0.5まで徐々に減少していく。明度0.5は、明度1(白色)と明度0(黒色)の中間である。明度0.5、かつ、彩度1のもとでは、指定した色相が直接的に表現される(最もカラフルである)。