package Grafice;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Rectangle;
import java.awt.GridBagLayout;
import javax.swing.JPanel;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import java.awt.Graphics;
public class linii_v1_1 extends JApplet {
private static final long serialVersionUID = 1L;
private JPanel c_panel_1 = null; // panel_1 cu controale plasate
private JPanel panel_1 = null; // panoul 1
private JLabel etich_1 = null; // eticheta 1
private JButton but_1 = null; // butonul 1
private Graphics grf=null;
/**
* Aceasta metoda initializeaza: this
*
* @returneaza void
*/
public void init() {
this.setSize(350, 300);
this.setContentPane(init_panel_1());
}
/**
* Constructorul implicit pentru "linii_v2"
*/
public linii_v1_1() {
super();
}
double f(double x) {
return (Math.sin(x/7) + 2) * getSize().height /5;
}
public void deseneaza() {
if(grf==null){
grf=panel_1.getGraphics();
}
grf.clearRect(0, 0, getSize().width, getSize().height);
grf.setColor(Color.RED);
for (int x = 0 ; x < getSize().width ; x++) {
grf.drawLine(x, (int)f(x), x + 1, (int)f(x + 1));
}
}
/**
* /**
* Aceasta metoda creaza panelul: "but_1"
* Returneaza but_1 de tipul: javax.swing.JButton
*/
private JButton creaza_but_1() {
if (but_1 == null) {
but_1 = new JButton();
but_1.setBounds(new Rectangle(120, 260, 70, 30));
but_1.setText("Start");
but_1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
deseneaza();
}
});
}
return but_1;
}
/**
* This method initializes jPanel
*
* @return javax.swing.JPanel
*/
private JPanel creaza_panel_1() {
if (panel_1 == null) {
panel_1 = new JPanel();
panel_1.setLayout(new GridBagLayout());
panel_1.setBounds(new Rectangle(20, 30, 300, 220));
// se forteaza culoarea fundalului
this.setBackground(c_panel_1.getBackground());
}
return panel_1;
}
/**
* Aceasta metoda initializeaza panel_1 plasand controalele dorite
* Returneaza c_panel_1 de tipul: javax.swing.JPanel
*/
private JPanel init_panel_1() {
if (c_panel_1 == null) {
etich_1 = new JLabel();
etich_1.setBounds(new Rectangle(10, 10, 200, 10));
etich_1.setText("Apasati butonul Start");
c_panel_1 = new JPanel();
c_panel_1.setLayout(null);
c_panel_1.add(creaza_but_1(), null);
c_panel_1.add(etich_1, null);
c_panel_1.add(creaza_panel_1(), null);
c_panel_1.setLayout(new BorderLayout());
}
return c_panel_1;
}
}
|
double f(double x) {
return 110+(Math.cos(x/2) * Math.sin(x/20))* getSize().height/3;
}
|
package Grafice;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Rectangle;
import java.awt.GridBagLayout;
import javax.swing.JPanel;
import javax.swing.JApplet;
import javax.swing.JLabel;
import javax.swing.JSlider;
public class linii_v4 extends JApplet {
private static final long serialVersionUID = 1L;
private JPanel c_panel_1 = null; //panel_1 cu controale plasate
private JLabel etich_1 = null; // eticheta 1
private JSlider slider_1 = null; // slider-ul 1
private JPanel panel_1 = null; // panoul 1
private Graphics g = null; // grafica
/**
* Aceasta metoda initializeaza: this
*
* @returneaza void
*/
public void init() {
this.setSize(350,320);
this.setContentPane(init_panel_1());
}
/**
* Constructorul implicit pentru "linii_v4"
*/
public linii_v4() {
super();
}
/**
* Aceasta metoda creaza panelul: "panel_1"
* Returneaza panel_1 de tipul: javax.swing.JPanel
*/
private JPanel creaza_panel_1() {
if (panel_1 == null) {
panel_1 = new JPanel();
panel_1.setLayout(new GridBagLayout());
panel_1.setBounds(new Rectangle(20, 50, 300, 170));
}
return panel_1;
}
/**
* Aceasta metoda initializeaza panel_1 plasand controalele dorite
* Returneaza c_panel_1 de tipul: javax.swing.JPanel
*/
private JPanel init_panel_1() {
if (c_panel_1 == null) {
etich_1 = new JLabel();
etich_1.setBounds(new Rectangle(20, 10, 100, 10));
etich_1.setText("Afisare functia sinus");
creaza_slider_1();
slider_1.setBounds(new Rectangle(20, 250, 300, 25));
c_panel_1 = new JPanel();
c_panel_1.setLayout(null);
c_panel_1.add(etich_1, null);
c_panel_1.add(creaza_slider_1(), null);
c_panel_1.add(creaza_panel_1(), null);
c_panel_1.setLayout(new BorderLayout());
//this.setBackground(Color.white);
//this.setBackground(Color.lightGray);
this.setBackground(c_panel_1.getBackground());
}
return c_panel_1;
}
private double f(double x) {
return 20+(Math.sin(slider_1.getValue()*x/300) + 1) * getSize().height/5;
}
/**
* Aceasta metoda initializeaza controlul de tip slider: slider_1
* @returneaza slider_1 de tipul: javax.swing.JSlider
*/
private JSlider creaza_slider_1() {
if (slider_1 == null) {
slider_1 = new JSlider();
slider_1.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent e) {
etich_1.setText(Integer.toString(slider_1.getValue()));
if(g==null){
g= panel_1.getGraphics();
}
g.clearRect(0, 0, getSize().width, getSize().height);
//g.setColor(Color.RED);
g.setColor(Color.blue);
for (int x = 0 ; x < getSize().width ; x++)
{
g.drawLine(x, (int)f(x), x + 1, (int)f(x + 1));
}
}
});
}
return slider_1;
}
}
|
|
|