94から97行目が、Pがどの色とどの色の間にいるかを計算してる部分です。 I0が、Pを挟んでいる色のうち、小さい方(紫に近い方)で、I1が大きい方(赤に近い方)です。 99から101行目が、I0の色とI1の色の中間の色を計算してる部分です。 自作した汎用関数のHOKAN()を使っているのでややこしく見えますが、やってることはさっきの「色の中間を計算」してるだけです。