Grazie l'avevo vista, così come (anche se non ricordo dove) avevo trovato il seguente codice:
import java.awt.Graphics;
import javax.swing.JPanel;
public class DrawSin extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
int w=getWidth();
int h=getHeight();
int i,x,senoRelativo;
for (i=0;i<w;i++)
{
senoRelativo=(int)((h/2)*Math.sin(i*2*Math.PI/w));
x = (h/2) - senoRelativo;
g.drawLine(i,x,i,x);
}
}
}
import javax.swing.JFrame;
public class CreateWindow
{
public static void main (String args[])
{
DrawSin sin= new DrawSin();
JFrame application = new JFrame();
application.setDefaultCloseOperation(JFrame.EXIT_O N_CLOSE);
application.add(sin);
application.setSize(640,480);
application.setVisible(true);
}
}
Questo però apre un JFrame e genera una sinusoide proporzionale alla finestra, mentre io dovrei disegnarla con la formula che ho citato sopra.
Anzi a dire il vero dovrei disegnarne 3 (una con la costante 23, una con 28 e una con 33), ma quando vado a sostituire una delle tre formule a quella di questo codice mi ritrovo o con una linea piatta, oppure con tante forme d'onda proporzionali in numero alla costante che devo moltiplicare (quest'ultimo caso se mantengo il /w)!