• Aucun résultat trouvé

Document de travail pour le TP noté – tous sujets confondusVous disposez dans l'archive correspondant à votre sujet :–de l'énoncé à traiter (document

N/A
N/A
Protected

Academic year: 2022

Partager "Document de travail pour le TP noté – tous sujets confondusVous disposez dans l'archive correspondant à votre sujet :–de l'énoncé à traiter (document"

Copied!
4
0
0

Texte intégral

(1)

Module Info31 – L2 Sciences & Techniques Université de Bourgogne

Document de travail pour le TP noté – tous sujets confondus Vous disposez dans l'archive correspondant à votre sujet :

– de l'énoncé à traiter (document sujetxxxx.pdf)

– d'un schéma de programme java à compléter (fichier de nom sujet_base.java). Ce schéma de programme doit être renommé en fonction de votre sujet (sujetxxxx.java)

– pour référence, si nécessaire, du programme exhaustif de démonstration des primitives graphiques fournies par Oracle (dessineOracle.java) et d'un extrait (test.java)

Vous devez :

récupérer et ouvrir l'archive correspondant à votre sujet et renommer le répertoire qu'elle contient à vos noms et prénoms, sans accents ni espaces

renommer le schéma de programme sujet_base.java selon votre sujet (sujetxxxx.java) : n'oubliez pas de modifier le nom de la classe ainsi que la déclaration d'objet dans la méthode main() – modifier le titre de la fenêtre graphique avec vos noms, prénoms et votre groupe de TP noté (le

nom du groupe est indiqué sur la feuille d'émargement) – écrire et tester le programme qui vous est demandé

– faire une copie d'écran de la fenêtre graphique que génère votre programme – laisser dans votre répertoire de travail exclusivement :

– le source de votre programme sujetxxxx.java

– la copie d'écran que vous avez faite

– faire une archive de votre répertoire de travail et envoyer par email cette archive à : [email protected]

ET à votre responsable de TP noté :

[email protected] ou [email protected]

Vous pouvez avoir besoin :

– de passer des paramètres à votre programme Java lorsque vous l'exécutez. Par exemple, pour récupérer dans les variables entières a et b les deux paramètres entiers passés à un programme Java, vous devez écrire dans la méthode main de votre programme :

public static void main(String s[]) { int a,b ;

a=Integer.parseInt(s[0]);

b=Integer.parseInt(s[1]);

– d'extraire le ie caractère d'une chaîne (variable ch de type String) avec : ch.charAt(i)

attention, le premier caractère de la chaîne est à l'indice 0 – de calculer une racine carrée avec : Math.sqrt()

TP noté-1-

(2)

Module Info31 – L2 Sciences & Techniques Université de Bourgogne

– de programmer une pause dans l'exécution de votre programme avec :

int attente=300; // en millisecondes try { Thread.sleep(attente);

} catch ( java.lang.InterruptedException ie) { //System.out.println("*");

}

– de primitives graphiques

celles qui sont présentées ci-dessous s'appliquent à g2, un objet de la classe Graphics2D : Pour choisir des couleurs de tracé ou de coloriage, vous disposez de :

g2.setColor(Color.blue);

g2.setPaint(Color.blue);

Les couleurs disponibles sont :

static Color black static Color blue static Color cyan static Color darkGray static Color gray static Color green static Color lightGray static Color magenta static Color orange static Color pink static Color red static Color white static Color yellow

Pour définir l'épaisseur du trait à utiliser (un entier ou un réel de type float), vous disposez de :

g2.setStroke(new BasicStroke(epaisseur));

Pour tracer ou colorier des figures géométriques simples, vous disposez de :

Dans les primitives ci-dessus, g2.draw permet de dessiner un contour alors que g2.fill permet de colorier la forme indiquée.

TP noté-2-

A

(xa,ya) B

(xb,yb) g2.draw(new Line2D.Double(xa,ya,xb,yb));

A (xa,ya)

larg

h g2.draw(new Rectangle2D.Double(xa, ya, larg, h));

g2.fill(new Rectangle2D.Double(xa, ya, larg, h));

A (xa,ya)

diam

g2.draw(new Ellipse2D.Double(xa, ya, diam, diam));

g2.fill(new Ellipse2D.Double(xa, ya, diam, diam));

diam

SEGMENT

RECTANGLE-CARRE

CERCLE

(3)

Module Info31 – L2 Sciences & Techniques Université de Bourgogne

Pour définir (puis tracer ou colorier) un polygone, vous devez : – déclarer une variable polygone par

GeneralPath nom = new GeneralPath(GeneralPath.WIND_EVEN_ODD,nb);

où nb est le nombre de points du polygone, – indiquer les sommets du polygone par

nom.moveTo(x,x);

nom.lineTo(x,x);

ces méthodes permettent respectivement de se déplacer au point indiqué (par ses coordonnées x et y) ou de tracer un segment depuis la position courante vers le point indiqué, – ne pas oublier de revenir au premier sommet par nom.moveTo(x,x) ou de fermer votre polygone

par nom.closePath()

– utiliser les méthodes

g2.draw(nom);

g2.fill(nom);

pour tracer ou de colorier le polygone Programme d'exemple test.java (extrait) :

public void paint(Graphics g) // doit appeler votre méthode de dessin {

dessine(g); // paramètre g obligatoire

// vous pouvez ajouter d'autres paramètres }// fin methode

public void dessine(Graphics g) { Graphics2D g2 = (Graphics2D) g;

g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

GeneralPath tr = new GeneralPath(GeneralPath.WIND_EVEN_ODD,3); // triangle gris via // polygone 3 sommets tr.moveTo(10,100);

tr.lineTo(10,140);

tr.lineTo(40,140);

tr.closePath();

g2.setPaint(Color.lightGray);

g2.fill(tr);

g2.setStroke(new BasicStroke(2)); // trait epais

g2.setColor(Color.blue); // tracé d'un segment bleu g2.draw(new Line2D.Double(10,10,60,10));

g2.setColor(Color.red); // tracé d'un point rouge g2.draw(new Line2D.Double(5,7,5,7));

g2.setColor(Color.black); // trait fin et couleur noire g2.setStroke(new BasicStroke(1));

g2.draw(new Rectangle2D.Double(10,20, 10, 10)); // tracé: carré-rectangle-cercle g2.draw(new Rectangle2D.Double(40,20, 30, 10));

g2.draw(new Ellipse2D.Double(80,20,10,10));

g2.fill(new Rectangle2D.Double(10,50, 10, 10)); // remplissage g2.fill(new Rectangle2D.Double(40,50, 30, 10));

g2.fill(new Ellipse2D.Double(80,50,10,10));

}// fin dessine

TP noté-3-

(4)

Module Info31 – L2 Sciences & Techniques Université de Bourgogne

quelque soit votre sujet

vous n'avez pas à tenir compte de l'affichage inversé de la fenêtre graphique

TP noté-4-

Références

Documents relatifs

In this chapter we show that for a large class of equational theories, namely subterm convergent equational theories, static equivalence can be decided in polynomial time.. This

Kant says here that Leibniz, thinking to be able to sensibly talk about noumena, abstracted from the extrinsic (i.e. spatio-temporal) properties that may distinguish

[r]

applied the joint bilateral filter for image upsampling and structure-preserving image decomposition, respectively. In particular, a patch-based guidance is constructed in [4] to

Section 3 describes the static semantics of GTFL ⊕ , a language with both gradual unions and the unknown type, using the Abstracting Gradual Typing methodology.. Section 4 describes

Cette circulaire modifie la circulaire interministérielle AD 98-5 du 19 juin 1998 relative au traitement des archives des directions départementales de l'équipement

Le schéma régional fixe cadre dans lequel devront s’intégrer les schémas départementaux. Outre les règles de mise en œuvre et les principes de mutualisation retenus, le

See ColOr also uses computer vision techniques to process higher visual features of the images in order to produce acoustic virtual objects (Figure 4).. Actually,