C:/sources/c++/buddhabrot/buddhabrot/darkBody.cpp

00001 #include "darkBody.h"
00002 #include <cmath>
00003 
00004 darkBody::darkBody(int nbColors):colorMaker(nbColors){
00005 }
00006 
00007 darkBody::~darkBody(){
00008 }
00009 
00010 QColor darkBody::get(int level){
00011         int red, green, blue;
00012 
00013         //float ii = sqrt(sqrt(float(level)/nblevels)) * nblevels;
00014         int ii = level;
00015 
00016         // rouge
00017         if (ii < nblevels/2)
00018                 red = 511 * ii / nblevels;
00019         else 
00020                 red = 255;
00021 
00022         // vert
00023         if (ii< nblevels/4)
00024                 green = 0;
00025         else if (ii< 3*nblevels/4)
00026                 green = 511 * (ii-nblevels/4)/nblevels;
00027         else
00028                 green = 255;
00029 
00030         // bleu
00031         if (ii< nblevels/2)
00032                 blue = 0;
00033         else
00034                 blue = 511 * (ii-nblevels/2)/nblevels;
00035 
00036         return QColor(red, green, blue);
00037 }

Generated on Sat Feb 6 16:30:54 2010 for BuddhaBrot by  doxygen 1.4.6-NO