import sk.uniba.fmph.pocprak.simplegraphics.*;
import java.awt.*;
public class Pole6 {
  public static void main(String[] args) {
    Killer.createKiller();

    Kreslic krxy = new Kreslic(new GrAxisX( -0.5, 0.5, 0.),
                               new GrAxisY( -0.5, 0.5, 0.));
    //krxy.nakresliOsi();
    naboj q1 = new naboj(0.22, 0.0, 1.);
    naboj q2 = new naboj( -0.22, 0.0, -1.);
    q1.draw(krxy.gr, 4);
    q2.draw(krxy.gr, 4);
    krxy.gr.repaint();
    naboj qs[] = {
        q1, q2};
    poleE pE = new poleE(qs);

    for (int i = 0; i < 20; i++) {
      double x = -0.525 + 0.05 * i;
      for (int j = 0; j < 20; j++) {
        double y = -0.525 + 0.05 * j;
        point pp = new point(x, y);
        vector E1 = pE.E(pp).unit();
        E1.draw(krxy.gr, pp, 0.02);

      }
    }
    krxy.gr.repaint();
    System.out.println("Cakajte na pokyn. Dostaneto ho ked sa vykreslia silociary");
    for(int i=0;i<10;i++){
      double psi = Math.PI/5*i;
      double x = 0.25+0.05*Math.cos(psi);
      double y = 0.05 * Math.sin(psi);
      point ppp = new point(x,y);
      pE.silociara(ppp,krxy.gr);
      krxy.gr.repaint();
    }

    for(int i=0;i<10;i++){
      double psi = Math.PI/10.+Math.PI/5*i;
      double x = -0.25+0.05*Math.cos(psi);
      double y = 0.05 * Math.sin(psi);
      point ppp = new point(x,y);
      pE.silociara(ppp,krxy.gr);
      krxy.gr.repaint();
    }

    krxy.gr.setPaint(Color.CYAN);
    point p1= new point(0.2,0.1); p1.draw(krxy.gr,3);
    krxy.gr.repaint();

    krxy.gr.setPaint(Color.GREEN);
    System.out.println("Nakreslime si 10 ekvipotencialnych ciar. Na vyvu vzduy koliknite mysou na bod");
    System.out.println("z ktoreho chcete zacat kreslit ekvipotencialnu ciaru");
    point ppp = new point(0,0);
    for(int i=1;i<11;i++){
      System.out.print(i+"  ");
      ppp.getMousePosition(krxy.gr);
      System.out.println("x= "+ppp.x+"   y= "+ppp.y);
      pE.ekvipotciara(ppp,krxy.gr);
    }

    System.out.println("Koniec programu, zatvorte okno");
  }
}
