Pour multiplier singleRow et une matrice, en C on va créer une fonction et en Java, on va créer une fonction statique publique en Matrix
En C
singleRow multiply(singleRow m1, Matrix m2) { singleRow res; res.a1 = (m1.a1 * m2.a1.a1) + (m1.a2 * m2.a2.a1) + (m1.a3 * m2.a3.a1); res.a2 = (m1.a1 * m2.a1.a2) + (m1.a2 * m2.a2.a2) + (m1.a3 * m2.a3.a2); res.a3 = (m1.a1 * m2.a1.a3) + (m1.a2 * m2.a2.a3) + (m1.a3 * m2.a3.a3); return res; }
En Java
class Matrix { public static singleRow multiply(singleRow m1, Matrix m2) { singleRow res = new singleRow(0, 0, 0); res.a1 = (m1.a1 * m2.a1.a1) + (m1.a2 * m2.a2.a1) + (m1.a3 * m2.a3.a1); res.a2 = (m1.a1 * m2.a1.a2) + (m1.a2 * m2.a2.a2) + (m1.a3 * m2.a3.a2); res.a3 = (m1.a1 * m2.a1.a3) + (m1.a2 * m2.a2.a3) + (m1.a3 * m2.a3.a3); return res; } }
Soit hauteur de l'écran = 22 et largeur = 80
superficie totale = 1760
A = 0, B = 0
A est l'angle de rotation sur l'axe X, B est l'angle de rotation sur l'axe Z, lorsque nous faisons pivoter le cercle sur l'axe Y, il devient un beignet
ϕ pour l'axe Y, θ pour créer un cercle
créez 2 tableaux de 1760, 1 qui stocke les caractères beignets à imprimer, l'autre qui stocke l'index z peut-être en double type
double zBuffer[1760]; char buffer[1760];
créez un nouvel écran avec printf("x1b[2J");
et ajoutez une boucle infinie
while (1) { }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!