JavaScript verwendet Canvas zum Zeichnen von Koordinaten und Linien

JavaScript verwendet Canvas zum Zeichnen von Koordinaten und Linien

In diesem Artikel wird der spezifische Code zur Verwendung von Canvas zum Zeichnen von Koordinaten und Linien in JavaScript zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt

Der spezifische Code lautet wie folgt:

<!DOCTYPE html>
<html lang="de">
<Kopf>
    <meta charset="UTF-8">
    <title>Mehrere Punkte an der angegebenen Position zeichnen</title>
    <Stil>
        Leinwand{
            Rand: 1px gestrichelt grau;
        }
    </Stil>
</Kopf>
<Text>
    <canvas id="cvs" width="500" height="500"></canvas>
</body>
</html>

js-Code:

<Skript>
    var cvs = document.getElementById('cvs');
    var ctx = cvs.getContext('2d');
 
    // Der Abstand zwischen der Koordinatenachse und dem unteren rechten und linken Rand der Leinwand var padding = {
        oben: 20,
        rechts:20,
        unten:20,
        links:20
    }
    // Breite und Höhe des Pfeils in der Koordinatenachse var arrow = {
        Breite: 12,
        Höhe:20
    }
    // Finde die Koordinaten des Scheitelpunkts auf der Koordinatenachse var vertexTop = {
        x:padding.left,
        y:padding.oben
    }
    // Finde die Koordinaten des Ursprungs der Koordinatenachse var origin = {
        x:padding.left,
        y:cvs.Höhe - Polsterung unten
    }
    // Finde die Koordinaten des rechten Scheitelpunkts der Koordinatenachse var vertexRight = {
        x:cvs.width - Polsterung links,
        y:cvs.Höhe - Polsterung unten
    }
 
    //Linienbreite festlegen ctx.lineWidth = 2;
    //Zeichne zwei Linien der Koordinatenachse ctx.beginPath();
    ctx.moveTo(vertexTop.x,vertexTop.y);
    ctx.lineTo(Ursprung.x,Ursprung.y);
    ctx.lineTo(vertexRight.x,vertexRight.y);
    ctx.stroke();
 
    //Wie zeichnet man einen Pfeil//Zeichnen Sie oben einen Pfeil// ^
    // |
    // |
    ctx.beginPath();
    ctx.moveTo(vertexTop.x,vertexTop.y);
    ctx.lineTo(vertexTop.x - Pfeil.Breite/2,vertexTop.y + Pfeil.Höhe);
    ctx.lineTo(vertexTop.x,vertexTop.y + Pfeil.Höhe/2);
    ctx.lineTo(vertexTop.x + Pfeil.Breite/2,vertexTop.y + Pfeil.Höhe);
    ctx.fill();
 
    //Zeichne den Pfeil nach rechts // --->
    ctx.beginPath();
    ctx.moveTo(VertexRechts.x,VertexRechts.y);
    ctx.lineTo(vertexRight.x - Pfeil.Höhe,vertexRight.y - Pfeil.Breite);
    ctx.lineTo(vertexRight.x - Pfeil.Höhe/2,vertexRight.y);
    ctx.lineTo(vertexRight.x - Pfeil.Höhe,vertexRight.y + Pfeil.Breite);
    ctx.fill();
 
    /*
     * Zeichnen Sie einen Punkt an einer bestimmten Position auf der Koordinatenachse. Koordinatenalgorithmus:
     * Die x-Achse eines Punkts: die x-Koordinate des Ursprungs + die horizontale Entfernung vom Punkt zum Ursprung * Die y-Achse eines Punkts: die y-Koordinate des Ursprungs - die vertikale Entfernung vom Punkt zum Ursprung */
    //Definiere die Koordinaten der Punkte var points = [[10,10],[50,50],[90,90],[130,130],[170,170],[200,200]];
    //Punkte in den Koordinaten zeichnen und mit einer Schleife durch die Koordinaten im Array iterieren //Farbe festlegen ctx.fillStyle = "green";
    Punkte.fürJeden(Funktion(arr){
        ctx.fillRect(origin.x + arr[0],origin.y - arr[1],5,5);
    });
    //Verbinde die Linien basierend auf den Punkten //Verhindere Neuzeichnen ctx.beginPath();
    ctx.Linienbreite = 2;
    ctx.strokeStyle = "gelb";
    Punkte.fürJeden(Funktion (arr) {
        ctx.lineTo(origin.x + arr[0] + 1.8, origin.y - arr[1] + 1.8);
    });
    //Strokectx.stroke();
</Skript>

Die Wirkung ist wie folgt:

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Ein einfaches Beispiel für die Integration von Spring mit Disruptor
  • Einführung und Verwendung von NIO basierend auf Java
  • Java-Praxis: Mit Spring Barcodes und Prüfcodes entwickeln
  • Zusammenfassung der Unterschiede zwischen Java sleep() und wait()
  • Weitere Features der JavaScript-Konsole
  • Java-Übung: Stadtpolyphonverarbeitung
  • Praktischer Java-Filter für sensible Wörter
  • Java-Praxis: Bestellsystem der Foodie Alliance
  • Java-Grundlagen: Vergleich der Sortierleistung von Listenelementen
  • Einführung in den Java Multithreading Disruptor

<<:  So implementieren Sie den Dienststatus zur Nginx-Konfigurationserkennung

>>:  Erweiterte Verwendungsbeispiele für den Befehl mv in Linux

Artikel empfehlen

Docker-Installations- und Konfigurationsschritte für RabbitMQ

Inhaltsverzeichnis Bereitstellung auf einem einze...

So fügen Sie einem Benutzer in einer Linux-Umgebung Sudo-Berechtigungen hinzu

sudo-Konfigurationsdatei Die Standardkonfiguratio...

Zwei Implementierungen des Front-End-Routings von Vue-Router

Inhaltsverzeichnis Modusparameter HashHistorie Ha...

Tiefgreifendes Verständnis der logischen Architektur von MySQL

MySQL ist heute die Datenbank, die von den meiste...

Grundlegende Anweisungen der MySQL-Datendefinitionssprache DDL

MySQL DDL-Anweisungen Was ist DDL, DML. DDL ist e...

Detaillierte Verwendung der MySQL-Funktionen row_number() und over()

Syntaxformat: row_number() über (Partition durch ...

Implementierung der TCPWrappers-Zugriffskontrolle in Centos

1. Übersicht über TCP-Wrapper TCP Wrapper „verpac...

Tutorial zur HTML-Tabellenauszeichnung (9): Zellabstandsattribut CELLSPACING

Damit die Tabelle nicht zu kompakt wirkt, kann zw...

Beispielcode zum automatischen Umbrechen des Pre-Tags

Das Pre-Element definiert vorformatierten Text. In...

Anpassungsmethode des Linux-Peripheriedateisystems

Vorwort Wenn wir von Linux-Systemen sprechen, mei...

Erstellen eines Image-Servers mit FastDFS unter Linux

Inhaltsverzeichnis Serverplanung 1. Systemkompone...

Welche Vorteile bietet die Verwendung eines B+-Baums als Indexstruktur in MySQL?

Vorwort In MySQL verwenden sowohl Innodb als auch...