void generating() {
int i,j;
int a,b;
int promieniter, jeszczeraz;
for (i=0 ; i < n ; i++) { // w pętli dla każdej z figur
Figura *f = new Figura;
do
{
jeszczeraz=0;
do
{
f->srodekX = rand()% 800;
f->srodekY = rand()% 600;
} while(midleCheking(f,i)!=1);
promieniter=0;
do
{
if((promieniter++)>10){
jeszczeraz=1;
break;
}
f->size = rand()%size_max;
} while(sizeChecking(f,i)!=1);
if(jeszczeraz != 0){}
else
{
f->ilosc_katow = 3 + rand()%(k-2); // losowanie ilosc katow
Punkt *p = new Punkt://pierwszy punkt figury
p->x = LosujPunkt(f,i,1);
p->y = LosujPunkt(f,i,2);
f->punkty.push_back(p);
printf("Dodalem punkt srodkowy (%d %d)\n",f->punkty[0]->x,f->punkty[0]->y);
for(int j=1; j<f->ilosc_katow;j++){//dodawanie kolejnych punkow
int bla=0;
Punkt *p = new Punkt;
do{
if((bla++)>20){
jeszczeraz=1;
break;
}
a=LosujPunkt(f,i,1);
b=LosujPunkt(f,i,2);
printf("\n %d %d %d %d ", i, j, a, b);
} while (checkExistence(a,b,f,j) || checkCollinearity(a,b,f,j) || checkCrossing(a,b,f,j) );
if (jeszczeraz !=0)
break;
else {
p->x = a; // wrzuceie poprawnego punktu na wektor
p->y = b; //printf("Dodalem punkt %d (%d %d)\n",j,a,b);
f->punkty.push_back(p);
}
}
Figury.push_back(f); //dodanie nowej figury
}
} while(jeszczeraz!=0);
}Add a code snippet to your website: www.paste.org