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 39 40 41 42 43 44 45 46 47 48 49 50 51
|
Koch* developperKoch(Koch* this){
//variables
EPOINT *pointCourant, *pointSuivant, *pointMilieu, *pointTier1, *pointTier2, *pointEquilateral;
int continuer;
//declarations
pointCourant = this->points;
pointSuivant = pointCourant->next;
continuer = 1;
//parcourt des points du flocon
while(continuer == 1){
//mise en place point premier tier
pointMilieu = milieu(pointCourant->x, pointCourant->y, pointSuivant->x, pointSuivant->y);
pointTier1 = milieu(pointCourant->x, pointCourant->y, pointMilieu->x, pointMilieu->y);
pointTier1 = insert_after(pointCourant, pointTier1->x, pointTier1->y);
//mise en place point second tier
pointTier2 = milieu(pointMilieu->x, pointMilieu->y, pointSuivant->x, pointSuivant->y);
pointTier2 = insert_after(pointTier1, pointTier2->x, pointTier2->y);
//mise en place point formation equilateral
pointEquilateral = equilateral(pointTier1->x, pointTier1->y, pointTier2->x, pointTier2->y);
pointEquilateral = insert_after(pointTier1, pointEquilateral->x, pointEquilateral->y);
printf("pointCourant : %lf ; %f \n", pointCourant->x, pointCourant->y);
printf("pointTier1 : %lf ; %f \n", pointTier1->x, pointTier1->y);
printf("pointEQUILATERAL : %lf ; %f \n", pointEquilateral->x, pointEquilateral->y);
printf("pointTier2 : %lf ; %f \n", pointTier2->x, pointTier2->y);
printf("pointSuivant : %lf ; %f \n", pointSuivant->x, pointSuivant->y);
//repositionnement sur le segment suivant
if(pointSuivant->next == NULL){
pointCourant = pointSuivant;
pointSuivant = this->points;
continuer=0;
}else{
printf("tttttggggggg\n");
pointCourant = pointSuivant;
pointSuivant = pointSuivant->next;
}
}
printf("pointCourant : %lf ; %f \n", pointCourant->x, pointCourant->y);
printf("pointTier1 : %lf ; %f \n", pointTier1->x, pointTier1->y);
printf("pointEQUILATERAL : %lf ; %f \n", pointEquilateral->x, pointEquilateral->y);
printf("pointTier2 : %lf ; %f \n", pointTier2->x, pointTier2->y);
printf("pointSuivant : %lf ; %f \n", pointSuivant->x, pointSuivant->y);
return this;
} |
Partager