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
| public void glisserFFT(int i)
{
// On ajoute le listener pour filtrer le signal
this.graphsFFT[i].getGraphe().addMouseListener(new MouseAdapter()
{
// Quand la souris entre dans le panel
public void mouseEntered(MouseEvent e)
{
setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));
}
// Quand la souris sort du panel
public void mouseExited(MouseEvent e)
{
repaint();
int i = ((JGrille)e.getSource()).getNumVoie();
setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
Graphics g = ((JGrille)e.getSource()).getGraphics();
g.setColor(Color.white);
g.drawLine(donnees.getDonneesFFT(i).getXFreq(),1,donnees.getDonneesFFT(i).getXFreq(),graphsFFT[i].getHGraph()-2);
g.setFont(new Font(g.getFont().getFamily(),Font.BOLD,15));
g.drawString(donnees.getDonneesFFT(i).getFreqText(),4,20);
}
});
this.graphsFFT[i].getGraphe().addMouseMotionListener(new MouseMotionAdapter()
{
// Quand la souris bouge
public void mouseMoved(MouseEvent e)
{
repaint();
int i = ((JGrille)e.getSource()).getNumVoie();
Graphics g = ((JGrille)e.getSource()).getGraphics();
g.setColor(Color.white);
g.drawLine(donnees.getDonneesFFT(i).getXFreq(),1,donnees.getDonneesFFT(i).getXFreq(),graphsFFT[i].getHGraph()-2);
g.setFont(new Font(g.getFont().getFamily(),Font.BOLD,15));
g.drawString(donnees.getDonneesFFT(i).getFreqText(),4,20);
DonneesFFT d = donnees.getDonneesFFT(i);
d.setXFreq(e.getX());
if(d.getXFreq() == 0) d.setXFreq(1);
if(d.getXFreq() == graphsFFT[i].getLGraph() - 1) d.setXFreq(graphsFFT[i].getLGraph() - 2);
g.setColor(Color.blue);
g.drawLine(d.getXFreq(),1,d.getXFreq(),graphsFFT[i].getHGraph()-2);
double freq = ((int)(10.0*d.getXFreq()*donnees.getFreqEch()/(2*(graphsFFT[i].getLGraph()-1))))/10.0;
d.setFreqText(freq+" Hz");
g.setFont(new Font(g.getFont().getFamily(),Font.BOLD,15));
g.drawString(d.getFreqText(),4,20);
donnees.setDonneesFFT(d,i);
}
});
} |
Partager