/* solidosPlatonicos.cpp */ #include "solidosSuavizados.h" void montaVetor1(void) { int a=0; for (int j = 0; j <= 24; j++) { iter_1[j][0] = v[0][a];//facej iter_1[j][1] = t[0][a]; iter_1[j][2] = q[0][a]; iter_1[j][3] = t[3][a]; j++; iter_1[j][0] = t[0][a];//facej+1 iter_1[j][1] = v[1][a]; iter_1[j][2] = t[1][a]; iter_1[j][3] = q[0][a]; j++; iter_1[j][0] = q[0][a];//facej+2 iter_1[j][1] = t[1][a]; iter_1[j][2] = v[2][a]; iter_1[j][3] = t[2][a]; j++; iter_1[j][0] = t[3][a];//facej+3 iter_1[j][1] = q[0][a]; iter_1[j][2] = t[2][a]; iter_1[j][3] = v[3][a]; a++; } return; } void iteracao2(void) { //pontos nas faces for (int j = 0; j <24; j++) { q_2[j] = (iter_1[j][0] + iter_1[j][1] + iter_1[j][2] + iter_1[j][3])/4; } //pontos nas linhas de intersecção t_2[0][0] = (q_2[0]+q_2[23])/4 + (iter_1[0][0]+iter_1[0][1])/4; //face 1 (de 24) t_2[1][0] = (q_2[0]+q_2[1])/4 + (iter_1[0][1]+iter_1[0][2])/4; t_2[2][0] = (q_2[0]+q_2[3])/4 + (iter_1[0][2]+iter_1[0][3])/4; t_2[3][0] = (q_2[0]+q_2[5])/4 + (iter_1[0][3]+iter_1[0][0])/4; t_2[0][1] = (q_2[1]+q_2[22])/4 + (iter_1[1][0]+iter_1[1][1])/4; //face 2 (de 24) t_2[1][1] = (q_2[1]+q_2[16])/4 + (iter_1[1][1]+iter_1[1][2])/4; t_2[2][1] = (q_2[1]+q_2[2])/4 + (iter_1[1][2]+iter_1[1][3])/4; t_2[3][1] = t_2[1][0]; t_2[0][2] = t_2[2][1]; //face 3 (de 24) t_2[1][2] = (q_2[2]+q_2[19])/4 + (iter_1[2][1]+iter_1[2][2])/4; t_2[2][2] = (q_2[2]+q_2[9])/4 + (iter_1[2][2]+iter_1[2][3])/4; t_2[3][2] = (q_2[2]+q_2[3])/4 + (iter_1[2][3]+iter_1[2][0])/4; t_2[0][3] = t_2[2][0]; //face 4 (de 24) t_2[1][3] = t_2[3][2]; t_2[2][3] = (q_2[3]+q_2[8])/4 + (iter_1[3][2]+iter_1[3][3])/4; t_2[3][3] = (q_2[3]+q_2[6])/4 + (iter_1[3][3]+iter_1[3][0])/4; t_2[0][4] = (q_2[4]+q_2[20])/4 + (iter_1[4][0]+iter_1[4][1])/4; //face 5 (de 24) t_2[1][4] = (q_2[4]+q_2[5])/4 + (iter_1[4][1]+iter_1[4][2])/4; t_2[2][4] = (q_2[4]+q_2[7])/4 + (iter_1[4][2]+iter_1[4][3])/4; t_2[3][4] = (q_2[4]+q_2[13])/4 + (iter_1[4][3]+iter_1[4][0])/4; t_2[0][5] = (q_2[5]+q_2[23])/4 + (iter_1[5][0]+iter_1[5][1])/4; //face 6 (de 24) t_2[1][5] = t_2[3][0]; t_2[2][5] = (q_2[5]+q_2[6])/4 + (iter_1[5][2]+iter_1[5][3])/4; t_2[3][5] = t_2[1][4]; t_2[0][6] = t_2[2][5]; //face 7 (de 24) t_2[1][6] = t_2[3][3]; t_2[2][6] = (q_2[6]+q_2[8])/4 + (iter_1[6][2]+iter_1[6][3])/4; t_2[3][6] = (q_2[6]+q_2[7])/4 + (iter_1[6][3]+iter_1[6][0])/4; t_2[0][7] = t_2[2][4]; //face 8 (de 24) t_2[1][7] = t_2[3][6]; t_2[2][7] = (q_2[7]+q_2[11])/4 + (iter_1[7][2]+iter_1[7][3])/4; t_2[3][7] = (q_2[7]+q_2[14])/4 + (iter_1[7][3]+iter_1[7][0])/4; t_2[0][8] = t_2[2][3]; //face 9 (de 24) t_2[1][8] = (q_2[8]+q_2[9])/4 + (iter_1[8][1]+iter_1[8][2])/4; t_2[2][8] = (q_2[8]+q_2[11])/4 + (iter_1[8][2]+iter_1[8][3])/4; t_2[3][8] = t_2[2][6]; t_2[0][9] = t_2[2][2]; //face 10 (de 24) t_2[1][9] = (q_2[9]+q_2[19])/4 + (iter_1[9][1]+iter_1[9][2])/4; t_2[2][9] = (q_2[9]+q_2[10])/4 + (iter_1[9][2]+iter_1[9][3])/4; t_2[3][9] = t_2[1][8]; t_2[0][10] = t_2[2][9]; //face 11 (de 24) t_2[1][10] = (q_2[10]+q_2[18])/4 + (iter_1[10][1]+iter_1[10][2])/4; t_2[2][10] = (q_2[10]+q_2[15])/4 + (iter_1[10][2]+iter_1[10][3])/4; t_2[3][10] = (q_2[10]+q_2[11])/4 + (iter_1[10][3]+iter_1[10][0])/4; t_2[0][11] = t_2[2][8]; //face 12 (de 24) t_2[1][11] = t_2[3][10]; t_2[2][11] = (q_2[11]+q_2[14])/4 + (iter_1[11][2]+iter_1[11][3])/4; t_2[3][11] = t_2[2][7]; t_2[0][12] = (q_2[12]+q_2[21])/4 + (iter_1[12][0]+iter_1[12][1])/4; //face 13 (de 24) t_2[1][12] = (q_2[12]+q_2[13])/4 + (iter_1[12][1]+iter_1[12][2])/4; t_2[2][12] = (q_2[12]+q_2[15])/4 + (iter_1[12][2]+iter_1[12][3])/4; t_2[3][12] = (q_2[12]+q_2[17])/4 + (iter_1[12][3]+iter_1[12][0])/4; t_2[0][13] = (q_2[13]+q_2[20])/4 + (iter_1[13][0]+iter_1[13][1])/4; //face 14 (de 24) t_2[1][13] = t_2[3][4]; t_2[2][13] = (q_2[13]+q_2[14])/4 + (iter_1[13][2]+iter_1[13][3])/4; t_2[3][13] = t_2[1][12]; t_2[0][14] = t_2[2][13]; //face 15 (de 24) t_2[1][14] = t_2[3][7]; t_2[2][14] = t_2[2][11]; t_2[3][14] = (q_2[14]+q_2[15])/4 + (iter_1[14][3]+iter_1[14][0])/4; t_2[0][15] = t_2[2][12]; //face 16 (de 24) t_2[1][15] = t_2[3][14]; t_2[2][15] = t_2[2][10]; t_2[3][15] = (q_2[15]+q_2[18])/4 + (iter_1[15][3]+iter_1[15][0])/4; t_2[0][16] = (q_2[16]+q_2[22])/4 + (iter_1[16][0]+iter_1[16][1])/4; //face 17 (de 24) t_2[1][16] = (q_2[16]+q_2[17])/4 + (iter_1[16][1]+iter_1[16][2])/4; t_2[2][16] = (q_2[16]+q_2[19])/4 + (iter_1[16][2]+iter_1[16][3])/4; t_2[3][16] = t_2[1][1]; t_2[0][17] = (q_2[17]+q_2[21])/4 + (iter_1[17][0]+iter_1[17][1])/4; //face 18 (de 24) t_2[1][17] = t_2[3][12]; t_2[2][17] = (q_2[17]+q_2[18])/4 + (iter_1[17][2]+iter_1[17][3])/4; t_2[3][17] = t_2[1][16]; t_2[0][18] = t_2[2][17]; //face 19 (de 24) t_2[1][18] = t_2[3][15]; t_2[2][18] = t_2[1][10]; t_2[3][18] = (q_2[18]+q_2[19])/4 + (iter_1[18][3]+iter_1[18][0])/4; t_2[0][19] = t_2[2][16]; //face 20 (de 24) t_2[1][19] = t_2[3][18]; t_2[2][19] = t_2[1][9]; t_2[3][19] = t_2[1][2]; t_2[0][20] = t_2[0][13]; //face 21 (de 24) t_2[1][20] = (q_2[20]+q_2[21])/4 + (iter_1[20][1]+iter_1[20][2])/4; t_2[2][20] = (q_2[20]+q_2[23])/4 + (iter_1[20][2]+iter_1[20][3])/4; t_2[3][20] = t_2[0][4]; t_2[0][21] = t_2[0][12]; //face 22 (de 24) t_2[1][21] = t_2[0][17]; t_2[2][21] = (q_2[21]+q_2[22])/4 + (iter_1[21][2]+iter_1[21][3])/4; t_2[3][21] = t_2[1][20]; t_2[0][22] = t_2[2][21]; //face 23 (de 24) t_2[1][22] = t_2[0][16]; t_2[2][22] = t_2[0][1]; t_2[3][22] = (q_2[22]+q_2[23])/4 + (iter_1[22][3]+iter_1[22][0])/4; t_2[0][23] = t_2[2][20]; //face 24 (de 24) t_2[1][23] = t_2[3][22]; t_2[2][23] = t_2[0][0]; t_2[3][23] = t_2[0][5]; //pontos de vértice = Q/4+2R/n+S(n-3)/n v_2[0][0] = iter_1[0][0]/4 + (q_2[0]+q_2[5] +q_2[23])/12 + ((iter_1[0][0]+iter_1[0][1])/2+(iter_1[0][0]+iter_1[5][2])/2 +(iter_1[0][0]+iter_1[23][0])/2)/6; //face1 v_2[1][0] = iter_1[0][1]/4 + (q_2[0]+q_2[23]+q_2[22]+q_2[1])/16 + ((iter_1[0][1]+iter_1[0][2])/2+(iter_1[0][1]+iter_1[23][3])/2+(iter_1[0][1]+iter_1[22][0])/2+(iter_1[0][1]+iter_1[1][1])/2)/8; v_2[2][0] = iter_1[0][2]/4 + (q_2[0]+q_2[1] +q_2[2]+q_2[3])/16 + ((iter_1[0][2]+iter_1[0][3])/2+(iter_1[0][2]+iter_1[1][0])/2 +(iter_1[0][2]+iter_1[2][1])/2+(iter_1[0][2]+iter_1[3][2])/2)/8; v_2[3][0] = iter_1[0][3]/4 + (q_2[0]+q_2[3] +q_2[6]+q_2[5])/16 + ((iter_1[0][3]+iter_1[0][0])/2+(iter_1[0][3]+iter_1[3][1])/2 +(iter_1[0][3]+iter_1[6][2])/2+(iter_1[0][3]+iter_1[5][3])/2)/8; v_2[0][1] = v_2[1][0]; v_2[1][1] = iter_1[1][1]/4 + (q_2[1]+q_2[22]+q_2[16])/12 + ((iter_1[1][1]+iter_1[1][2])/2+(iter_1[1][1]+iter_1[22][3])/2+(iter_1[1][1]+iter_1[16][1])/2)/6; v_2[2][1] = iter_1[1][2]/4 + (q_2[1]+q_2[16]+q_2[19]+q_2[2])/16 + ((iter_1[1][2]+iter_1[1][3])/2+(iter_1[1][2]+iter_1[16][0])/2+(iter_1[2][1]+iter_1[19][1])/2+(iter_1[2][1]+iter_1[2][2])/2)/8; v_2[3][1] = v_2[2][0]; v_2[0][2] = v_2[3][1]; //face3 v_2[1][2] = v_2[2][1]; v_2[2][2] = iter_1[2][2]/4 + (q_2[2]+q_2[19]+q_2[9])/12 + ((iter_1[2][2]+iter_1[2][3])/2+(iter_1[2][2]+iter_1[19][0])/2+(iter_1[2][2]+iter_1[9][2])/2)/6; v_2[3][2] = iter_1[2][3]/4 + (q_2[2]+q_2[9]+q_2[8]+q_2[3])/16 + ((iter_1[2][3]+iter_1[2][0])/2+(iter_1[2][3]+iter_1[9][1])/2+(iter_1[2][3]+iter_1[8][2])/2+(iter_1[2][3]+iter_1[3][3])/2)/8; v_2[0][3] = v_2[3][0]; //face4 v_2[1][3] = v_2[3][1]; v_2[2][3] = v_2[3][2]; v_2[3][3] = iter_1[3][3]/4 + (q_2[3]+q_2[8]+q_2[6])/12 + ((iter_1[3][3]+iter_1[3][0])/2+(iter_1[3][3]+iter_1[8][1])/2+(iter_1[3][3]+iter_1[6][3])/2)/6; v_2[0][4] = iter_1[4][0]/4 + (q_2[4]+q_2[13] +q_2[20])/12 + ((iter_1[4][0]+iter_1[4][1])/2+(iter_1[4][0]+iter_1[13][2])/2 +(iter_1[4][0]+iter_1[20][1])/2)/6; //face5 v_2[1][4] = iter_1[4][1]/4 + (q_2[4]+q_2[20] +q_2[23]+q_2[5])/16 + ((iter_1[4][1]+iter_1[4][2])/2+(iter_1[4][1]+iter_1[20][0])/2+(iter_1[4][1]+iter_1[23][1])/2+(iter_1[4][1]+iter_1[5][1])/2)/8; v_2[2][4] = iter_1[4][2]/4 + (q_2[4]+q_2[5] +q_2[6] +q_2[7])/16 + ((iter_1[4][2]+iter_1[4][3])/2+(iter_1[4][2]+iter_1[5][0])/2 +(iter_1[4][2]+iter_1[6][1])/2+(iter_1[4][2]+iter_1[7][2])/2)/8; v_2[3][4] = iter_1[4][3]/4 + (q_2[4]+q_2[7] +q_2[14]+q_2[13])/16 + ((iter_1[4][3]+iter_1[4][0])/2+(iter_1[4][3]+iter_1[7][1])/2 +(iter_1[4][3]+iter_1[14][2])/2+(iter_1[4][3]+iter_1[13][3])/2)/8; v_2[0][5] = v_2[1][4]; //face6 v_2[1][5] = v_2[0][0]; v_2[2][5] = v_2[3][0]; v_2[3][5] = v_2[2][4]; v_2[0][6] = v_2[3][5]; //face7 v_2[1][6] = v_2[2][5]; v_2[2][6] = v_2[3][3]; v_2[3][6] = iter_1[6][3]/4 + (q_2[6]+q_2[8]+q_2[11]+q_2[7])/16 + ((iter_1[6][3]+iter_1[6][0])/2+(iter_1[6][3]+iter_1[8][0])/2+(iter_1[6][3]+iter_1[11][1])/2+(iter_1[6][3]+iter_1[7][3])/2)/8; v_2[0][7] = v_2[3][4]; //face8 v_2[1][7] = v_2[3][5]; v_2[2][7] = v_2[3][6]; v_2[3][7] = iter_1[7][3]/4 + (q_2[7]+q_2[11]+q_2[14])/12 + ((iter_1[7][3]+iter_1[7][0])/2+(iter_1[7][3]+iter_1[14][3])/2+(iter_1[7][3]+iter_1[11][0])/2)/6; v_2[0][8] = v_2[3][3]; //face9 v_2[1][8] = v_2[2][3]; v_2[2][8] = iter_1[8][2]/4 + (q_2[8]+q_2[9] +q_2[10] +q_2[11])/16 + ((iter_1[8][2]+iter_1[8][3])/2+(iter_1[8][2]+iter_1[9][0])/2 +(iter_1[8][2]+iter_1[10][1])/2+(iter_1[8][2]+iter_1[11][2])/2)/8; v_2[3][8] = v_2[3][6]; v_2[0][9] = v_2[1][8]; //face10 v_2[1][9] = v_2[2][2]; v_2[2][9] = iter_1[9][2]/4 + (q_2[9]+q_2[19]+q_2[18]+q_2[10])/16 + ((iter_1[9][2]+iter_1[9][3])/2+(iter_1[9][2]+iter_1[19][3])/2+(iter_1[9][2]+iter_1[18][0])/2+(iter_1[9][2]+iter_1[10][2])/2)/8; v_2[3][9] = v_2[2][8]; v_2[0][10] = v_2[3][9]; //face11 v_2[1][10] = v_2[2][9]; v_2[2][10] = iter_1[10][2]/4 + (q_2[10]+q_2[18]+q_2[15])/12 + ((iter_1[10][2]+iter_1[10][3])/2+(iter_1[10][2]+iter_1[18][3])/2+(iter_1[10][2]+iter_1[15][0])/2)/6; v_2[3][10] = iter_1[10][3]/4 + (q_2[10]+q_2[15]+q_2[14]+q_2[11])/16 + ((iter_1[10][3]+iter_1[10][0])/2+(iter_1[10][3]+iter_1[15][3])/2+(iter_1[10][3]+iter_1[14][0])/2+(iter_1[10][3]+iter_1[11][3])/2)/8; v_2[0][11] = v_2[3][8]; //face12 v_2[1][11] = v_2[3][9]; v_2[2][11] = v_2[3][10]; v_2[3][11] = v_2[3][7]; v_2[0][12] = iter_1[12][0]/4 + (q_2[12]+q_2[17]+q_2[21])/12 + ((iter_1[12][0]+iter_1[12][1])/2+(iter_1[12][0]+iter_1[17][2])/2 +(iter_1[12][0]+iter_1[21][2])/2)/6; //face13 v_2[1][12] = iter_1[12][1]/4 + (q_2[12]+q_2[21]+q_2[20]+q_2[13])/16 + ((iter_1[12][1]+iter_1[12][2])/2+(iter_1[12][1]+iter_1[21][1])/2+(iter_1[12][1]+iter_1[20][2])/2+(iter_1[12][1]+iter_1[13][1])/2)/8; v_2[2][12] = iter_1[12][2]/4 + (q_2[12]+q_2[13]+q_2[14]+q_2[15])/16 + ((iter_1[12][2]+iter_1[12][3])/2+(iter_1[12][2]+iter_1[13][0])/2 +(iter_1[12][2]+iter_1[14][1])/2+(iter_1[12][2]+iter_1[15][2])/2)/8; v_2[3][12] = iter_1[12][3]/4 + (q_2[12]+q_2[15]+q_2[18]+q_2[17])/16 + ((iter_1[12][3]+iter_1[12][0])/2+(iter_1[12][3]+iter_1[15][1])/2 +(iter_1[12][3]+iter_1[18][2])/2+(iter_1[12][3]+iter_1[17][3])/2)/8; v_2[0][13] = v_2[1][12]; //face14 v_2[1][13] = v_2[0][4]; v_2[2][13] = v_2[3][4]; v_2[3][13] = v_2[2][12]; v_2[0][14] = v_2[3][13]; //face15 v_2[1][14] = v_2[2][13]; v_2[2][14] = v_2[3][7]; v_2[3][14] = v_2[3][10]; v_2[0][15] = v_2[3][12]; //face16 v_2[1][15] = v_2[3][13]; v_2[2][15] = v_2[3][14]; v_2[3][15] = v_2[2][10]; v_2[0][16] = v_2[1][1]; //face17 v_2[1][16] = iter_1[16][1]/4 + (q_2[16]+q_2[22]+q_2[21]+q_2[17])/16 + ((iter_1[16][1]+iter_1[16][2])/2+(iter_1[16][1]+iter_1[22][2])/2+(iter_1[16][1]+iter_1[21][3])/2+(iter_1[16][1]+iter_1[17][1])/2)/8; v_2[2][16] = iter_1[16][2]/4 + (q_2[16]+q_2[17]+q_2[18]+q_2[19])/16 + ((iter_1[16][2]+iter_1[16][3])/2+(iter_1[16][2]+iter_1[17][0])/2 +(iter_1[16][2]+iter_1[18][1])/2+(iter_1[16][2]+iter_1[19][2])/2)/8; v_2[3][16] = v_2[2][1]; v_2[0][17] = v_2[1][16]; //face18 v_2[1][17] = v_2[0][12]; v_2[2][17] = v_2[3][12]; v_2[3][17] = v_2[2][16]; v_2[0][18] = v_2[3][17]; //face19 v_2[1][18] = v_2[2][17]; v_2[2][18] = v_2[3][15]; v_2[3][18] = v_2[2][9]; v_2[0][19] = v_2[3][16]; //face20 v_2[1][19] = v_2[3][17]; v_2[2][19] = v_2[3][18]; v_2[3][19] = v_2[2][2]; v_2[0][20] = v_2[1][13]; //face20 v_2[1][20] = v_2[0][13]; v_2[2][20] = iter_1[20][2]/4 + (q_2[20]+q_2[21]+q_2[22]+q_2[23])/16 + ((iter_1[20][2]+iter_1[20][3])/2+(iter_1[20][2]+iter_1[21][0])/2 +(iter_1[20][2]+iter_1[22][1])/2+(iter_1[20][2]+iter_1[23][2])/2)/8; v_2[3][20] = v_2[1][4]; v_2[0][21] = v_2[1][20]; //face21 v_2[1][21] = v_2[1][17]; v_2[2][21] = v_2[0][17]; v_2[3][21] = v_2[2][20]; v_2[0][22] = v_2[3][21]; //face22 v_2[1][22] = v_2[2][21]; v_2[2][22] = v_2[0][16]; v_2[3][22] = v_2[0][1]; v_2[0][23] = v_2[3][20]; //face23 v_2[1][23] = v_2[3][21]; v_2[2][23] = v_2[3][22]; v_2[3][23] = v_2[0][0]; return; } void montaVetor2(void) { int a=0; for (int j = 0; j < 96; j++) { iter_2[j][0] = v_2[0][a]; iter_2[j][1] = t_2[0][a]; iter_2[j][2] = q_2[a]; iter_2[j][3] = t_2[3][a]; j++; iter_2[j][0] = t_2[0][a]; iter_2[j][1] = v_2[1][a]; iter_2[j][2] = t_2[1][a]; iter_2[j][3] = q_2[a]; j++; iter_2[j][0] = q_2[a]; iter_2[j][1] = t_2[1][a]; iter_2[j][2] = v_2[2][a]; iter_2[j][3] = t_2[2][a]; j++; iter_2[j][0] = t_2[3][a]; iter_2[j][1] = q_2[a]; iter_2[j][2] = t_2[2][a]; iter_2[j][3] = v_2[3][a]; a++; } return; } void iteracao3(void) { //pontos nas faces for (int j = 0; j <96; j++) { q_3[j] = (iter_2[j][0] + iter_2[j][1] + iter_2[j][2] + iter_2[j][3])/4; } //pontos nas linhas de intersecção for (int j = 0; j <96; j++) { t_3[0][j] = (q_3[j]+q_3[aux_t3[j][0]])/4 + (iter_2[j][0]+iter_2[j][1])/4; t_3[1][j] = (q_3[j]+q_3[aux_t3[j][1]])/4 + (iter_2[j][1]+iter_2[j][2])/4; t_3[2][j] = (q_3[j]+q_3[aux_t3[j][2]])/4 + (iter_2[j][2]+iter_2[j][3])/4; t_3[3][j] = (q_3[j]+q_3[aux_t3[j][3]])/4 + (iter_2[j][3]+iter_2[j][0])/4; } //pontos de vértice = Q/4+2R/n+S(n-3)/n for (int j = 0; j <96; j++)//face j { if (aux_v3[j][0][3] == -1) v_3[0][j] = iter_2[j][0]/4 + (q_3[j]+q_3[aux_v3[j][0][1]] +q_3[aux_v3[j][0][2]])/12 + ((iter_2[j][0]+iter_2[j][1])/2+(iter_2[j][0]+iter_2[aux_v3[j][0][1]][2])/2 +(iter_2[j][0]+iter_2[aux_v3[j][0][2]][0])/2)/6; else v_3[0][j] = iter_2[j][0]/4 + (q_3[j]+q_3[aux_v3[j][0][1]] +q_3[aux_v3[j][0][2]]+q_3[aux_v3[j][0][3]])/16 + ((iter_2[j][0]+iter_2[j][1])/2+(iter_2[j][0]+iter_2[aux_v3[j][0][1]][2])/2 +(iter_2[j][0]+iter_2[aux_v3[j][0][2]][3])/2 +(iter_2[j][0]+iter_2[aux_v3[j][0][3]][0])/2)/8; if (aux_v3[j][1][3] == -1) v_3[1][j] = iter_2[j][1]/4 + (q_3[j]+q_3[aux_v3[j][1][1]] +q_3[aux_v3[j][1][2]])/12 + ((iter_2[j][1]+iter_2[j][2])/2+(iter_2[j][1]+iter_2[aux_v3[j][1][1]][3])/2 +(iter_2[j][1]+iter_2[aux_v3[j][1][2]][1])/2)/6; else v_3[1][j] = iter_2[j][1]/4 + (q_3[j]+q_3[aux_v3[j][1][1]] +q_3[aux_v3[j][1][2]]+q_3[aux_v3[j][1][3]])/16 + ((iter_2[j][1]+iter_2[j][2])/2+(iter_2[j][1]+iter_2[aux_v3[j][1][1]][3])/2 +(iter_2[j][1]+iter_2[aux_v3[j][1][2]][0])/2+(iter_2[j][1]+iter_2[aux_v3[j][1][3]][1])/2)/8; if (aux_v3[j][2][3] == -1) v_3[2][j] = iter_2[j][2]/4 + (q_3[j]+q_3[aux_v3[j][2][1]] +q_3[aux_v3[j][2][2]])/12 + ((iter_2[j][2]+iter_2[j][3])/2+(iter_2[j][2]+iter_2[aux_v3[j][2][1]][0])/2 +(iter_2[j][2]+iter_2[aux_v3[j][2][2]][1])/2)/6; else v_3[2][j] = iter_2[j][2]/4 + (q_3[j]+q_3[aux_v3[j][2][1]] +q_3[aux_v3[j][2][2]]+q_3[aux_v3[j][2][3]])/16 + ((iter_2[j][2]+iter_2[j][3])/2+(iter_2[j][2]+iter_2[aux_v3[j][2][1]][0])/2 +(iter_2[j][2]+iter_2[aux_v3[j][2][2]][1])/2+(iter_2[j][2]+iter_2[aux_v3[j][2][3]][2])/2)/8; if (aux_v3[j][3][3] == -1) v_3[3][j] = iter_2[j][3]/4 + (q_3[j]+q_3[aux_v3[j][3][1]] +q_3[aux_v3[j][3][2]])/12 + ((iter_2[j][3]+iter_2[j][0])/2+(iter_2[j][3]+iter_2[aux_v3[j][3][1]][1])/2 +(iter_2[j][3]+iter_2[aux_v3[j][3][2]][2])/2)/6; else v_3[3][j] = iter_2[j][3]/4 + (q_3[j]+q_3[aux_v3[j][3][1]] +q_3[aux_v3[j][3][2]]+q_3[aux_v3[j][3][3]])/16 + ((iter_2[j][3]+iter_2[j][0])/2+(iter_2[j][3]+iter_2[aux_v3[j][3][1]][1])/2 +(iter_2[j][3]+iter_2[aux_v3[j][3][2]][2])/2+(iter_2[j][3]+iter_2[aux_v3[j][3][3]][3])/2)/8; } v_3[3][95] = v_3[1][21] = v_3[0][0]; v_3[0][64] = v_3[2][90] = v_3[1][5]; v_3[1][37] = v_3[3][79] = v_3[2][10]; v_3[2][26] = v_3[0][32] = v_3[3][15]; v_3[3][31] = v_3[2][58] = v_3[3][47]; v_3[1][53] = v_3[0][80] = v_3[0][16]; v_3[2][42] = v_3[3][63] = v_3[2][74]; v_3[0][48] = v_3[1][85] = v_3[1][69]; //tratamento das (grandes) faces que se tocam v_3[3][44] = iter_2[44][3]/4 + (q_3[44]+q_3[47] +q_3[31]+q_3[30])/16 + ((iter_2[44][3]+iter_2[44][0])/2+(iter_2[44][3]+iter_2[47][1])/2 +(iter_2[44][3]+iter_2[31][1])/2+(iter_2[44][3]+iter_2[30][0])/2)/8; v_3[3][35] = iter_2[35][3]/4 + (q_3[35]+q_3[44] +q_3[30]+q_3[27])/16 + ((iter_2[35][3]+iter_2[35][0])/2+(iter_2[35][3]+iter_2[44][1])/2 +(iter_2[35][3]+iter_2[30][1])/2+(iter_2[35][3]+iter_2[27][0])/2)/8; v_3[3][32] = iter_2[32][3]/4 + (q_3[32]+q_3[35] +q_3[27]+q_3[26])/16 + ((iter_2[32][3]+iter_2[32][0])/2+(iter_2[32][3]+iter_2[35][1])/2 +(iter_2[32][3]+iter_2[27][1])/2+(iter_2[32][3]+iter_2[26][0])/2)/8; v_3[2][31] = v_3[3][30] = v_3[0][47] = v_3[3][44]; v_3[2][30] = v_3[3][27] = v_3[0][44] = v_3[3][35]; v_3[2][27] = v_3[3][26] = v_3[0][35] = v_3[3][32]; v_3[2][37] = iter_2[37][2]/4 + (q_3[37]+q_3[38] +q_3[78]+q_3[79])/16 + ((iter_2[37][2]+iter_2[37][3])/2+(iter_2[37][2]+iter_2[79][0])/2 +(iter_2[37][2]+iter_2[78][0])/2+(iter_2[37][2]+iter_2[38][2])/2)/8; v_3[2][38] = iter_2[38][2]/4 + (q_3[38]+q_3[41] +q_3[75]+q_3[78])/16 + ((iter_2[38][2]+iter_2[38][3])/2+(iter_2[38][2]+iter_2[78][0])/2 +(iter_2[38][2]+iter_2[75][0])/2+(iter_2[38][2]+iter_2[41][2])/2)/8; v_3[2][41] = iter_2[41][2]/4 + (q_3[41]+q_3[42] +q_3[74]+q_3[75])/16 + ((iter_2[41][2]+iter_2[41][3])/2+(iter_2[41][2]+iter_2[75][0])/2 +(iter_2[41][2]+iter_2[74][0])/2+(iter_2[41][2]+iter_2[42][2])/2)/8; v_3[2][79] = v_3[3][78] = v_3[1][38] = v_3[2][37]; v_3[2][78] = v_3[3][75] = v_3[1][41] = v_3[2][38]; v_3[2][75] = v_3[3][74] = v_3[1][42] = v_3[2][41]; v_3[2][43] = iter_2[43][2]/4 + (q_3[43]+q_3[42] +q_3[62]+q_3[63])/16 + ((iter_2[43][2]+iter_2[43][3])/2+(iter_2[43][2]+iter_2[42][0])/2 +(iter_2[43][2]+iter_2[63][3])/2+(iter_2[43][2]+iter_2[62][0])/2)/8; v_3[2][46] = iter_2[46][2]/4 + (q_3[46]+q_3[43] +q_3[59]+q_3[62])/16 + ((iter_2[46][2]+iter_2[46][3])/2+(iter_2[46][2]+iter_2[43][0])/2 +(iter_2[46][2]+iter_2[62][3])/2+(iter_2[46][2]+iter_2[59][0])/2)/8; v_3[2][47] = iter_2[47][2]/4 + (q_3[47]+q_3[46] +q_3[58]+q_3[59])/16 + ((iter_2[47][2]+iter_2[47][3])/2+(iter_2[47][2]+iter_2[46][0])/2 +(iter_2[47][2]+iter_2[59][3])/2+(iter_2[47][2]+iter_2[58][0])/2)/8; v_3[2][63] = v_3[3][62] = v_3[3][42] = v_3[2][43]; v_3[2][62] = v_3[3][59] = v_3[3][43] = v_3[2][46]; v_3[2][59] = v_3[3][58] = v_3[3][46] = v_3[2][47]; v_3[0][83] = iter_2[83][0]/4 + (q_3[83]+q_3[80] +q_3[17]+q_3[16])/16 + ((iter_2[83][0]+iter_2[83][1])/2+(iter_2[83][0]+iter_2[80][0])/2 +(iter_2[83][0]+iter_2[16][2])/2 +(iter_2[83][0]+iter_2[17][1])/2)/8; v_3[0][92] = iter_2[92][0]/4 + (q_3[92]+q_3[83] +q_3[20]+q_3[17])/16 + ((iter_2[92][0]+iter_2[92][1])/2+(iter_2[92][0]+iter_2[83][0])/2 +(iter_2[92][0]+iter_2[17][2])/2 +(iter_2[92][0]+iter_2[20][1])/2)/8; v_3[0][95] = iter_2[95][0]/4 + (q_3[95]+q_3[92] +q_3[21]+q_3[20])/16 + ((iter_2[95][0]+iter_2[95][1])/2+(iter_2[95][0]+iter_2[92][0])/2 +(iter_2[95][0]+iter_2[20][2])/2 +(iter_2[95][0]+iter_2[21][1])/2)/8; v_3[1][16] = v_3[0][17] = v_3[3][80] = v_3[0][83]; v_3[1][17] = v_3[0][20] = v_3[3][83] = v_3[0][92]; v_3[1][20] = v_3[0][21] = v_3[3][92] = v_3[0][95]; v_3[2][89] = iter_2[89][2]/4 + (q_3[89]+q_3[90] +q_3[65]+q_3[64])/16 + ((iter_2[89][2]+iter_2[89][3])/2+(iter_2[89][2]+iter_2[90][2])/2 +(iter_2[89][2]+iter_2[64][2])/2+(iter_2[89][2]+iter_2[65][1])/2)/8; v_3[2][86] = iter_2[86][2]/4 + (q_3[86]+q_3[89] +q_3[68]+q_3[65])/16 + ((iter_2[86][2]+iter_2[86][3])/2+(iter_2[86][2]+iter_2[89][2])/2 +(iter_2[86][2]+iter_2[65][2])/2+(iter_2[86][2]+iter_2[68][1])/2)/8; v_3[2][85] = iter_2[85][2]/4 + (q_3[85]+q_3[86] +q_3[69]+q_3[68])/16 + ((iter_2[85][2]+iter_2[85][3])/2+(iter_2[85][2]+iter_2[86][2])/2 +(iter_2[85][2]+iter_2[68][2])/2+(iter_2[85][2]+iter_2[69][1])/2)/8; v_3[1][64] = v_3[0][65] = v_3[1][90] = v_3[2][89]; v_3[1][65] = v_3[0][68] = v_3[1][89] = v_3[2][86]; v_3[1][68] = v_3[0][69] = v_3[1][86] = v_3[2][85]; v_3[1][52] = iter_2[52][1]/4 + (q_3[52]+q_3[53] +q_3[81]+q_3[80])/16 + ((iter_2[52][1]+iter_2[52][2])/2+(iter_2[52][1]+iter_2[53][1])/2 +(iter_2[52][1]+iter_2[81][1])/2+(iter_2[52][1]+iter_2[80][2])/2)/8; v_3[1][49] = iter_2[49][1]/4 + (q_3[49]+q_3[52] +q_3[84]+q_3[81])/16 + ((iter_2[49][1]+iter_2[49][2])/2+(iter_2[49][1]+iter_2[52][1])/2 +(iter_2[49][1]+iter_2[84][1])/2+(iter_2[49][1]+iter_2[81][2])/2)/8; v_3[1][48] = iter_2[48][1]/4 + (q_3[48]+q_3[49] +q_3[85]+q_3[84])/16 + ((iter_2[48][1]+iter_2[48][2])/2+(iter_2[48][1]+iter_2[49][1])/2 +(iter_2[48][1]+iter_2[85][1])/2+(iter_2[48][1]+iter_2[84][2])/2)/8; v_3[1][80] = v_3[0][81] = v_3[0][53] = v_3[1][52]; v_3[1][81] = v_3[0][84] = v_3[0][52] = v_3[1][49]; v_3[1][84] = v_3[0][85] = v_3[0][49] = v_3[1][48]; return; } void tetraedroIter1(void) { for (int c = 0; c < 4; c++) { ptosTet[c][0].x = te[c][0][0]; ptosTet[c][0].y = te[c][0][1];ptosTet[c][0].z = te[c][0][2]; ptosTet[c][1].x = te[c][1][0]; ptosTet[c][1].y = te[c][1][1];ptosTet[c][1].z = te[c][1][2]; ptosTet[c][2].x = te[c][2][0]; ptosTet[c][2].y = te[c][2][1];ptosTet[c][2].z = te[c][2][2]; } for (int c = 0; c < 4; c++) { qt[c] = (ptosTet[c][0]+ptosTet[c][1]+ptosTet[c][2])/3; } e[0][0] = (qt[0] + qt[3])/4 + (ptosTet[0][0] + ptosTet[0][1])/4; e[1][0] = (qt[0] + qt[1])/4 + (ptosTet[0][1] + ptosTet[0][2])/4; e[2][0] = (qt[0] + qt[2])/4 + (ptosTet[0][2] + ptosTet[0][0])/4; e[0][1] = (qt[1] + qt[3])/4 + (ptosTet[1][0] + ptosTet[1][1])/4; e[1][1] = (qt[1] + qt[2])/4 + (ptosTet[1][1] + ptosTet[1][2])/4; e[2][1] = (qt[1] + qt[0])/4 + (ptosTet[1][2] + ptosTet[1][0])/4; e[0][2] = (qt[2] + qt[0])/4 + (ptosTet[2][0] + ptosTet[2][1])/4; e[1][2] = (qt[2] + qt[1])/4 + (ptosTet[2][1] + ptosTet[2][2])/4; e[2][2] = (qt[2] + qt[3])/4 + (ptosTet[2][2] + ptosTet[2][0])/4; e[0][3] = (qt[3] + qt[2])/4 + (ptosTet[3][0] + ptosTet[3][1])/4; e[1][3] = (qt[3] + qt[1])/4 + (ptosTet[3][1] + ptosTet[3][2])/4; e[2][3] = (qt[3] + qt[0])/4 + (ptosTet[3][2] + ptosTet[3][0])/4; ve[0][0] = ptosTet[0][0]/4 + (qt[0]+qt[3]+qt[2])/12 + ((ptosTet[0][0] + ptosTet[0][1])/2 +(ptosTet[0][0] + ptosTet[2][1])/2+(ptosTet[0][0] + ptosTet[3][1])/2)/6; ve[1][0] = ptosTet[0][1]/4 + (qt[0]+qt[3]+qt[1])/12 + ((ptosTet[0][1] + ptosTet[0][2])/2 +(ptosTet[0][1] + ptosTet[1][1])/2+(ptosTet[0][1] + ptosTet[3][0])/2)/6; ve[2][0] = ptosTet[0][2]/4 + (qt[0]+qt[1]+qt[2])/12 + ((ptosTet[0][2] + ptosTet[0][0])/2 +(ptosTet[0][2] + ptosTet[2][2])/2+(ptosTet[0][2] + ptosTet[1][0])/2)/6; ve[0][1] = ve[1][0]; ve[1][1] = ptosTet[1][1]/4 + (qt[1]+qt[3]+qt[2])/12 + ((ptosTet[1][1] + ptosTet[1][2])/2 +(ptosTet[1][1] + ptosTet[3][2])/2+(ptosTet[1][1] + ptosTet[2][0])/2)/6; ve[2][1] = ve[2][0]; ve[0][2] = ve[0][0]; ve[1][2] = ve[2][0]; ve[2][2] = ve[1][1]; ve[0][3] = ve[0][2]; ve[1][3] = ve[2][2]; ve[2][3] = ve[0][1]; } void tetraedroIter2(void) { //pontos nas faces for (int j = 0; j <12; j++) { qt_2[j] = (iterTe_1[j][0] + iterTe_1[j][1] + iterTe_1[j][2] + iterTe_1[j][3])/4; } //pontos nas linhas de intersecção e_2[0][0] = (qt_2[0]+qt_2[9])/4 + (iterTe_1[0][0]+iterTe_1[0][1])/4; //face 1 (de 12) e_2[1][0] = (qt_2[0]+qt_2[1])/4 + (iterTe_1[0][1]+iterTe_1[0][2])/4; e_2[2][0] = (qt_2[0]+qt_2[2])/4 + (iterTe_1[0][2]+iterTe_1[0][3])/4; e_2[3][0] = (qt_2[0]+qt_2[6])/4 + (iterTe_1[0][3]+iterTe_1[0][0])/4; e_2[0][1] = (qt_2[1]+qt_2[11])/4 + (iterTe_1[1][0]+iterTe_1[1][1])/4; //face 2 (de 12) e_2[1][1] = (qt_2[1]+qt_2[3])/4 + (iterTe_1[1][1]+iterTe_1[1][2])/4; e_2[2][1] = (qt_2[1]+qt_2[2])/4 + (iterTe_1[1][2]+iterTe_1[1][3])/4; e_2[3][1] = (qt_2[1]+qt_2[0])/4 + (iterTe_1[1][3]+iterTe_1[1][0])/4; e_2[0][2] = (qt_2[2]+qt_2[1])/4 + (iterTe_1[2][0]+iterTe_1[2][1])/4; //face 3 (de 12) e_2[1][2] = (qt_2[2]+qt_2[5])/4 + (iterTe_1[2][1]+iterTe_1[2][2])/4; e_2[2][2] = (qt_2[2]+qt_2[7])/4 + (iterTe_1[2][2]+iterTe_1[2][3])/4; e_2[3][2] = (qt_2[2]+qt_2[0])/4 + (iterTe_1[2][3]+iterTe_1[2][0])/4; e_2[0][3] = (qt_2[3]+qt_2[11])/4 + (iterTe_1[3][0]+iterTe_1[3][1])/4; //face 4 (de 12) e_2[1][3] = (qt_2[3]+qt_2[4])/4 + (iterTe_1[3][1]+iterTe_1[3][2])/4; e_2[2][3] = (qt_2[3]+qt_2[5])/4 + (iterTe_1[3][2]+iterTe_1[3][3])/4; e_2[3][3] = (qt_2[3]+qt_2[1])/4 + (iterTe_1[3][3]+iterTe_1[3][0])/4; e_2[0][4] = (qt_2[4]+qt_2[10])/4 + (iterTe_1[4][0]+iterTe_1[4][1])/4; //face 5 (de 12) e_2[1][4] = (qt_2[4]+qt_2[8])/4 + (iterTe_1[4][1]+iterTe_1[4][2])/4; e_2[2][4] = (qt_2[4]+qt_2[5])/4 + (iterTe_1[4][2]+iterTe_1[4][3])/4; e_2[3][4] = (qt_2[4]+qt_2[3])/4 + (iterTe_1[4][3]+iterTe_1[4][0])/4; e_2[0][5] = (qt_2[5]+qt_2[4])/4 + (iterTe_1[5][0]+iterTe_1[5][1])/4; //face 6 (de 12) e_2[1][5] = (qt_2[5]+qt_2[7])/4 + (iterTe_1[5][1]+iterTe_1[5][2])/4; e_2[2][5] = (qt_2[5]+qt_2[2])/4 + (iterTe_1[5][2]+iterTe_1[5][3])/4; e_2[3][5] = (qt_2[5]+qt_2[3])/4 + (iterTe_1[5][3]+iterTe_1[5][0])/4; e_2[0][6] = (qt_2[6]+qt_2[0])/4 + (iterTe_1[6][0]+iterTe_1[6][1])/4; //face 7 (de 12) e_2[1][6] = (qt_2[6]+qt_2[7])/4 + (iterTe_1[6][1]+iterTe_1[6][2])/4; e_2[2][6] = (qt_2[6]+qt_2[8])/4 + (iterTe_1[6][2]+iterTe_1[6][3])/4; e_2[3][6] = (qt_2[6]+qt_2[9])/4 + (iterTe_1[6][3]+iterTe_1[6][0])/4; e_2[0][7] = (qt_2[7]+qt_2[2])/4 + (iterTe_1[7][0]+iterTe_1[7][1])/4; //face 8 (de 12) e_2[1][7] = (qt_2[7]+qt_2[5])/4 + (iterTe_1[7][1]+iterTe_1[7][2])/4; e_2[2][7] = (qt_2[7]+qt_2[8])/4 + (iterTe_1[7][2]+iterTe_1[7][3])/4; e_2[3][7] = (qt_2[7]+qt_2[6])/4 + (iterTe_1[7][3]+iterTe_1[7][0])/4; e_2[0][8] = (qt_2[8]+qt_2[7])/4 + (iterTe_1[8][0]+iterTe_1[8][1])/4; //face 9 (de 12) e_2[1][8] = (qt_2[8]+qt_2[4])/4 + (iterTe_1[8][1]+iterTe_1[8][2])/4; e_2[2][8] = (qt_2[8]+qt_2[10])/4 + (iterTe_1[8][2]+iterTe_1[8][3])/4; e_2[3][8] = (qt_2[8]+qt_2[6])/4 + (iterTe_1[8][3]+iterTe_1[8][0])/4; e_2[0][9] = (qt_2[9]+qt_2[6])/4 + (iterTe_1[9][0]+iterTe_1[9][1])/4; //face 10 (de 12) e_2[1][9] = (qt_2[9]+qt_2[10])/4 + (iterTe_1[9][1]+iterTe_1[9][2])/4; e_2[2][9] = (qt_2[9]+qt_2[11])/4 + (iterTe_1[9][2]+iterTe_1[9][3])/4; e_2[3][9] = (qt_2[9]+qt_2[0])/4 + (iterTe_1[9][3]+iterTe_1[9][0])/4; e_2[0][10] = (qt_2[10]+qt_2[8])/4 + (iterTe_1[10][0]+iterTe_1[10][1])/4; //face 11 (de 12) e_2[1][10] = (qt_2[10]+qt_2[4])/4 + (iterTe_1[10][1]+iterTe_1[10][2])/4; e_2[2][10] = (qt_2[10]+qt_2[11])/4 + (iterTe_1[10][2]+iterTe_1[10][3])/4; e_2[3][10] = (qt_2[10]+qt_2[9])/4 + (iterTe_1[10][3]+iterTe_1[10][0])/4; e_2[0][11] = (qt_2[11]+qt_2[10])/4 + (iterTe_1[11][0]+iterTe_1[11][1])/4; //face 12 (de 12) e_2[1][11] = (qt_2[11]+qt_2[3])/4 + (iterTe_1[11][1]+iterTe_1[11][2])/4; e_2[2][11] = (qt_2[11]+qt_2[1])/4 + (iterTe_1[11][2]+iterTe_1[11][3])/4; e_2[3][11] = (qt_2[11]+qt_2[9])/4 + (iterTe_1[11][3]+iterTe_1[11][0])/4; ve_2[0][0] = iterTe_1[0][0]/4 + (qt_2[0]+qt_2[6] +qt_2[9])/12 + ((iterTe_1[0][0]+iterTe_1[0][1])/2+(iterTe_1[0][0]+iterTe_1[6][1])/2 +(iterTe_1[0][0]+iterTe_1[9][1])/2)/6; //face1 ve_2[1][0] = iterTe_1[0][1]/4 + (qt_2[0]+qt_2[9]+qt_2[11]+qt_2[1])/16 + ((iterTe_1[0][1]+iterTe_1[0][2])/2+(iterTe_1[0][1]+iterTe_1[9][0])/2+(iterTe_1[0][1]+iterTe_1[11][0])/2+(iterTe_1[0][1]+iterTe_1[1][1])/2)/8; ve_2[2][0] = iterTe_1[0][2]/4 + (qt_2[0]+qt_2[1] +qt_2[2])/12 + ((iterTe_1[0][2]+iterTe_1[0][3])/2+(iterTe_1[0][2]+iterTe_1[1][0])/2 +(iterTe_1[0][2]+iterTe_1[2][1])/2)/6; ve_2[3][0] = iterTe_1[0][3]/4 + (qt_2[0]+qt_2[2] +qt_2[7]+qt_2[6])/16 + ((iterTe_1[0][3]+iterTe_1[0][0])/2+(iterTe_1[0][3]+iterTe_1[2][0])/2 +(iterTe_1[0][3]+iterTe_1[7][2])/2+(iterTe_1[0][3]+iterTe_1[6][2])/2)/8; ve_2[0][1] = ve_2[1][0]; //face2 ve_2[1][1] = iterTe_1[1][1]/4 + (qt_2[1]+qt_2[11]+qt_2[3])/12 + ((iterTe_1[1][1]+iterTe_1[1][2])/2+(iterTe_1[1][1]+iterTe_1[11][3])/2+(iterTe_1[1][1]+iterTe_1[3][1])/2)/6; ve_2[2][1] = iterTe_1[1][2]/4 + (qt_2[1]+qt_2[3]+qt_2[5]+qt_2[2])/16 + ((iterTe_1[1][2]+iterTe_1[1][3])/2+(iterTe_1[1][2]+iterTe_1[3][0])/2+(iterTe_1[1][2]+iterTe_1[5][0])/2+(iterTe_1[1][2]+iterTe_1[2][2])/2)/8; ve_2[3][1] = ve_2[2][0]; ve_2[0][2] = ve_2[3][1]; //face3 ve_2[1][2] = ve_2[2][1]; ve_2[2][2] = iterTe_1[2][2]/4 + (qt_2[2]+qt_2[5]+qt_2[7])/12 + ((iterTe_1[2][2]+iterTe_1[2][3])/2+(iterTe_1[2][2]+iterTe_1[5][3])/2+(iterTe_1[2][2]+iterTe_1[7][2])/2)/6; ve_2[3][2] = ve_2[3][0]; ve_2[0][3] = ve_2[1][1]; //face4 ve_2[1][3] = iterTe_1[3][1]/4 + (qt_2[3]+qt_2[11]+qt_2[10]+qt_2[5])/16 + ((iterTe_1[3][1]+iterTe_1[3][2])/2+(iterTe_1[3][1]+iterTe_1[10][1])/2+(iterTe_1[3][1]+iterTe_1[11][2])/2+(iterTe_1[3][1]+iterTe_1[4][1])/2)/8; ve_2[2][3] = iterTe_1[3][2]/4 + (qt_2[3]+qt_2[4] +qt_2[5])/12 + ((iterTe_1[3][2]+iterTe_1[3][3])/2+(iterTe_1[3][2]+iterTe_1[4][0])/2 +(iterTe_1[3][2]+iterTe_1[5][1])/2)/6; ve_2[3][3] = ve_2[2][1]; ve_2[0][4] = ve_2[1][3]; //face5 ve_2[1][4] = iterTe_1[4][1]/4 + (qt_2[4]+qt_2[10]+qt_2[8])/12 + ((iterTe_1[4][1]+iterTe_1[4][2])/2+(iterTe_1[4][1]+iterTe_1[10][2])/2+(iterTe_1[4][1]+iterTe_1[8][3])/2)/6; ve_2[2][4] = iterTe_1[4][2]/4 + (qt_2[4]+qt_2[5]+qt_2[7]+qt_2[8])/16 + ((iterTe_1[4][2]+iterTe_1[4][3])/2+(iterTe_1[4][2]+iterTe_1[5][2])/2+(iterTe_1[4][2]+iterTe_1[8][2])/2+(iterTe_1[4][2]+iterTe_1[7][1])/2)/8; ve_2[3][4] = ve_2[2][3]; ve_2[0][5] = ve_2[2][3]; //face6 ve_2[1][5] = ve_2[2][4]; ve_2[2][5] = ve_2[2][2]; ve_2[3][5] = ve_2[3][3]; ve_2[0][6] = ve_2[0][0]; //face7 ve_2[1][6] = ve_2[3][0]; ve_2[2][6] = iterTe_1[6][2]/4 + (qt_2[6]+qt_2[7] +qt_2[8])/12 + ((iterTe_1[6][2]+iterTe_1[6][3])/2+(iterTe_1[6][2]+iterTe_1[7][0])/2 +(iterTe_1[6][2]+iterTe_1[8][1])/2)/6; ve_2[3][6] = iterTe_1[6][3]/4 + (qt_2[6]+qt_2[8]+qt_2[9]+qt_2[10])/16 + ((iterTe_1[6][3]+iterTe_1[6][0])/2+(iterTe_1[6][3]+iterTe_1[8][0])/2+(iterTe_1[6][3]+iterTe_1[10][1])/2+(iterTe_1[6][3]+iterTe_1[9][2])/2)/8; ve_2[0][7] = ve_2[1][6]; //face8 ve_2[1][7] = ve_2[2][2]; ve_2[2][7] = ve_2[2][4]; ve_2[3][7] = ve_2[2][6]; ve_2[0][8] = ve_2[2][6]; //face9 ve_2[1][8] = ve_2[2][7]; ve_2[2][8] = ve_2[1][4]; ve_2[3][8] = ve_2[3][6]; ve_2[0][9] = ve_2[0][6]; //face10 ve_2[1][9] = ve_2[3][6]; ve_2[2][9] = iterTe_1[9][2]/4 + (qt_2[9]+qt_2[10] +qt_2[11])/12 + ((iterTe_1[9][2]+iterTe_1[9][3])/2+(iterTe_1[9][2]+iterTe_1[10][0])/2 +(iterTe_1[9][2]+iterTe_1[11][1])/2)/6; ve_2[3][9] = ve_2[1][0]; ve_2[0][10] = ve_2[1][9]; //face11 ve_2[1][10] = ve_2[2][8]; ve_2[2][10] = ve_2[0][4]; ve_2[3][10] = ve_2[2][9]; ve_2[0][11] = ve_2[2][9]; //face12 ve_2[1][11] = ve_2[2][10]; ve_2[2][11] = ve_2[0][3]; ve_2[3][11] = ve_2[3][9]; } void tetraedroIter3(void) { //pontos nas faces for (int j = 0; j <48; j++) { qt_3[j] = (iterTe_2[j][0] + iterTe_2[j][1] + iterTe_2[j][2] + iterTe_2[j][3])/4; } //pontos nas linhas de intersecção e_3[0][0] = (qt_3[0]+qt_3[36])/4 + (iterTe_2[0][0]+iterTe_2[0][1])/4; //face 1 (de 48) e_3[1][0] = (qt_3[0]+qt_3[1])/4 + (iterTe_2[0][1]+iterTe_2[0][2])/4; e_3[2][0] = (qt_3[0]+qt_3[3])/4 + (iterTe_2[0][2]+iterTe_2[0][3])/4; e_3[3][0] = (qt_3[0]+qt_3[24])/4 + (iterTe_2[0][3]+iterTe_2[0][0])/4; e_3[0][1] = (qt_3[1]+qt_3[39])/4 + (iterTe_2[1][0]+iterTe_2[1][1])/4; //face 2 (de 48) e_3[1][1] = (qt_3[1]+qt_3[4])/4 + (iterTe_2[1][1]+iterTe_2[1][2])/4; e_3[2][1] = (qt_3[1]+qt_3[2])/4 + (iterTe_2[1][2]+iterTe_2[1][3])/4; e_3[3][1] = (qt_3[1]+qt_3[0])/4 + (iterTe_2[1][3]+iterTe_2[1][0])/4; e_3[0][2] = (qt_3[2]+qt_3[1])/4 + (iterTe_2[2][0]+iterTe_2[2][1])/4; //face 3 (de 48) e_3[1][2] = (qt_3[2]+qt_3[7])/4 + (iterTe_2[2][1]+iterTe_2[2][2])/4; e_3[2][2] = (qt_3[2]+qt_3[8])/4 + (iterTe_2[2][2]+iterTe_2[2][3])/4; e_3[3][2] = (qt_3[2]+qt_3[3])/4 + (iterTe_2[2][3]+iterTe_2[2][0])/4; e_3[0][3] = (qt_3[3]+qt_3[0])/4 + (iterTe_2[3][0]+iterTe_2[3][1])/4; //face 4 (de 48) e_3[1][3] = (qt_3[3]+qt_3[2])/4 + (iterTe_2[3][1]+iterTe_2[3][2])/4; e_3[2][3] = (qt_3[3]+qt_3[11])/4 + (iterTe_2[3][2]+iterTe_2[3][3])/4; e_3[3][3] = (qt_3[3]+qt_3[25])/4 + (iterTe_2[3][3]+iterTe_2[3][0])/4; e_3[0][4] = (qt_3[4]+qt_3[47])/4 + (iterTe_2[4][0]+iterTe_2[4][1])/4; //face 5 (de 48) e_3[1][4] = (qt_3[4]+qt_3[5])/4 + (iterTe_2[4][1]+iterTe_2[4][2])/4; e_3[2][4] = (qt_3[4]+qt_3[7])/4 + (iterTe_2[4][2]+iterTe_2[4][3])/4; e_3[3][4] = (qt_3[4]+qt_3[1])/4 + (iterTe_2[4][3]+iterTe_2[4][0])/4; e_3[0][5] = (qt_3[5]+qt_3[46])/4 + (iterTe_2[5][0]+iterTe_2[5][1])/4; //face 6 (de 48) e_3[1][5] = (qt_3[5]+qt_3[12])/4 + (iterTe_2[5][1]+iterTe_2[5][2])/4; e_3[2][5] = (qt_3[5]+qt_3[6])/4 + (iterTe_2[5][2]+iterTe_2[5][3])/4; e_3[3][5] = (qt_3[5]+qt_3[4])/4 + (iterTe_2[5][3]+iterTe_2[5][0])/4; e_3[0][6] = (qt_3[6]+qt_3[5])/4 + (iterTe_2[6][0]+iterTe_2[6][1])/4; //face 7 (de 48) e_3[1][6] = (qt_3[6]+qt_3[15])/4 + (iterTe_2[6][1]+iterTe_2[6][2])/4; e_3[2][6] = (qt_3[6]+qt_3[9])/4 + (iterTe_2[6][2]+iterTe_2[6][3])/4; e_3[3][6] = (qt_3[6]+qt_3[7])/4 + (iterTe_2[6][3]+iterTe_2[6][0])/4; e_3[0][7] = (qt_3[7]+qt_3[4])/4 + (iterTe_2[7][0]+iterTe_2[7][1])/4; //face 8 (de 48) e_3[1][7] = (qt_3[7]+qt_3[6])/4 + (iterTe_2[7][1]+iterTe_2[7][2])/4; e_3[2][7] = (qt_3[7]+qt_3[8])/4 + (iterTe_2[7][2]+iterTe_2[7][3])/4; e_3[3][7] = (qt_3[7]+qt_3[2])/4 + (iterTe_2[7][3]+iterTe_2[7][0])/4; e_3[0][8] = (qt_3[8]+qt_3[7])/4 + (iterTe_2[8][0]+iterTe_2[8][1])/4; //face 9 (de 48) e_3[1][8] = (qt_3[8]+qt_3[9])/4 + (iterTe_2[8][1]+iterTe_2[8][2])/4; e_3[2][8] = (qt_3[8]+qt_3[11])/4 + (iterTe_2[8][2]+iterTe_2[8][3])/4; e_3[3][8] = (qt_3[8]+qt_3[2])/4 + (iterTe_2[8][3]+iterTe_2[8][0])/4; e_3[0][9] = (qt_3[9]+qt_3[6])/4 + (iterTe_2[9][0]+iterTe_2[9][1])/4; //face 10 (de 48) e_3[1][9] = (qt_3[9]+qt_3[23])/4 + (iterTe_2[9][1]+iterTe_2[9][2])/4; e_3[2][9] = (qt_3[9]+qt_3[10])/4 + (iterTe_2[9][2]+iterTe_2[9][3])/4; e_3[3][9] = (qt_3[9]+qt_3[8])/4 + (iterTe_2[9][3]+iterTe_2[9][0])/4; e_3[0][10] = (qt_3[10]+qt_3[9])/4 + (iterTe_2[10][0]+iterTe_2[10][1])/4; //face 11 (de 48) e_3[1][10] = (qt_3[10]+qt_3[22])/4 + (iterTe_2[10][1]+iterTe_2[10][2])/4; e_3[2][10] = (qt_3[10]+qt_3[29])/4 + (iterTe_2[10][2]+iterTe_2[10][3])/4; e_3[3][10] = (qt_3[10]+qt_3[11])/4 + (iterTe_2[10][3]+iterTe_2[10][0])/4; e_3[0][11] = (qt_3[11]+qt_3[8])/4 + (iterTe_2[11][0]+iterTe_2[11][1])/4; //face 12 (de 48) e_3[1][11] = (qt_3[11]+qt_3[10])/4 + (iterTe_2[11][1]+iterTe_2[11][2])/4; e_3[2][11] = (qt_3[11]+qt_3[28])/4 + (iterTe_2[11][2]+iterTe_2[11][3])/4; e_3[3][11] = (qt_3[11]+qt_3[3])/4 + (iterTe_2[11][3]+iterTe_2[11][0])/4; e_3[0][12] = (qt_3[12]+qt_3[46])/4 + (iterTe_2[12][0]+iterTe_2[12][1])/4; //face 13 (de 48) e_3[1][12] = (qt_3[12]+qt_3[13])/4 + (iterTe_2[12][1]+iterTe_2[12][2])/4; e_3[2][12] = (qt_3[12]+qt_3[15])/4 + (iterTe_2[12][2]+iterTe_2[12][3])/4; e_3[3][12] = (qt_3[12]+qt_3[5])/4 + (iterTe_2[12][3]+iterTe_2[12][0])/4; e_3[0][13] = (qt_3[13]+qt_3[45])/4 + (iterTe_2[13][0]+iterTe_2[13][1])/4; //face 14 (de 48) e_3[1][13] = (qt_3[13]+qt_3[16])/4 + (iterTe_2[13][1]+iterTe_2[13][2])/4; e_3[2][13] = (qt_3[13]+qt_3[14])/4 + (iterTe_2[13][2]+iterTe_2[13][3])/4; e_3[3][13] = (qt_3[13]+qt_3[12])/4 + (iterTe_2[13][3]+iterTe_2[13][0])/4; e_3[0][14] = (qt_3[14]+qt_3[13])/4 + (iterTe_2[14][0]+iterTe_2[14][1])/4; //face 15 (de 48) e_3[1][14] = (qt_3[14]+qt_3[19])/4 + (iterTe_2[14][1]+iterTe_2[14][2])/4; e_3[2][14] = (qt_3[14]+qt_3[20])/4 + (iterTe_2[14][2]+iterTe_2[14][3])/4; e_3[3][14] = (qt_3[14]+qt_3[15])/4 + (iterTe_2[14][3]+iterTe_2[14][0])/4; e_3[0][15] = (qt_3[15]+qt_3[12])/4 + (iterTe_2[15][0]+iterTe_2[15][1])/4; //face 16 (de 48) e_3[1][15] = (qt_3[15]+qt_3[14])/4 + (iterTe_2[15][1]+iterTe_2[15][2])/4; e_3[2][15] = (qt_3[15]+qt_3[23])/4 + (iterTe_2[15][2]+iterTe_2[15][3])/4; e_3[3][15] = (qt_3[15]+qt_3[6])/4 + (iterTe_2[15][3]+iterTe_2[15][0])/4; e_3[0][16] = (qt_3[16]+qt_3[42])/4 + (iterTe_2[16][0]+iterTe_2[16][1])/4; //face 17 (de 48) e_3[1][16] = (qt_3[16]+qt_3[17])/4 + (iterTe_2[16][1]+iterTe_2[16][2])/4; e_3[2][16] = (qt_3[16]+qt_3[19])/4 + (iterTe_2[16][2]+iterTe_2[16][3])/4; e_3[3][16] = (qt_3[16]+qt_3[13])/4 + (iterTe_2[16][3]+iterTe_2[16][0])/4; e_3[0][17] = (qt_3[17]+qt_3[41])/4 + (iterTe_2[17][0]+iterTe_2[17][1])/4; //face 18 (de 48) e_3[1][17] = (qt_3[17]+qt_3[34])/4 + (iterTe_2[17][1]+iterTe_2[17][2])/4; e_3[2][17] = (qt_3[17]+qt_3[18])/4 + (iterTe_2[17][2]+iterTe_2[17][3])/4; e_3[3][17] = (qt_3[17]+qt_3[16])/4 + (iterTe_2[17][3]+iterTe_2[17][0])/4; e_3[0][18] = (qt_3[18]+qt_3[17])/4 + (iterTe_2[18][0]+iterTe_2[18][1])/4; //face 19 (de 48) e_3[1][18] = (qt_3[18]+qt_3[33])/4 + (iterTe_2[18][1]+iterTe_2[18][2])/4; e_3[2][18] = (qt_3[18]+qt_3[21])/4 + (iterTe_2[18][2]+iterTe_2[18][3])/4; e_3[3][18] = (qt_3[18]+qt_3[19])/4 + (iterTe_2[18][3]+iterTe_2[18][0])/4; e_3[0][19] = (qt_3[19]+qt_3[16])/4 + (iterTe_2[19][0]+iterTe_2[19][1])/4; //face 20 (de 48) e_3[1][19] = (qt_3[19]+qt_3[18])/4 + (iterTe_2[19][1]+iterTe_2[19][2])/4; e_3[2][19] = (qt_3[19]+qt_3[20])/4 + (iterTe_2[19][2]+iterTe_2[19][3])/4; e_3[3][19] = (qt_3[19]+qt_3[14])/4 + (iterTe_2[19][3]+iterTe_2[19][0])/4; e_3[0][20] = (qt_3[20]+qt_3[19])/4 + (iterTe_2[20][0]+iterTe_2[20][1])/4; //face 21 (de 48) e_3[1][20] = (qt_3[20]+qt_3[21])/4 + (iterTe_2[20][1]+iterTe_2[20][2])/4; e_3[2][20] = (qt_3[20]+qt_3[23])/4 + (iterTe_2[20][2]+iterTe_2[20][3])/4; e_3[3][20] = (qt_3[20]+qt_3[14])/4 + (iterTe_2[20][3]+iterTe_2[20][0])/4; e_3[0][21] = (qt_3[21]+qt_3[18])/4 + (iterTe_2[21][0]+iterTe_2[21][1])/4; //face 22 (de 48) e_3[1][21] = (qt_3[21]+qt_3[30])/4 + (iterTe_2[21][1]+iterTe_2[21][2])/4; e_3[2][21] = (qt_3[21]+qt_3[22])/4 + (iterTe_2[21][2]+iterTe_2[21][3])/4; e_3[3][21] = (qt_3[21]+qt_3[20])/4 + (iterTe_2[21][3]+iterTe_2[21][0])/4; e_3[0][22] = (qt_3[22]+qt_3[21])/4 + (iterTe_2[22][0]+iterTe_2[22][1])/4; //face 23 (de 48) e_3[1][22] = (qt_3[22]+qt_3[29])/4 + (iterTe_2[22][1]+iterTe_2[22][2])/4; e_3[2][22] = (qt_3[22]+qt_3[10])/4 + (iterTe_2[22][2]+iterTe_2[22][3])/4; e_3[3][22] = (qt_3[22]+qt_3[23])/4 + (iterTe_2[22][3]+iterTe_2[22][0])/4; e_3[0][23] = (qt_3[23]+qt_3[20])/4 + (iterTe_2[23][0]+iterTe_2[23][1])/4; //face 24 (de 48) e_3[1][23] = (qt_3[23]+qt_3[22])/4 + (iterTe_2[23][1]+iterTe_2[23][2])/4; e_3[2][23] = (qt_3[23]+qt_3[9])/4 + (iterTe_2[23][2]+iterTe_2[23][3])/4; e_3[3][23] = (qt_3[23]+qt_3[15])/4 + (iterTe_2[23][3]+iterTe_2[23][0])/4; e_3[0][24] = (qt_3[24]+qt_3[0])/4 + (iterTe_2[24][0]+iterTe_2[24][1])/4; //face 25 (de 48) e_3[1][24] = (qt_3[24]+qt_3[25])/4 + (iterTe_2[24][1]+iterTe_2[24][2])/4; e_3[2][24] = (qt_3[24]+qt_3[27])/4 + (iterTe_2[24][2]+iterTe_2[24][3])/4; e_3[3][24] = (qt_3[24]+qt_3[36])/4 + (iterTe_2[24][3]+iterTe_2[24][0])/4; e_3[0][25] = (qt_3[25]+qt_3[3])/4 + (iterTe_2[25][0]+iterTe_2[25][1])/4; //face 26 (de 48) e_3[1][25] = (qt_3[25]+qt_3[28])/4 + (iterTe_2[25][1]+iterTe_2[25][2])/4; e_3[2][25] = (qt_3[25]+qt_3[26])/4 + (iterTe_2[25][2]+iterTe_2[25][3])/4; e_3[3][25] = (qt_3[25]+qt_3[24])/4 + (iterTe_2[25][3]+iterTe_2[25][0])/4; e_3[0][26] = (qt_3[26]+qt_3[25])/4 + (iterTe_2[26][0]+iterTe_2[26][1])/4; //face 27 (de 48) e_3[1][26] = (qt_3[26]+qt_3[31])/4 + (iterTe_2[26][1]+iterTe_2[26][2])/4; e_3[2][26] = (qt_3[26]+qt_3[32])/4 + (iterTe_2[26][2]+iterTe_2[26][3])/4; e_3[3][26] = (qt_3[26]+qt_3[27])/4 + (iterTe_2[26][3]+iterTe_2[26][0])/4; e_3[0][27] = (qt_3[27]+qt_3[24])/4 + (iterTe_2[27][0]+iterTe_2[27][1])/4; //face 28 (de 48) e_3[1][27] = (qt_3[27]+qt_3[26])/4 + (iterTe_2[27][1]+iterTe_2[27][2])/4; e_3[2][27] = (qt_3[27]+qt_3[35])/4 + (iterTe_2[27][2]+iterTe_2[27][3])/4; e_3[3][27] = (qt_3[27]+qt_3[37])/4 + (iterTe_2[27][3]+iterTe_2[27][0])/4; e_3[0][28] = (qt_3[28]+qt_3[11])/4 + (iterTe_2[28][0]+iterTe_2[28][1])/4; //face 29 (de 48) e_3[1][28] = (qt_3[28]+qt_3[29])/4 + (iterTe_2[28][1]+iterTe_2[28][2])/4; e_3[2][28] = (qt_3[28]+qt_3[31])/4 + (iterTe_2[28][2]+iterTe_2[28][3])/4; e_3[3][28] = (qt_3[28]+qt_3[25])/4 + (iterTe_2[28][3]+iterTe_2[28][0])/4; e_3[0][29] = (qt_3[29]+qt_3[10])/4 + (iterTe_2[29][0]+iterTe_2[29][1])/4; //face 30 (de 48) e_3[1][29] = (qt_3[29]+qt_3[21])/4 + (iterTe_2[29][1]+iterTe_2[29][2])/4; e_3[2][29] = (qt_3[29]+qt_3[30])/4 + (iterTe_2[29][2]+iterTe_2[29][3])/4; e_3[3][29] = (qt_3[29]+qt_3[28])/4 + (iterTe_2[29][3]+iterTe_2[29][0])/4; e_3[0][30] = (qt_3[30]+qt_3[29])/4 + (iterTe_2[30][0]+iterTe_2[30][1])/4; //face 31 (de 48) e_3[1][30] = (qt_3[30]+qt_3[21])/4 + (iterTe_2[30][1]+iterTe_2[30][2])/4; e_3[2][30] = (qt_3[30]+qt_3[33])/4 + (iterTe_2[30][2]+iterTe_2[30][3])/4; e_3[3][30] = (qt_3[30]+qt_3[31])/4 + (iterTe_2[30][3]+iterTe_2[30][0])/4; e_3[0][31] = (qt_3[31]+qt_3[28])/4 + (iterTe_2[31][0]+iterTe_2[31][1])/4; //face 32 (de 48) e_3[1][31] = (qt_3[31]+qt_3[30])/4 + (iterTe_2[31][1]+iterTe_2[31][2])/4; e_3[2][31] = (qt_3[31]+qt_3[32])/4 + (iterTe_2[31][2]+iterTe_2[31][3])/4; e_3[3][31] = (qt_3[31]+qt_3[26])/4 + (iterTe_2[31][3]+iterTe_2[31][0])/4; e_3[0][32] = (qt_3[32]+qt_3[31])/4 + (iterTe_2[32][0]+iterTe_2[32][1])/4; //face 33 (de 48) e_3[1][32] = (qt_3[32]+qt_3[33])/4 + (iterTe_2[32][1]+iterTe_2[32][2])/4; e_3[2][32] = (qt_3[32]+qt_3[35])/4 + (iterTe_2[32][2]+iterTe_2[32][3])/4; e_3[3][32] = (qt_3[32]+qt_3[26])/4 + (iterTe_2[32][3]+iterTe_2[32][0])/4; e_3[0][33] = (qt_3[33]+qt_3[30])/4 + (iterTe_2[33][0]+iterTe_2[33][1])/4; //face 34 (de 48) e_3[1][33] = (qt_3[33]+qt_3[18])/4 + (iterTe_2[33][1]+iterTe_2[33][2])/4; e_3[2][33] = (qt_3[33]+qt_3[34])/4 + (iterTe_2[33][2]+iterTe_2[33][3])/4; e_3[3][33] = (qt_3[33]+qt_3[32])/4 + (iterTe_2[33][3]+iterTe_2[33][0])/4; e_3[0][34] = (qt_3[34]+qt_3[33])/4 + (iterTe_2[34][0]+iterTe_2[34][1])/4; //face 35 (de 48) e_3[1][34] = (qt_3[34]+qt_3[17])/4 + (iterTe_2[34][1]+iterTe_2[34][2])/4; e_3[2][34] = (qt_3[34]+qt_3[41])/4 + (iterTe_2[34][2]+iterTe_2[34][3])/4; e_3[3][34] = (qt_3[34]+qt_3[35])/4 + (iterTe_2[34][3]+iterTe_2[34][0])/4; e_3[0][35] = (qt_3[35]+qt_3[32])/4 + (iterTe_2[35][0]+iterTe_2[35][1])/4; //face 36 (de 48) e_3[1][35] = (qt_3[35]+qt_3[34])/4 + (iterTe_2[35][1]+iterTe_2[35][2])/4; e_3[2][35] = (qt_3[35]+qt_3[40])/4 + (iterTe_2[35][2]+iterTe_2[35][3])/4; e_3[3][35] = (qt_3[35]+qt_3[27])/4 + (iterTe_2[35][3]+iterTe_2[35][0])/4; e_3[0][36] = (qt_3[36]+qt_3[24])/4 + (iterTe_2[36][0]+iterTe_2[36][1])/4; //face 37 (de 48) e_3[1][36] = (qt_3[36]+qt_3[37])/4 + (iterTe_2[36][1]+iterTe_2[36][2])/4; e_3[2][36] = (qt_3[36]+qt_3[39])/4 + (iterTe_2[36][2]+iterTe_2[36][3])/4; e_3[3][36] = (qt_3[36]+qt_3[0])/4 + (iterTe_2[36][3]+iterTe_2[36][0])/4; e_3[0][37] = (qt_3[37]+qt_3[27])/4 + (iterTe_2[37][0]+iterTe_2[37][1])/4; //face 38 (de 48) e_3[1][37] = (qt_3[37]+qt_3[40])/4 + (iterTe_2[37][1]+iterTe_2[37][2])/4; e_3[2][37] = (qt_3[37]+qt_3[38])/4 + (iterTe_2[37][2]+iterTe_2[37][3])/4; e_3[3][37] = (qt_3[37]+qt_3[36])/4 + (iterTe_2[37][3]+iterTe_2[37][0])/4; e_3[0][38] = (qt_3[38]+qt_3[37])/4 + (iterTe_2[38][0]+iterTe_2[38][1])/4; //face 39 (de 48) e_3[1][38] = (qt_3[38]+qt_3[43])/4 + (iterTe_2[38][1]+iterTe_2[38][2])/4; e_3[2][38] = (qt_3[38]+qt_3[44])/4 + (iterTe_2[38][2]+iterTe_2[38][3])/4; e_3[3][38] = (qt_3[38]+qt_3[39])/4 + (iterTe_2[38][3]+iterTe_2[38][0])/4; e_3[0][39] = (qt_3[39]+qt_3[36])/4 + (iterTe_2[39][0]+iterTe_2[39][1])/4; //face 40 (de 48) e_3[1][39] = (qt_3[39]+qt_3[38])/4 + (iterTe_2[39][1]+iterTe_2[39][2])/4; e_3[2][39] = (qt_3[39]+qt_3[47])/4 + (iterTe_2[39][2]+iterTe_2[39][3])/4; e_3[3][39] = (qt_3[39]+qt_3[1])/4 + (iterTe_2[39][3]+iterTe_2[39][0])/4; e_3[0][40] = (qt_3[40]+qt_3[35])/4 + (iterTe_2[40][0]+iterTe_2[40][1])/4; //face 41 (de 48) e_3[1][40] = (qt_3[40]+qt_3[41])/4 + (iterTe_2[40][1]+iterTe_2[40][2])/4; e_3[2][40] = (qt_3[40]+qt_3[43])/4 + (iterTe_2[40][2]+iterTe_2[40][3])/4; e_3[3][40] = (qt_3[40]+qt_3[37])/4 + (iterTe_2[40][3]+iterTe_2[40][0])/4; e_3[0][41] = (qt_3[41]+qt_3[34])/4 + (iterTe_2[41][0]+iterTe_2[41][1])/4; //face 42 (de 48) e_3[1][41] = (qt_3[41]+qt_3[17])/4 + (iterTe_2[41][1]+iterTe_2[41][2])/4; e_3[2][41] = (qt_3[41]+qt_3[42])/4 + (iterTe_2[41][2]+iterTe_2[41][3])/4; e_3[3][41] = (qt_3[41]+qt_3[40])/4 + (iterTe_2[41][3]+iterTe_2[41][0])/4; e_3[0][42] = (qt_3[42]+qt_3[41])/4 + (iterTe_2[42][0]+iterTe_2[42][1])/4; //face 43 (de 48) e_3[1][42] = (qt_3[42]+qt_3[16])/4 + (iterTe_2[42][1]+iterTe_2[42][2])/4; e_3[2][42] = (qt_3[42]+qt_3[45])/4 + (iterTe_2[42][2]+iterTe_2[42][3])/4; e_3[3][42] = (qt_3[42]+qt_3[43])/4 + (iterTe_2[42][3]+iterTe_2[42][0])/4; e_3[0][43] = (qt_3[43]+qt_3[40])/4 + (iterTe_2[43][0]+iterTe_2[43][1])/4; //face 44 (de 48) e_3[1][43] = (qt_3[43]+qt_3[42])/4 + (iterTe_2[43][1]+iterTe_2[43][2])/4; e_3[2][43] = (qt_3[43]+qt_3[44])/4 + (iterTe_2[43][2]+iterTe_2[43][3])/4; e_3[3][43] = (qt_3[43]+qt_3[38])/4 + (iterTe_2[43][3]+iterTe_2[43][0])/4; e_3[0][44] = (qt_3[44]+qt_3[43])/4 + (iterTe_2[44][0]+iterTe_2[44][1])/4; //face 45 (de 48) e_3[1][44] = (qt_3[44]+qt_3[45])/4 + (iterTe_2[44][1]+iterTe_2[44][2])/4; e_3[2][44] = (qt_3[44]+qt_3[47])/4 + (iterTe_2[44][2]+iterTe_2[44][3])/4; e_3[3][44] = (qt_3[44]+qt_3[38])/4 + (iterTe_2[44][3]+iterTe_2[44][0])/4; e_3[0][45] = (qt_3[45]+qt_3[42])/4 + (iterTe_2[45][0]+iterTe_2[45][1])/4; //face 46 (de 48) e_3[1][45] = (qt_3[45]+qt_3[13])/4 + (iterTe_2[45][1]+iterTe_2[45][2])/4; e_3[2][45] = (qt_3[45]+qt_3[46])/4 + (iterTe_2[45][2]+iterTe_2[45][3])/4; e_3[3][45] = (qt_3[45]+qt_3[44])/4 + (iterTe_2[45][3]+iterTe_2[45][0])/4; e_3[0][46] = (qt_3[46]+qt_3[45])/4 + (iterTe_2[46][0]+iterTe_2[46][1])/4; //face 47 (de 48) e_3[1][46] = (qt_3[46]+qt_3[12])/4 + (iterTe_2[46][1]+iterTe_2[46][2])/4; e_3[2][46] = (qt_3[46]+qt_3[5])/4 + (iterTe_2[46][2]+iterTe_2[46][3])/4; e_3[3][46] = (qt_3[46]+qt_3[47])/4 + (iterTe_2[46][3]+iterTe_2[46][0])/4; e_3[0][47] = (qt_3[47]+qt_3[44])/4 + (iterTe_2[47][0]+iterTe_2[47][1])/4; //face 48 (de 48) e_3[1][47] = (qt_3[47]+qt_3[46])/4 + (iterTe_2[47][1]+iterTe_2[47][2])/4; e_3[2][47] = (qt_3[47]+qt_3[4])/4 + (iterTe_2[47][2]+iterTe_2[47][3])/4; e_3[3][47] = (qt_3[47]+qt_3[39])/4 + (iterTe_2[47][3]+iterTe_2[47][0])/4; //pontos nos vertices quese interceptam ve_3[0][0] = iterTe_2[0][0]/4 + (qt_3[0]+qt_3[24]+qt_3[36])/12 + ((iterTe_2[0][0]+iterTe_2[0][1])/2+(iterTe_2[0][0]+iterTe_2[24][1])/2+(iterTe_2[0][0]+iterTe_2[36][1])/2)/6; //face1 ve_3[1][0] = iterTe_2[0][1]/4 + (qt_3[0]+qt_3[36]+qt_3[39]+qt_3[1])/16 + ((iterTe_2[0][1]+iterTe_2[0][2])/2+(iterTe_2[0][1]+iterTe_2[36][0])/2+(iterTe_2[0][1]+iterTe_2[39][1])/2+(iterTe_2[0][1]+iterTe_2[1][1])/2)/8; ve_3[2][0] = iterTe_2[0][2]/4 + (qt_3[0]+qt_3[1] +qt_3[2]+qt_3[3])/16 + ((iterTe_2[0][2]+iterTe_2[0][3])/2+(iterTe_2[0][2]+iterTe_2[1][0])/2 +(iterTe_2[0][2]+iterTe_2[2][1])/2+(iterTe_2[0][2]+iterTe_2[3][2])/2)/8; ve_3[3][0] = iterTe_2[0][3]/4 + (qt_3[0]+qt_3[3] +qt_3[25]+qt_3[24])/16 + ((iterTe_2[0][3]+iterTe_2[0][0])/2+(iterTe_2[0][3]+iterTe_2[3][1])/2 +(iterTe_2[0][3]+iterTe_2[25][1])/2+(iterTe_2[0][3]+iterTe_2[24][2])/2)/8; ve_3[0][1] = ve_3[1][0]; //face2 ve_3[1][1] = iterTe_2[1][1]/4 + (qt_3[1]+qt_3[39]+qt_3[47]+qt_3[4])/16 + ((iterTe_2[1][1]+iterTe_2[1][2])/2+(iterTe_2[1][1]+iterTe_2[39][1])/2+(iterTe_2[1][1]+iterTe_2[47][2])/2+(iterTe_2[1][2]+iterTe_2[4][1])/2)/8; ve_3[2][1] = iterTe_2[1][2]/4 + (qt_3[1]+qt_3[4]+qt_3[7]+qt_3[2])/16 + ((iterTe_2[1][2]+iterTe_2[1][3])/2+(iterTe_2[1][2]+iterTe_2[4][0])/2 +(iterTe_2[1][2]+iterTe_2[7][1])/2 +(iterTe_2[1][2]+iterTe_2[2][2])/2)/8; ve_3[3][1] = ve_3[2][0]; ve_3[0][2] = ve_3[2][0]; //face3 ve_3[1][2] = ve_3[2][1]; ve_3[2][2] = iterTe_2[2][2]/4 + (qt_3[2]+qt_3[7]+qt_3[8])/12 + ((iterTe_2[2][2]+iterTe_2[2][3])/2+(iterTe_2[2][2]+iterTe_2[7][0])/2 +(iterTe_2[2][2]+iterTe_2[8][1])/2)/6; ve_3[3][2] = iterTe_2[3][2]/4 + (qt_3[2]+qt_3[8]+qt_3[11]+qt_3[3])/16 + ((iterTe_2[2][3]+iterTe_2[2][0])/2+(iterTe_2[2][3]+iterTe_2[8][0])/2 +(iterTe_2[2][3]+iterTe_2[11][1])/2 +(iterTe_2[2][3]+iterTe_2[3][3])/2)/8; ve_3[0][3] = ve_3[3][0]; //face4 ve_3[1][3] = ve_3[0][2]; ve_3[2][3] = ve_3[3][2]; ve_3[3][3] = iterTe_2[3][3]/4 + (qt_3[3]+qt_3[11]+qt_3[28]+qt_3[25])/16 + ((iterTe_2[3][3]+iterTe_2[3][0])/2+(iterTe_2[3][3]+iterTe_2[11][0])/2 +(iterTe_2[3][3]+iterTe_2[28][1])/2 +(iterTe_2[3][3]+iterTe_2[25][2])/2)/8; ve_3[0][4] = ve_3[1][1]; //face5 ve_3[1][4] = iterTe_2[4][1]/4 + (qt_3[4]+qt_3[47]+qt_3[46]+qt_3[5])/16 + ((iterTe_2[4][1]+iterTe_2[4][2])/2+(iterTe_2[4][1]+iterTe_2[47][1])/2+(iterTe_2[4][1]+iterTe_2[46][2])/2+(iterTe_2[4][1]+iterTe_2[5][1])/2)/8; ve_3[2][4] = iterTe_2[4][2]/4 + (qt_3[4]+qt_3[5] +qt_3[6] +qt_3[7])/16 + ((iterTe_2[4][2]+iterTe_2[4][3])/2+(iterTe_2[4][2]+iterTe_2[5][0])/2 +(iterTe_2[4][2]+iterTe_2[6][1])/2+(iterTe_2[4][2]+iterTe_2[7][2])/2)/8; ve_3[3][4] = ve_3[2][1]; ve_3[0][5] = ve_3[1][4]; //face6 ve_3[1][5] = iterTe_2[5][1]/4 + (qt_3[5]+qt_3[46]+qt_3[12])/12 + ((iterTe_2[5][1]+iterTe_2[5][2])/2+(iterTe_2[5][1]+iterTe_2[46][1])/2+(iterTe_2[5][1]+iterTe_2[12][1])/2)/6; ve_3[2][5] = iterTe_2[5][2]/4 + (qt_3[5]+qt_3[12]+qt_3[15]+qt_3[6])/16 + ((iterTe_2[5][2]+iterTe_2[5][3])/2+(iterTe_2[5][2]+iterTe_2[12][0])/2 +(iterTe_2[5][2]+iterTe_2[15][1])/2 +(iterTe_2[5][2]+iterTe_2[6][2])/2)/8; ve_3[3][5] = ve_3[2][4]; ve_3[0][6] = ve_3[3][5]; //face7 ve_3[1][6] = ve_3[2][5]; ve_3[2][6] = iterTe_2[6][2]/4 + (qt_3[6]+qt_3[15]+qt_3[23]+qt_3[9])/16 + ((iterTe_2[6][2]+iterTe_2[6][3])/2+(iterTe_2[6][2]+iterTe_2[15][0])/2 +(iterTe_2[6][2]+iterTe_2[23][0])/2 +(iterTe_2[6][2]+iterTe_2[9][2])/2)/8; ve_3[3][6] = iterTe_2[6][3]/4 + (qt_3[6]+qt_3[9]+qt_3[8]+qt_3[7])/16 + ((iterTe_2[6][3]+iterTe_2[6][0])/2+(iterTe_2[6][3]+iterTe_2[9][1])/2 +(iterTe_2[6][3]+iterTe_2[8][2])/2 +(iterTe_2[6][3]+iterTe_2[7][2])/2)/8; ve_3[0][7] = ve_3[3][4]; //face8 ve_3[1][7] = ve_3[3][5]; ve_3[2][7] = ve_3[3][6]; ve_3[3][7] = ve_3[2][2]; ve_3[0][8] = ve_3[3][7]; //face9 ve_3[1][8] = ve_3[2][7]; ve_3[2][8] = iterTe_2[8][2]/4 + (qt_3[8]+qt_3[9] +qt_3[10] +qt_3[11])/16 + ((iterTe_2[8][2]+iterTe_2[8][3])/2+(iterTe_2[8][2]+iterTe_2[9][0])/2 +(iterTe_2[8][2]+iterTe_2[10][1])/2+(iterTe_2[8][2]+iterTe_2[11][2])/2)/8; ve_3[3][8] = ve_3[3][2]; ve_3[0][9] = ve_3[1][8]; //face10 ve_3[1][9] = ve_3[2][6]; ve_3[2][9] = iterTe_2[9][2]/4 + (qt_3[9]+qt_3[23]+qt_3[22]+qt_3[10])/16 + ((iterTe_2[9][2]+iterTe_2[9][3])/2+(iterTe_2[9][2]+iterTe_2[23][3])/2 +(iterTe_2[9][2]+iterTe_2[22][0])/2 +(iterTe_2[9][2]+iterTe_2[10][2])/2)/8; ve_3[3][9] = ve_3[2][8]; ve_3[0][10] = ve_3[3][9]; //face11 ve_3[1][10] = ve_3[2][9]; ve_3[2][10] = iterTe_2[10][2]/4 + (qt_3[10]+qt_3[22]+qt_3[29])/12 + ((iterTe_2[10][2]+iterTe_2[10][3])/2+(iterTe_2[10][2]+iterTe_2[22][3])/2 +(iterTe_2[10][2]+iterTe_2[29][2])/2)/6; ve_3[3][10] = iterTe_2[10][3]/4 + (qt_3[10]+qt_3[29]+qt_3[28]+qt_3[11])/16 + ((iterTe_2[10][3]+iterTe_2[10][0])/2+(iterTe_2[10][3]+iterTe_2[29][1])/2 +(iterTe_2[10][3]+iterTe_2[28][2])/2 +(iterTe_2[10][3]+iterTe_2[11][3])/2)/8; ve_3[0][11] = ve_3[2][3]; //face12 ve_3[1][11] = ve_3[0][10]; ve_3[2][11] = ve_3[3][10]; ve_3[3][11] = ve_3[3][3]; ve_3[0][12] = ve_3[1][5]; //face13 ve_3[1][12] = iterTe_2[12][1]/4 + (qt_3[12]+qt_3[46] +qt_3[45] +qt_3[13])/16 + ((iterTe_2[12][1]+iterTe_2[12][2])/2+(iterTe_2[12][1]+iterTe_2[46][2])/2 +(iterTe_2[12][1]+iterTe_2[45][3])/2+(iterTe_2[12][1]+iterTe_2[13][1])/2)/8; ve_3[2][12] = iterTe_2[12][2]/4 + (qt_3[12]+qt_3[13] +qt_3[14] +qt_3[15])/16 + ((iterTe_2[12][2]+iterTe_2[12][3])/2+(iterTe_2[12][2]+iterTe_2[13][0])/2 +(iterTe_2[12][2]+iterTe_2[14][1])/2+(iterTe_2[12][2]+iterTe_2[15][2])/2)/8; ve_3[3][12] = ve_3[2][5]; ve_3[0][13] = ve_3[1][12]; //face14 ve_3[1][13] = iterTe_2[13][1]/4 + (qt_3[13]+qt_3[45]+qt_3[42]+qt_3[16])/16 + ((iterTe_2[13][1]+iterTe_2[13][2])/2+(iterTe_2[13][1]+iterTe_2[45][2])/2 +(iterTe_2[13][1]+iterTe_2[42][3])/2 +(iterTe_2[13][1]+iterTe_2[16][1])/2)/8; ve_3[2][13] = iterTe_2[13][2]/4 + (qt_3[13]+qt_3[16]+qt_3[19]+qt_3[14])/16 + ((iterTe_2[13][2]+iterTe_2[13][3])/2+(iterTe_2[13][2]+iterTe_2[16][0])/2 +(iterTe_2[13][2]+iterTe_2[19][1])/2 +(iterTe_2[13][2]+iterTe_2[14][2])/2)/8; ve_3[3][13] = ve_3[2][12]; ve_3[0][14] = ve_3[3][13]; //face15 ve_3[1][14] = ve_3[2][13]; ve_3[2][14] = iterTe_2[14][2]/4 + (qt_3[14]+qt_3[19]+qt_3[20])/12 + ((iterTe_2[14][2]+iterTe_2[14][3])/2+(iterTe_2[14][2]+iterTe_2[19][0])/2 +(iterTe_2[14][2]+iterTe_2[20][1])/2)/6; ve_3[3][14] = iterTe_2[14][3]/4 + (qt_3[14]+qt_3[20]+qt_3[23]+qt_3[15])/16 + ((iterTe_2[14][3]+iterTe_2[14][0])/2+(iterTe_2[14][3]+iterTe_2[20][0])/2 +(iterTe_2[14][3]+iterTe_2[23][1])/2 +(iterTe_2[14][3]+iterTe_2[15][3])/2)/8; ve_3[0][15] = ve_3[3][12]; //face16 ve_3[1][15] = ve_3[2][12]; ve_3[2][15] = ve_3[3][14]; ve_3[3][15] = ve_3[2][6]; ve_3[0][16] = ve_3[1][13]; //face17 ve_3[1][16] = iterTe_2[16][1]/4 + (qt_3[16]+qt_3[42]+qt_3[41]+qt_3[17])/16 + ((iterTe_2[16][1]+iterTe_2[16][2])/2+(iterTe_2[16][1]+iterTe_2[42][2])/2+(iterTe_2[16][1]+iterTe_2[41][3])/2+(iterTe_2[16][1]+iterTe_2[17][1])/2)/8; ve_3[2][16] = iterTe_2[16][2]/4 + (qt_3[16]+qt_3[17] +qt_3[18] +qt_3[19])/16 + ((iterTe_2[16][2]+iterTe_2[16][3])/2+(iterTe_2[16][2]+iterTe_2[17][0])/2 +(iterTe_2[16][2]+iterTe_2[18][1])/2+(iterTe_2[16][2]+iterTe_2[19][2])/2)/8; ve_3[3][16] = ve_3[2][13]; ve_3[0][17] = ve_3[1][16]; //face18 ve_3[1][17] = iterTe_2[17][1]/4 + (qt_3[17]+qt_3[41]+qt_3[34])/12 + ((iterTe_2[17][1]+iterTe_2[17][2])/2+(iterTe_2[17][1]+iterTe_2[41][3])/2+(iterTe_2[17][1]+iterTe_2[34][3])/2)/6; ve_3[2][17] = iterTe_2[17][2]/4 + (qt_3[17]+qt_3[34]+qt_3[33]+qt_3[18])/16 + ((iterTe_2[17][2]+iterTe_2[17][3])/2+(iterTe_2[17][2]+iterTe_2[34][2])/2 +(iterTe_2[17][2]+iterTe_2[33][3])/2 +(iterTe_2[18][2]+iterTe_2[6][2])/2)/8; ve_3[3][17] = ve_3[2][16]; ve_3[0][18] = ve_3[3][17]; //face19 ve_3[1][18] = ve_3[2][17]; ve_3[2][18] = iterTe_2[18][2]/4 + (qt_3[18]+qt_3[33]+qt_3[30]+qt_3[21])/16 + ((iterTe_2[18][2]+iterTe_2[18][3])/2+(iterTe_2[18][2]+iterTe_2[33][1])/2 +(iterTe_2[18][2]+iterTe_2[30][3])/2 +(iterTe_2[18][2]+iterTe_2[21][2])/2)/8; ve_3[3][18] = iterTe_2[18][3]/4 + (qt_3[18]+qt_3[21]+qt_3[20]+qt_3[19])/16 + ((iterTe_2[18][3]+iterTe_2[18][0])/2+(iterTe_2[18][3]+iterTe_2[21][1])/2 +(iterTe_2[18][3]+iterTe_2[20][2])/2 +(iterTe_2[18][3]+iterTe_2[19][3])/2)/8; ve_3[0][19] = ve_3[3][16]; //face20 ve_3[1][19] = ve_3[3][17]; ve_3[2][19] = ve_3[3][18]; ve_3[3][19] = ve_3[2][14]; ve_3[0][20] = ve_3[2][14]; //face21 ve_3[1][20] = ve_3[2][19]; ve_3[2][20] = iterTe_2[20][2]/4 + (qt_3[20]+qt_3[21] +qt_3[22] +qt_3[23])/16 + ((iterTe_2[20][2]+iterTe_2[20][3])/2+(iterTe_2[20][2]+iterTe_2[21][0])/2 +(iterTe_2[20][2]+iterTe_2[22][1])/2+(iterTe_2[20][2]+iterTe_2[23][2])/2)/8; ve_3[3][20] = ve_3[3][14]; ve_3[0][21] = ve_3[1][20]; //face22 ve_3[1][21] = ve_3[2][18]; ve_3[2][21] = iterTe_2[21][2]/4 + (qt_3[21]+qt_3[29]+qt_3[30]+qt_3[22])/16 + ((iterTe_2[21][2]+iterTe_2[21][3])/2+(iterTe_2[21][2]+iterTe_2[30][2])/2 +(iterTe_2[21][2]+iterTe_2[29][3])/2 +(iterTe_2[21][2]+iterTe_2[22][2])/2)/8; ve_3[3][21] = ve_3[2][20]; ve_3[0][22] = ve_3[3][21]; //face23 ve_3[1][22] = ve_3[2][21]; ve_3[2][22] = ve_3[2][10]; ve_3[3][22] = ve_3[1][10]; ve_3[0][23] = ve_3[2][15]; //face24 ve_3[1][23] = ve_3[0][22]; ve_3[2][23] = ve_3[3][22]; ve_3[3][23] = ve_3[3][15]; ve_3[0][24] = ve_3[0][0]; //face25 ve_3[1][24] = ve_3[3][0]; ve_3[2][24] = iterTe_2[24][2]/4 + (qt_3[24]+qt_3[25] +qt_3[26] +qt_3[27])/16 + ((iterTe_2[24][2]+iterTe_2[24][3])/2+(iterTe_2[24][2]+iterTe_2[25][0])/2 +(iterTe_2[24][2]+iterTe_2[26][1])/2+(iterTe_2[24][2]+iterTe_2[27][2])/2)/8; ve_3[3][24] = iterTe_2[24][3]/4 + (qt_3[24]+qt_3[27]+qt_3[37]+qt_3[36])/16 + ((iterTe_2[24][3]+iterTe_2[24][0])/2+(iterTe_2[24][3]+iterTe_2[27][1])/2 +(iterTe_2[24][3]+iterTe_2[37][1])/2 +(iterTe_2[24][3]+iterTe_2[36][2])/2)/8; ve_3[0][25] = ve_3[1][24]; //face26 ve_3[1][25] = ve_3[3][3]; ve_3[2][25] = iterTe_2[25][2]/4 + (qt_3[25]+qt_3[28]+qt_3[31]+qt_3[26])/16 + ((iterTe_2[25][2]+iterTe_2[25][3])/2+(iterTe_2[25][2]+iterTe_2[28][0])/2 +(iterTe_2[25][2]+iterTe_2[31][1])/2 +(iterTe_2[25][2]+iterTe_2[26][2])/2)/8; ve_3[3][25] = ve_3[2][24]; ve_3[0][26] = ve_3[2][24]; //face27 ve_3[1][26] = ve_3[2][25]; ve_3[2][26] = iterTe_2[26][2]/4 + (qt_3[26]+qt_3[31]+qt_3[32])/12 + ((iterTe_2[26][2]+iterTe_2[26][3])/2+(iterTe_2[26][2]+iterTe_2[31][0])/2 +(iterTe_2[26][2]+iterTe_2[32][1])/2)/6; ve_3[3][26] = iterTe_2[26][3]/4 + (qt_3[26]+qt_3[32]+qt_3[35]+qt_3[27])/16 + ((iterTe_2[26][3]+iterTe_2[26][0])/2+(iterTe_2[26][3]+iterTe_2[32][0])/2 +(iterTe_2[26][3]+iterTe_2[35][1])/2 +(iterTe_2[26][3]+iterTe_2[27][3])/2)/8; ve_3[0][27] = ve_3[3][24]; //face28 ve_3[1][27] = ve_3[2][24]; ve_3[2][27] = ve_3[3][26]; ve_3[3][27] = iterTe_2[27][3]/4 + (qt_3[27]+qt_3[35]+qt_3[40]+qt_3[37])/16 + ((iterTe_2[27][3]+iterTe_2[27][0])/2+(iterTe_2[27][3]+iterTe_2[35][0])/2 +(iterTe_2[27][3]+iterTe_2[40][1])/2 +(iterTe_2[27][3]+iterTe_2[37][2])/2)/8; ve_3[0][28] = ve_3[1][25]; //face29 ve_3[1][28] = ve_3[2][11]; ve_3[2][28] = iterTe_2[28][2]/4 + (qt_3[28]+qt_3[29] +qt_3[30] +qt_3[31])/16 + ((iterTe_2[28][2]+iterTe_2[28][3])/2+(iterTe_2[28][2]+iterTe_2[29][0])/2 +(iterTe_2[28][2]+iterTe_2[30][1])/2+(iterTe_2[28][2]+iterTe_2[31][2])/2)/8; ve_3[3][28] = ve_3[2][25]; ve_3[0][29] = ve_3[1][28]; //face30 ve_3[1][29] = ve_3[2][10]; ve_3[2][29] = ve_3[1][22]; ve_3[3][29] = ve_3[2][28]; ve_3[0][30] = ve_3[3][29]; //face31 ve_3[1][30] = ve_3[2][29]; ve_3[2][30] = ve_3[1][21]; ve_3[3][30] = iterTe_2[30][3]/4 + (qt_3[30]+qt_3[33]+qt_3[32]+qt_3[31])/16 + ((iterTe_2[30][3]+iterTe_2[30][0])/2+(iterTe_2[30][3]+iterTe_2[33][1])/2 +(iterTe_2[30][3]+iterTe_2[32][2])/2 +(iterTe_2[30][3]+iterTe_2[31][3])/2)/8; ve_3[0][31] = ve_3[1][26]; //face32 ve_3[1][31] = ve_3[0][30]; ve_3[2][31] = ve_3[3][30]; ve_3[3][31] = ve_3[2][26]; ve_3[0][32] = ve_3[2][26]; //face33 ve_3[1][32] = ve_3[2][31]; ve_3[2][32] = iterTe_2[32][2]/4 + (qt_3[32]+qt_3[33] +qt_3[34] +qt_3[35])/16 + ((iterTe_2[32][2]+iterTe_2[32][3])/2+(iterTe_2[32][2]+iterTe_2[33][0])/2 +(iterTe_2[32][2]+iterTe_2[34][1])/2+(iterTe_2[32][2]+iterTe_2[35][2])/2)/8; ve_3[3][32] = ve_3[3][26]; ve_3[0][33] = ve_3[1][32]; //face34 ve_3[1][33] = ve_3[2][30]; ve_3[2][33] = ve_3[1][18]; ve_3[3][33] = ve_3[2][32]; ve_3[0][34] = ve_3[3][33]; //face35 ve_3[1][34] = ve_3[2][33]; ve_3[2][34] = ve_3[1][17]; ve_3[3][34] = iterTe_2[34][3]/4 + (qt_3[34]+qt_3[41]+qt_3[40]+qt_3[35])/16 + ((iterTe_2[34][3]+iterTe_2[34][0])/2+(iterTe_2[34][3]+iterTe_2[41][1])/2 +(iterTe_2[34][3]+iterTe_2[40][2])/2 +(iterTe_2[34][3]+iterTe_2[35][3])/2)/8; ve_3[0][35] = ve_3[2][27]; //face36 ve_3[1][35] = ve_3[0][34]; ve_3[2][35] = ve_3[3][34]; ve_3[3][35] = ve_3[3][27]; ve_3[0][36] = ve_3[0][0]; //face37 ve_3[1][36] = ve_3[3][24]; ve_3[2][36] = iterTe_2[36][2]/4 + (qt_3[36]+qt_3[37] +qt_3[38] +qt_3[39])/16 + ((iterTe_2[36][2]+iterTe_2[36][3])/2+(iterTe_2[36][2]+iterTe_2[37][0])/2 +(iterTe_2[36][2]+iterTe_2[38][1])/2+(iterTe_2[36][2]+iterTe_2[39][2])/2)/8; ve_3[3][36] = ve_3[1][0]; ve_3[0][37] = ve_3[1][36]; //face38 ve_3[1][37] = ve_3[3][27]; ve_3[2][37] = iterTe_2[37][2]/4 + (qt_3[37]+qt_3[40]+qt_3[43]+qt_3[38])/16 + ((iterTe_2[37][2]+iterTe_2[37][3])/2+(iterTe_2[37][2]+iterTe_2[40][0])/2 +(iterTe_2[37][2]+iterTe_2[43][1])/2 +(iterTe_2[37][2]+iterTe_2[38][2])/2)/8; ve_3[3][37] = ve_3[2][36]; ve_3[0][38] = ve_3[3][37]; //face39 ve_3[1][38] = ve_3[2][37]; ve_3[2][38] = iterTe_2[38][2]/4 + (qt_3[38]+qt_3[43]+qt_3[44])/12 + ((iterTe_2[38][2]+iterTe_2[38][3])/2+(iterTe_2[38][2]+iterTe_2[43][0])/2 +(iterTe_2[38][2]+iterTe_2[44][1])/2)/6; ve_3[3][38] = iterTe_2[38][3]/4 + (qt_3[38]+qt_3[44]+qt_3[47]+qt_3[39])/16 + ((iterTe_2[38][3]+iterTe_2[38][0])/2+(iterTe_2[38][3]+iterTe_2[44][0])/2 +(iterTe_2[38][3]+iterTe_2[47][1])/2 +(iterTe_2[38][3]+iterTe_2[39][3])/2)/8; ve_3[0][39] = ve_3[3][36]; //face40 ve_3[1][39] = ve_3[2][36]; ve_3[2][39] = ve_3[3][38]; ve_3[3][39] = ve_3[1][1]; ve_3[0][40] = ve_3[1][37]; //face41 ve_3[1][40] = ve_3[2][35]; ve_3[2][40] = iterTe_2[40][2]/4 + (qt_3[40]+qt_3[41] +qt_3[42] +qt_3[43])/16 + ((iterTe_2[40][2]+iterTe_2[40][3])/2+(iterTe_2[40][2]+iterTe_2[41][0])/2 +(iterTe_2[40][2]+iterTe_2[42][1])/2+(iterTe_2[40][2]+iterTe_2[43][2])/2)/8; ve_3[3][40] = ve_3[2][37]; ve_3[0][41] = ve_3[1][40]; //face42 ve_3[1][41] = ve_3[2][34]; ve_3[2][41] = ve_3[0][17]; ve_3[3][41] = ve_3[2][40]; ve_3[0][42] = ve_3[3][41]; //face43 ve_3[1][42] = ve_3[2][41]; ve_3[2][42] = ve_3[0][16]; ve_3[3][42] = iterTe_2[42][3]/4 + (qt_3[42]+qt_3[43]+qt_3[45]+qt_3[44])/16 + ((iterTe_2[42][3]+iterTe_2[42][0])/2+(iterTe_2[42][3]+iterTe_2[45][1])/2 +(iterTe_2[42][3]+iterTe_2[44][2])/2 +(iterTe_2[42][3]+iterTe_2[43][3])/2)/8; ve_3[0][43] = ve_3[3][40]; //face44 ve_3[1][43] = ve_3[2][40]; ve_3[2][43] = ve_3[3][42]; ve_3[3][43] = ve_3[2][38]; ve_3[0][44] = ve_3[3][43]; //face45 ve_3[1][44] = ve_3[2][43]; ve_3[2][44] = iterTe_2[44][2]/4 + (qt_3[44]+qt_3[45] +qt_3[46]+qt_3[47])/16 + ((iterTe_2[44][2]+iterTe_2[44][3])/2+(iterTe_2[44][2]+iterTe_2[45][0])/2 +(iterTe_2[44][2]+iterTe_2[46][1])/2+(iterTe_2[44][2]+iterTe_2[47][2])/2)/8; ve_3[3][44] = ve_3[3][38]; ve_3[0][45] = ve_3[3][42]; //face46 ve_3[1][45] = ve_3[2][42]; ve_3[2][45] = ve_3[0][13]; ve_3[3][45] = ve_3[2][44]; ve_3[0][46] = ve_3[3][45]; //face47 ve_3[1][46] = ve_3[2][45]; ve_3[2][46] = ve_3[1][5]; ve_3[3][46] = ve_3[0][5]; ve_3[0][47] = ve_3[3][44]; //face48 ve_3[1][47] = ve_3[2][44]; ve_3[2][47] = ve_3[1][4]; ve_3[3][47] = ve_3[0][4]; } void montaVetorTetra1(void) { i=0; for(int c=0; c<4; c++) { iterTe_1[i][0]=ve[0][c]; iterTe_1[i][1]=e[0][c]; iterTe_1[i][2]=qt[c]; iterTe_1[i][3]=e[2][c]; i++; iterTe_1[i][0]=e[0][c]; iterTe_1[i][1]=ve[1][c]; iterTe_1[i][2]=e[1][c]; iterTe_1[i][3]=qt[c]; i++; iterTe_1[i][0]=qt[c]; iterTe_1[i][1]=e[1][c]; iterTe_1[i][2]=ve[2][c]; iterTe_1[i][3]=e[2][c]; i++; } } void montaVetorTetra2(void) { i=0; for(int c=0; c<12; c++) { iterTe_2[i][0] = ve_2[0][c]; iterTe_2[i][1] = e_2[0][c]; iterTe_2[i][2] = qt_2[c]; iterTe_2[i][3] = e_2[3][c]; i++; iterTe_2[i][0] = e_2[0][c]; iterTe_2[i][1] = ve_2[1][c]; iterTe_2[i][2] = e_2[1][c]; iterTe_2[i][3] = qt_2[c]; i++; iterTe_2[i][0] = qt_2[c]; iterTe_2[i][1] = e_2[1][c]; iterTe_2[i][2] = ve_2[2][c]; iterTe_2[i][3] = e_2[2][c]; i++; iterTe_2[i][0] = e_2[3][c]; iterTe_2[i][1] = qt_2[c]; iterTe_2[i][2] = e_2[2][c]; iterTe_2[i][3] = ve_2[3][c]; i++; } } // Função de callback de desenho void RenderScene(void) { // Limpa a janela com a cor especificada como cor de fundo glClear(GL_COLOR_BUFFER_BIT); if (isFlat == 1) glShadeModel(GL_FLAT); else glShadeModel(GL_SMOOTH); tet = 4; tet1 = 4; tet2 = 12; tet3 = 48; hex = 6; hex1 = 6; hex2 = 24; hex3 = 96; // Chamadas de funções OpenGL para desenho if (whatIs != 1) {tet = 0;} if (whatIs != 6) {tet1 = 0;} if (whatIs != 7) {tet2 = 0;} if (whatIs != 8) {tet3 = 0;} if (whatIs != 2) {hex = 0;} if (whatIs != 3) {hex1 = 0;} if (whatIs != 4) {hex2 = 0;} if (whatIs != 5) {hex3 = 0;} //Tetraedro if (isLine) glBegin(GL_LINE_LOOP); else glBegin(GL_TRIANGLES); for(i=0;i