cs_YkS
Messages postés25Date d'inscriptiondimanche 12 juin 2005StatutMembreDernière intervention 6 avril 2008
-
6 avril 2008 à 18:53
Utilisateur anonyme -
7 avril 2008 à 13:12
Bonjour à tous,
Pour mes études (BTS IRIS) je dois développer une application en Java, à savoir une application qui affiche un point sur une carte en fonction de les latitudes et longitudes entrées dans une zone de texte.
J'ai tout fait, mais je n'arrive pas à faire fonctionner drawImage, qui me permettra (quand il fonctionnera correctement) d'afficher une petite image (une boule bleue) sur ma carte, au moment du click sur mon bouton "Valider"..
Seulement, au moment de la compilation, j'obtiens cette erreur:
.\PanelIcone.java:14: cannot find symbol
symbol : method drawImage(javax.swing.ImageIcon,int,int,PanelIcone)
location: class java.awt.Graphics
g.drawImage(icone, (int)coord.getLatitude(), (int)coord.getLongi
tude(), this);
^
1 error
Je vous c/c les bouts de codes qui sont en relation:
public class Map extends JFrame /*implements ActionListener*/{
Coordonnee coord;
private PanelIcone icone;
private JTextField tLatitude;
private JTextField tLongitude;
public Map (String titre, int w, int h, Coordonnee coord ) {
super(titre); // Utilisation du constructeur de JFrame (class dont j'hérite)
this.coord=coord;
this.setDefaultCloseOperation(EXIT_ON_CLOSE); // Permet de fermer la fenêtre (sans demande de confirmation)
this.centreEcran(w,h); // Classe permettant de centrer la fenêtre au démmarage de l'application
this.initialise(); // Construction de la fenêtre principale du programme (Container)
}
public class Coordonnee {
private double longitude;
private double latitude;
private double pas_lat;
private double pas_long;
public final static double hg_lat=19.737;
public final static double hg_long=20.20304;
public final static double bd_lat=14.340;
public final static double bd_long=28.265;
public Coordonnee() {
this.longitude=0;
this.latitude=0;
}
public Coordonnee(double lon, double lat) {
this.longitude=lon;
this.latitude=lat;
}
public double getLongitude() {
pas_long=(bd_long-hg_long)/4000;
return (this.longitude-hg_long)/pas_long;
}
public double getLatitude() {
pas_lat=(hg_lat-bd_lat)/4000;
return (hg_lat-this.latitude)/pas_lat;
}
public void setLongitude(double longitude) {
this.longitude=longitude;
}
public void setLatitude(double latitude) {
this.latitude=latitude;
}
} // Fin class
Voilà, si quelqu'un pouvait m'aiguiller sur ce que je dois faire pour corriger ce problème..
J'ai essayé de contourner le problème en dessinant moi même une ellipse au lieu de faire intervenir un .gif, grâce à une ellipse:
class Ellipse extends Object {
double x, y; // Coordonnées du centre de l'ellipse
int largeur, hauteur; // Dimensions de l'ellipse
Color couleur; // Couleur de l'ellipse
public Ellipse(double x, double y) {
x = coord.getLatitude();
y = coord.getLongitude();
largeur = 2000;
hauteur = 2000;
couleur = Color.red;
}
}
Mais ça ne fonctionne pas mieux, et puis je préférerai quand même utiliser le .gif
Je vous remercie d'avoir pris le temps de lire ce topic (très..) long. Et merci d'avances pour vos éventuelles futures réponses.