Bonjour ,

je voudrais utiliser la methode distance(double x1,double y1,double x2,double y2) dans ma classe mais je n'y arrive pas il me met l'erreur :

C:\cours\informatique\L3 info\algo\projet 2\Projet2.java:90: cannot find symbol
symbol : method distance(double,double,double,double)
location: class java.awt.geom.Point2D.Double[]
System.out.println("distance Ny-seattle : "+positions.distance(positions[16].getX(),positions[16].getY(),positions[44].getX(),positions[44].getY()));
^
1 error

voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/* Projet2 19 déc. 2005 07:29:25 */
/**
 * 
 */
 
import java.awt.geom.Point2D;
import java.io.FileReader;
import java.io.IOException;
import java.io.StreamTokenizer;
import java.lang.Object;
 
public class Projet2 {
	// Lecture du graphe dans un tableau de Point2D.Double : ce n'est pas indispensable d'utiliser les Point2D.Double dans ce projet ...
	private static Point2D.Double [] positions;
	/**
         * Lecture du fichier "nomFichier" dans le répertoire courant. Résultat dans l'attribut privé "positions"
         * @param nomFichier
         * @throws IOException
         */
	private void getFichier(String nomFichier) throws IOException {    
		FileReader fichier = new FileReader(nomFichier);
		StreamTokenizer entree = new StreamTokenizer(fichier);
 
		String graphName;
		int graphSize;
 
		graphSize=-1;
 
		////////////////////////////////////////////////////////////////////////////////////////
		// LECTURE DU PREAMBULE
		while(entree.nextToken() != StreamTokenizer.TT_EOF) {			
			// RETROUVER LE NOM
			if ((entree.ttype==StreamTokenizer.TT_WORD) && (entree.sval.equals("NAME"))) {
				if (entree.nextToken()== StreamTokenizer.TT_EOF) throw new IOException("erreur de format");// ':'
				if (entree.nextToken()== StreamTokenizer.TT_EOF) throw new IOException("erreur de format");// 'nom'
				if (entree.ttype!=StreamTokenizer.TT_WORD) throw new IOException("erreur de format");
				graphName=entree.sval;
				System.out.println("Nom du graphe : "+graphName);    		
			}
			// RETROUVER LA DIMENSION
			if ((entree.ttype==StreamTokenizer.TT_WORD) && (entree.sval.equals("DIMENSION"))) {
				if (entree.nextToken()== StreamTokenizer.TT_EOF) throw new IOException("erreur de format");// ':'
				if (entree.nextToken()== StreamTokenizer.TT_EOF) throw new IOException("erreur de format");// 'dimension'
				if (entree.ttype!=StreamTokenizer.TT_NUMBER) throw new IOException("erreur de format");
				graphSize=(int) entree.nval;
				System.out.println("Nombre de noeuds : "+graphSize);
			}
			// FIN DE PREAMBULE
			if ((entree.ttype==StreamTokenizer.TT_WORD) && (entree.sval.equals("SECTION"))) break;
		}  // while
 
		if (graphSize==-1) throw new IOException("erreur de format");
 
		////////////////////////////////////////////////////////////////////////////////////////
		// LECTURE DES DONNEES
		positions=new Point2D.Double[graphSize+1]; // +1 : les points commencent à l'indice 1 et non 0 ...
 
		int indice;
		double x,y;
		while(entree.nextToken() != StreamTokenizer.TT_EOF && entree.ttype==StreamTokenizer.TT_NUMBER) {
			indice=(int) entree.nval;
 
			if (entree.nextToken()!=StreamTokenizer.TT_NUMBER) throw new IOException("erreur de format");
			x=entree.nval;
 
			if (entree.nextToken()!=StreamTokenizer.TT_NUMBER) throw new IOException("erreur de format");
			y=entree.nval;
 
			positions[indice]=new Point2D.Double(x,y);
			System.out.println("Position "+indice+" : "+positions[indice]);			
		}
 
		fichier.close();	    
	}
	/**
         * @param args
         */
	public static void main(String[] args) {		
		Projet2 p=new Projet2();
		System.out.println("**********************");
		System.out.println("Lecture du graphe");
		System.out.println("**********************");
		try {
			p.getFichier("att48.tsp/att48.tsp");
		} catch (Exception e) {
			e.printStackTrace();
		}
 
		System.out.println("New York position 16 Xi :"+positions[16].getX()+" Yi : "+positions[16].getY());
		[color=darkred]System.out.println("distance Ny-seattle : "+positions.distance(positions[16].getX(),positions[16].getY(),positions[44].getX(),positions[44].getY()));[/color]
		System.out.println("Seattle position 44 Xj :"+positions[44].getX()+" Yj : "+positions[44].getY());
 
	}	
 
}