Если тормозит сделай всю отрисовку в отдельном потоке, тогда и с таймером заморачиваться не придётся( про потоки можно почитать например тут:
http://www.delphiworld.narod.ru/base...velopment.html)
а чтобы цвета шли по кругу(кстати определись, сколько тебе их надо)
то проще забить их все в массив констант, напр:
Код:
const
Colors:array[1..5] of TColor = (clBlack,clGreen,clYellow,clLime,clRed);
и при каждой прорисовке брать из массива следующий цвет(сделать переменную типа integer для текущего индекса в массиве и увеличивать на 1 при каждой прорисовке и ставить равной 1 если она будет больше 5(в моём случае макс индекс массива).
Про фракталы можно посмотреть исходники тут:
http://fract.narod.ru/down.html