Advertisement
ayylmeo123

gg

Sep 23rd, 2018
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.78 KB | None | 0 0
  1.  
  2.     private void jPanel1MousePressed(java.awt.event.MouseEvent evt) {                                    
  3.      this.pirmX = evt.getX()-canvas.offsetX;
  4.      this.pirmY = -(evt.getY()-canvas.offsetY);
  5.      this.otrX = this.pirmX;
  6.      this.otrY = this.pirmY;
  7.      this.dragging = true;
  8.      int a = this.pirmX, b= this.pirmY;
  9.      canvas.showBlackPixel(a, b);
  10.     }                                    
  11.  
  12.     private void jPanel1MouseDragged(java.awt.event.MouseEvent evt) {                                    
  13.        
  14.         if(!dragging){
  15.             return;
  16.         }
  17.         int a0 = this.pirmX;
  18.         int a1 = this.otrX;
  19.         int b0 = this.pirmY;
  20.         int b1 = this.otrY;
  21.        int xn= a0, yn=b0, dx=Math.abs(a1-a0), dy=Math.abs(b1-b0);
  22.        int xi,yi;
  23.        
  24.         if(a0<a1){    //Pārbauda taisnes virzienu
  25.             xi=1;
  26.         }else{
  27.             xi=-1;
  28.         }
  29.         if(b0<b1){  //ja y1<mazaks neka pedejais, tad vajag palielināt y,
  30.             yi=1;   //bet ja pirma punkta vertiba ir lielaka neka pedeja, tad vajag samazinat
  31.         }else{
  32.             yi=-1;
  33.         }
  34.         canvas.showColorPixel(a0, b0, myWhite);
  35.  
  36.         int pn;
  37.         int i = -1;
  38.         if(dx>=dy){
  39.             pn=2*dy-dx;
  40.             i++;
  41.             while(xn!=a1){
  42.                 if(pn>0){
  43.                     xn=xn+xi;
  44.                     yn=yn+yi;
  45.                     pn=pn+2*dy-2*dx;
  46.                     i++;
  47.                 }else{
  48.                     xn=xn+xi;
  49.                     pn=pn+2*dy;
  50.                     i++;
  51.                 }
  52.                 canvas.showColorPixel(xn, yn, myWhite);
  53.             }
  54.         }else{
  55.             pn=2*dx-dy;
  56.             i++;
  57.             while(yn!=a1){
  58.                 if(pn>0){
  59.                     xn=xn+xi;
  60.                     yn=yn+yi;
  61.                     pn=pn+2*dx-2*dy;
  62.                     i++;
  63.                 }else{
  64.                     yn=yn+yi;
  65.                     pn=pn+2*dx;
  66.                     i++;
  67.                 }
  68.                 canvas.showColorPixel(xn, yn, myWhite);
  69.             }
  70.         }
  71.         this.otrX = evt.getX() - canvas.offsetX;
  72.         this.otrY = -(evt.getY() - canvas.offsetY);
  73.         a1 = this.otrX;
  74.         b1 = this.otrY;
  75.         a0 = this.pirmX;
  76.         b0 = this.pirmY;
  77.         xn= a0; yn=b0; dx=Math.abs(a1-a0); dy=Math.abs(b1-b0);
  78.          if(a0<a1){    //Pārbauda taisnes virzienu
  79.             xi=1;
  80.         }else{
  81.             xi=-1;
  82.         }
  83.         if(b0<b1){  //ja y1<mazaks neka pedejais, tad vajag palielināt y,
  84.             yi=1;   //bet ja pirma punkta vertiba ir lielaka neka pedeja, tad vajag samazinat
  85.         }else{
  86.             yi=-1;
  87.         }
  88.         canvas.showBlackPixel(a0,b0);  
  89.         if(dx>=dy){
  90.             pn=2*dy-dx;
  91.             i++;
  92.             while(xn!=a1){
  93.                 if(pn>0){
  94.                     xn=xn+xi;
  95.                     yn=yn+yi;
  96.                     pn=pn+2*dy-2*dx;
  97.                     i++;
  98.                 }else{
  99.                     xn=xn+xi;
  100.                     pn=pn+2*dy;
  101.                     i++;
  102.                 }
  103.                 canvas.showBlackPixel(xn,yn);
  104.             }
  105.         }else{
  106.             pn=2*dx-dy;
  107.             i++;
  108.             while(yn!=a1){
  109.                 if(pn>0){
  110.                     xn=xn+xi;
  111.                     yn=yn+yi;
  112.                     pn=pn+2*dx-2*dy;
  113.                     i++;
  114.                 }else{
  115.                     yn=yn+yi;
  116.                     pn=pn+2*dx;
  117.                     i++;
  118.                 }
  119.                 canvas.showBlackPixel(xn,yn);
  120.             }
  121.         }
  122.          
  123.        
  124.     }                                    
  125.  
  126.     private void jPanel1MouseReleased(java.awt.event.MouseEvent evt) {                                      
  127.        
  128.         if(!dragging){
  129.             return;
  130.         }
  131.         int a0 = this.pirmX;
  132.         int a1 = this.otrX;
  133.         int b0 = this.pirmX;
  134.         int b1 = this.otrX;
  135.        int xn= a0, yn=b0, dx=Math.abs(a1-a0), dy=Math.abs(b1-b0);
  136.        int xi,yi;
  137.        
  138.         if(a0<a1){    //Pārbauda taisnes virzienu
  139.             xi=1;
  140.         }else{
  141.             xi=-1;
  142.         }
  143.         if(a0<a1){  //ja y1<mazaks neka pedejais, tad vajag palielināt y,
  144.             yi=1;   //bet ja pirma punkta vertiba ir lielaka neka pedeja, tad vajag samazinat
  145.         }else{
  146.             yi=-1;
  147.         }
  148.         canvas.showColorPixel(a0, b0, myWhite);
  149.        
  150.         int pn;
  151.         int i = -1;
  152.         if(dx>=dy){
  153.             pn=2*dy-dx;
  154.             i++;
  155.             while(xn!=a1){
  156.                 if(pn>0){
  157.                     xn=xn+xi;
  158.                     yn=yn+yi;
  159.                     pn=pn+2*dy-2*dx;
  160.                     i++;
  161.                 }else{
  162.                     xn=xn+xi;
  163.                     pn=pn+2*dy;
  164.                     i++;
  165.                 }
  166.                 canvas.showColorPixel(xn, yn, myWhite);
  167.             }
  168.         }else{
  169.             pn=2*dx-dy;
  170.             i++;
  171.             while(yn!=a1){
  172.                 if(pn>0){
  173.                     xn=xn+xi;
  174.                     yn=yn+yi;
  175.                     pn=pn+2*dx-2*dy;
  176.                     i++;
  177.                 }else{
  178.                     yn=yn+yi;
  179.                     pn=pn+2*dx;
  180.                     i++;
  181.                 }
  182.                 canvas.showColorPixel(xn, yn, myWhite);
  183.             }
  184.         }
  185.         a1 = evt.getX() - canvas.offsetX;
  186.         b1 = -(evt.getY() - canvas.offsetY);
  187.         xn= a0; yn=b0; dx=Math.abs(a1-a0); dy=Math.abs(b1-b0);
  188.         if(a0<a1){    //Pārbauda taisnes virzienu
  189.             xi=1;
  190.         }else{
  191.             xi=-1;
  192.         }
  193.         if(a0<a1){  //ja y1<mazaks neka pedejais, tad vajag palielināt y,
  194.             yi=1;   //bet ja pirma punkta vertiba ir lielaka neka pedeja, tad vajag samazinat
  195.         }else{
  196.             yi=-1;
  197.         }
  198.        
  199.         canvas.showBlackPixel(a0,b0);
  200.        
  201.         if(dx>=dy){
  202.             pn=2*dy-dx;
  203.             i++;
  204.             while(xn!=a1){
  205.                 if(pn>0){
  206.                     xn=xn+xi;
  207.                     yn=yn+yi;
  208.                     pn=pn+2*dy-2*dx;
  209.                     i++;
  210.                 }else{
  211.                     xn=xn+xi;
  212.                     pn=pn+2*dy;
  213.                     i++;
  214.                 }
  215.                 canvas.showBlackPixel(xn,yn);
  216.             }
  217.         }else{
  218.             pn=2*dx-dy;
  219.             i++;
  220.             while(yn!=a1){
  221.                 if(pn>0){
  222.                     xn=xn+xi;
  223.                     yn=yn+yi;
  224.                     pn=pn+2*dx-2*dy;
  225.                     i++;
  226.                 }else{
  227.                     yn=yn+yi;
  228.                     pn=pn+2*dx;
  229.                     i++;
  230.                 }
  231.                 canvas.showBlackPixel(xn,yn);
  232.             }
  233.         }
  234.        
  235.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement