Maison  >  Article  >  Java  >  Partagez des méthodes et des exemples de dessin de cœurs en code Java

Partagez des méthodes et des exemples de dessin de cœurs en code Java

王林
王林original
2024-02-20 12:24:06806parcourir

Partagez des méthodes et des exemples de dessin de cœurs en code Java

Partage de conseils et d'exemples de dessin d'amour en code Java

L'amour, en tant que graphique spécial, est souvent utilisé pour exprimer l'amour et des émotions chaleureuses. En programmation Java, nous pouvons utiliser quelques techniques simples pour dessiner de magnifiques motifs d’amour. Cet article partagera quelques conseils et exemples de dessin d'amour, dans l'espoir d'être utile aux programmeurs Java.

Tout d’abord, nous devons comprendre la forme et le principe de base de l’amour. Un cœur se compose généralement de deux arcs qui se chevauchent avec les mêmes points de départ et d’arrivée. Nous pouvons obtenir l’effet cœur en dessinant deux arcs de même taille et en ajustant leur position, leur angle de rotation et leur taille.

Ensuite, examinons quelques exemples de code spécifiques.

Exemple 1 : Dessinez un cœur simple

import java.awt.Color;
import java.awt.Graphics;
import import java.awt.Graphics2D;
import import java.awt.RenderingHints;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class HeartDrawingExample extends JPanel {
  
  @Override
  protected void paintComponent(Graphics g) {
    super.paintComponent(g);

    Graphics2D g2d = (Graphics2D) g;
    g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

    int width = getWidth();
    int height = getHeight();

    g2d.setColor(Color.RED);
    g2d.fillArc(width/2 - width/4, height/2 - height/4, width/2, height/2, 0, 180);
    g2d.fillArc(width/2 - width/4, height/2 - height/4, width/2, height/2, 180, 180);
    g2d.fillRect(width/2 - width/8, height/2, width/4, height/2);
  }

  public static void main(String[] args) {
    JFrame frame = new JFrame("Heart Drawing Example");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.add(new HeartDrawingExample());
    frame.setSize(400, 400);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
  }
}

Le code ci-dessus montre comment utiliser la bibliothèque Swing de Java pour créer une instance de dessin de cœur simple. Tout d’abord, nous avons créé une sous-classe JPanel HeartDrawingExample et remplacé la méthode paintComponent pour dessiner des cœurs. Dans la méthode de dessin, nous utilisons l'objet Graphics2D pour dessiner des graphiques et définir les paramètres de rendu d'anticrénelage afin d'obtenir de meilleurs effets de dessin. Ensuite, nous avons défini la couleur sur rouge et utilisé la méthode fillArc pour dessiner deux arcs et un rectangle, formant finalement un effet de cœur. Enfin, nous avons créé un objet JFrame, y avons ajouté HeartDrawingExample et défini la taille et la position de la fenêtre, affichant enfin le motif de cœur que nous avons dessiné.

Exemple 2 : Dessinez un cœur à battement de cœur dynamique

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import import java.awt.Graphics2D;
import import java.awt.RenderingHints;
import import java.awt.event.ActionEvent;
import import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;

public class DynamicHeartbeatHeartExample extends JPanel implements ActionListener {
  
  private int width = 200;
  private int height = 200;
  private int scale = 10;
  private int angle = 0;

  public DynamicHeartbeatHeartExample() {
    Timer timer = new Timer(100, this);
    timer.start();
  }
  
  @Override
  protected void paintComponent(Graphics g) {
    super.paintComponent(g);

    Graphics2D g2d = (Graphics2D) g;
    g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

    int size = scale * (width/2);

    g2d.setColor(Color.RED);
    g2d.fillArc(getWidth()/2 - size/2, getHeight()/2 - size/2, size, size, angle, 180 - angle);
    g2d.fillArc(getWidth()/2 - size/2, getHeight()/2 - size/2, size, size, 180 + angle, 180 - angle);
    g2d.fillRect(getWidth()/2 - size/4, getHeight()/2, size/2, size);
  }

  @Override
  public Dimension getPreferredSize() {
    return new Dimension(width*scale, height*scale);
  }

  @Override
  public void actionPerformed(ActionEvent e) {
    if (scale > 2) {
      scale--;
    } else {
      scale = 10;
    }
    angle = (angle + 10) % 360;
    repaint();
  }

  public static void main(String[] args) {
    JFrame frame = new JFrame("Dynamic Heartbeat Heart Example");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.add(new DynamicHeartbeatHeartExample());
    frame.pack();
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
  }
}

Le code ci-dessus montre comment créer une instance de dessin de cœur à battement de cœur dynamique. Nous avons utilisé une minuterie pour mettre régulièrement à jour la taille et l'angle du cœur, créant ainsi un effet de battement dynamique. Dans la méthode de dessin, nous dessinons le cœur en fonction de la taille et de l'angle actuels, formant un rythme cardiaque battant. Enfin, nous définissons une méthode principale pour créer et afficher cette fenêtre cœur dynamique.

À travers les deux exemples ci-dessus, nous pouvons voir que l'utilisation du langage de programmation Java peut dessiner de manière flexible de magnifiques modèles d'amour. En ajustant les paramètres et les méthodes dans le code, vous pouvez également obtenir davantage de styles d'effets amoureux. J'espère que ces exemples pourront fournir de l'aide et des idées aux programmeurs Java lorsqu'ils dessinent des modèles d'amour. Que la chaleur et l'émotion de l'amour soient transmises et exprimées dans le monde de la programmation.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn