Les formes en AWT

Présentation des différentes formes plus ou moins complexes qu’AWT nous permet de gérer.

Présentation des formes

  • Shape
  • Héritent de Shape : Polygon, GeneralPath, Line2D, QuadCurve2D, CubicCurve2D, Area, RectangularShape.
    Héritent de RectangularShape : Arc2D, Ellipse2D, Rectangle2D {Rectangle}, RoundRectangle2D.

  • Rectangle
  • Créer par les coordonnées représentant la diagonale :rect.setFrameFromDiagonal

  • Ellipse
  • Fournir x, y, longueur, hauteur, angleDeDebut, angle de Fin, et la closure.
    La closure : Arc2D.PIE (Aucune fermeture), Arc2D.OPEN (2 segments reliant début courbe et Centre), Arc2D.CHORD (un segment reliant début et fin de courbe).
    Gestion des angles déformés :Math.toDegrees(Math.atan2(Math.sin(angle)*width), Math.toDegrees(Math.cos(angle)*height))

  • Path
  • Suite de poins. moveTo(x,y)lineTo(x,y)curveTo(x1,y1,x2,y2, endX, endY)closePathappend(shape).

  • Area
  • add : union de deux shapes. substract : A et non B, intersect, exclusiveOr.

Les outils

  • draw
  • dessine le contour.

  • setStroke
  • BasicStroke(epaisseur, typeBrosse, typeJointure, float[ motif de ligne (ligne alternée))

Le remplissage

  • GradientPaint(point1, couleur1, point2, couleur2)
  • Fournit un dégradé entre les points 1 et 2, le reste étant de couleur unie. Le dégradé peut être répété en passant le paramètre cyclic à true.

  • TexturePaint(bufferedImage, Rectangle2D anchor)
  • buffer = new BufferedImage(width, height, TYPE_INT_ARGB);
    Graphics2D g2 = buffer.createGraphics;
  • Charger une image
  • Image img = Toolkit.getDefaultToolkit().getImage(source);
    MediaTracker tracker = new MEdiaTracker(this);
    tracker.addImage(image, 0);
    try {
       tracker.waitForID(0);
    } catch (InterruptedException ie) {}
    buffer.createGraphics().drawImage(image, 0, 0, null);
    

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *