>>243 >>244 (>>210)
>これに渡す引数のため、Y は limitVal(.... + 0.49999999) が必要で、
Y は この式だから
Y = 0.29891 * R + 0.58661 * G + 0.11448 * B
何もしなくても 0.0 〜 255.0 の値しかとらないと思われるよ。

>// limitVal() かけるから四捨五入を入れた
>y = limitVal(2.0 * (yyy0 + xxx0) * t * (1 - t) + 255.0 * t * t + 0.4999999);
+0.5 のあと 整数型にキャストしなければ、四捨五入にはならないと思う。
そもそも、limitVal( ) に四捨五入は必要ないと思います。

>また、>>242 での Ro, Go, Bo は BYTE 列に納めるため、四捨五入と limitVal()
>が必要と考えました。
そこはその通りですね。
私が int で実験したのは、-1 や 256 になっちゃうところも見つけるためでした。

とりあえず 見た感じでレスしときます。
また時間があればこっちでも実験してみます。