1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| //**************** Fonction initialisation segmentation ********************
int InitSegmentationOk( const unsigned int Degree, const int Speed,
const double Start, const bool CustomOK,
const bool BlackButtom, TPeekSegCfg CurSeg)
{
CurSeg.Degree = Degree;
CurSeg.Speed = Speed;
CurSeg.Start = Start;
CurSeg.CustomOk = CustomOK;
CurSeg.BlackButtom = BlackButtom;
CurSeg.RBGStep = 256/pow((32*pow(2.0,Degree)),(1.0/3.0));
CurSeg.NbrCalcSeg = (int)(32*pow(2.0,Degree));
CurSeg.NbrUsedSeg = 0;
CurSeg.Segvec = (TPeekSegment*)malloc(CurSeg.NbrCalcSeg*sizeof(TPeekSegment));
CurSeg.CubeRGBvec = (Cube*)malloc(CurSeg.NbrCalcSeg*sizeof(Cube));
for(int k=0;k< CurSeg.NbrCalcSeg;k++)
{
//Initialisation du vecteur de structures Segvec
CurSeg.Segvec[k].SegNo = k+1;
CurSeg.Segvec[k].OrdBySize = 0;
CurSeg.Segvec[k].dEmax = 0.0;
CurSeg.Segvec[k].Used = true;
CurSeg.Segvec[k].Deleted = false;
CurSeg.Segvec[k].Added = false;
CurSeg.Segvec[k].ControlOK = false;
CurSeg.Segvec[k].PixSize = 0;
CurSeg.Segvec[k].Percent = 0.0;
for(int i=0;i<3;i++)
{
CurSeg.Segvec[k].LChmean[i]= 0.0;
CurSeg.Segvec[k].Labmean[i]= 0.0;
CurSeg.Segvec[k].LChmin[i]= 0.0;
CurSeg.Segvec[k].LChmax[i]= 0.0;
CurSeg.Segvec[k].RGBmean[i]= 0.0;
}
} |
Partager