Heim >Backend-Entwicklung >C++ >Erklärung der Donut-ähnlichen Ohren, Teil 2

Erklärung der Donut-ähnlichen Ohren, Teil 2

Barbara Streisand
Barbara StreisandOriginal
2024-12-13 02:07:14541Durchsuche

Explaining donut like ears old Part-2

Matrixmultiplikation

Um singleRow und eine Matrix zu multiplizieren, erstellen wir in C eine Funktion und in Java erstellen wir eine öffentliche statische Funktion in Matrix

In 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;
}

In 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;
  }
}

Hauptfunktion Körper

Angenommen, Bildschirmhöhe = 22 und Breite = 80

Gesamtfläche = 1760

A = 0, B = 0
A ist der Winkel für die Drehung auf der X-Achse, B ist der Winkel für die Drehung auf der Z-Achse. Wenn wir den Kreis auf der Y-Achse drehen, wird er zum Donut
ϕ für die Y-Achse, θ zum Erstellen eines Kreises

Erstellen Sie 2 Arrays mit 1760, eines speichert die zu druckenden Donuts-Zeichen, das andere speichert den Z-Index möglicherweise im Doppeltyp

double zBuffer[1760];
char buffer[1760];

Erstelle einen neuen Bildschirm mit printf("x1b[2J");
und füge eine Endlosschleife hinzu

while (1) {
}

Das obige ist der detaillierte Inhalt vonErklärung der Donut-ähnlichen Ohren, Teil 2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn