Advertisement
Vasil_Vasilev

Canvas

Apr 22nd, 2017
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 7.41 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3.     <head>
  4.         <title>My First Page!</title>
  5.     </head>
  6.         <body>
  7.             <form name="data_IN">
  8.                 d9:<input type="text" name="Ax" value="30"><br>
  9.                 d10:<input type="text" name="Ay" value="60"><br>
  10.                
  11.             </form>
  12.             <button onclick="draw();">Draw!</button>
  13.             <button onclick="clean();">Cleaning!</button>
  14.              <button onclick="draw1();">Draw!</button>
  15.                  
  16.             <br>
  17.         <canvas id="myCanvas" width="1000" height="500" style="border:1px solid #d3d3d3;">
  18.         Your browser does not support the HTML5 canvas tag.</canvas>  
  19.        
  20.             <script>
  21.                 var c = document.getElementById("myCanvas");
  22.                 var ctx = c.getContext("2d");
  23.                    
  24.                     function clean()
  25.                         {
  26.                         ctx.clearRect(0, 0, c.width, c.height);
  27.                         }
  28.  
  29.  
  30.  
  31.                     function draw1 ()
  32.                         {
  33.                             var vd9=document.data_IN.Ax.value*1;
  34.                             var vd10=document.data_IN.Ay.value*1;
  35.                             var dvd9=vd9/2;
  36.                             var dvd10=(vd10-60)/2;
  37.  
  38.                             ctx.setLineDash([25, 5,3,5]);
  39.                             ctx.beginPath();
  40.                               ctx.moveTo(243, 200-dvd9*2-50);
  41.                               ctx.lineTo(243, 210);
  42.                               ctx.moveTo(480, 200-dvd9*2-50);
  43.                               ctx.lineTo(480, 180);
  44.                               ctx.moveTo(243, 290-dvd10);
  45.                               ctx.lineTo(243, 375+dvd10);
  46.                               ctx.moveTo(190,330);
  47.                               ctx.lineTo(290, 330);
  48.                              ctx.stroke();
  49.                          
  50.                              ctx.setLineDash([10, 3]);
  51.                              ctx.beginPath();
  52.                               ctx.moveTo(203,175);
  53.                               ctx.lineTo(284,175);
  54.                               ctx.moveTo(279,315);
  55.                               ctx.lineTo(207,315);
  56.                               ctx.moveTo(279,345);
  57.                               ctx.lineTo(207,345);
  58.                              ctx.stroke();
  59.                      
  60.                        
  61.                           }
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.                     function draw ()
  72.                         {
  73.                    
  74.  
  75.                             var vd9=document.data_IN.Ax.value*1;
  76.                             var vd10=document.data_IN.Ay.value*1;
  77.                             var dvd9=vd9/2;
  78.                             var dvd10=(vd10-60)/2;
  79.  
  80.  
  81.                        //purvaproekciq
  82.                            //dolnota4ast
  83.                            ctx.setLineDash([0,0,]);
  84.                             ctx.beginPath();
  85.                             ctx.arc(243, 330, 15, 0, 2 * Math.PI);  ////???????????????                    
  86.                             ctx.moveTo(200,200);
  87.                             ctx.lineTo(286,200);
  88.                             ctx.lineTo(286,200-dvd9);
  89.                             ctx.lineTo(277,200-dvd9*2);
  90.                             ctx.lineTo(209,200-dvd9*2);
  91.                             ctx.lineTo(200,200-dvd9);
  92.                             ctx.lineTo(200,200);
  93.                            //gornanapurvaproekciq  
  94.                             ctx.moveTo(209,200-dvd9*2);
  95.                             ctx.lineTo(217,200-dvd9*2-15);
  96.                             ctx.lineTo(269,200-dvd9*2-15);
  97.                             ctx.lineTo(277,200-dvd9*2);
  98.                           //nai-gorna 4ast
  99.                             ctx.moveTo(228,200-dvd9*2-15);
  100.                             ctx.lineTo(228,200-dvd9*2-45);
  101.                             ctx.lineTo(258,200-dvd9*2-45);
  102.                             ctx.lineTo(258,200-dvd9*2-15);
  103.  
  104.                            
  105.                          //vtoraproekciq
  106.                             ctx.moveTo(450-dvd10,200);
  107.                             ctx.lineTo(465,200);
  108.                             ctx.lineTo(465,185);
  109.                             ctx.lineTo(450-dvd10,185);
  110.                             ctx.moveTo(450-dvd10,200);//na4alo
  111.                             ctx.lineTo(450-dvd10,200-dvd9*2);
  112.                             ctx.lineTo(459,200-dvd9*2);
  113.                             ctx.lineTo(459,200-dvd9*2-15);
  114.                             ctx.lineTo(501,200-dvd9*2-15);
  115.  
  116.                             ctx.moveTo(465,185);
  117.                             ctx.lineTo(465,175);
  118.                             ctx.lineTo(495,175);
  119.                          // mirror
  120.                             ctx.moveTo(495,185);
  121.                              ctx.lineTo(510+dvd10,185)
  122.                             ctx.moveTo(495,200);
  123.                             ctx.lineTo(510+dvd10,200);
  124.                             ctx.lineTo(510+dvd10,200-dvd9*2);
  125.                             ctx.lineTo(501,200-dvd9*2);
  126.                             ctx.lineTo(501,200-dvd9*2-15);
  127.                             ctx.moveTo(495,200);
  128.                             ctx.lineTo(495,175);                                                                          
  129.                           //nai-gorna 4ast
  130.                             ctx.moveTo(465,200-dvd9*2-15);
  131.                             ctx.lineTo(465,200-dvd9*2-45);
  132.                             ctx.lineTo(495,200-dvd9*2-45);
  133.                             ctx.lineTo(495,200-dvd9*2-15);
  134.  
  135.  
  136.                          //treta proekciq
  137.                          //vun6en krug
  138.                           ctx.moveTo(200,300-dvd10);
  139.                           ctx.lineTo(286,300-dvd10);
  140.                           ctx.lineTo(286,315);
  141.                           ctx.lineTo(279,315);
  142.                           ctx.lineTo(279,345);
  143.                           ctx.lineTo(286,345);
  144.                           ctx.lineTo(286,360+dvd10);
  145.                           ctx.lineTo(200,360+dvd10);
  146.                           ctx.lineTo(200,345);
  147.                           ctx.lineTo(207,345);
  148.                           ctx.lineTo(207,315);
  149.                           ctx.lineTo(200,315);
  150.                           ctx.lineTo(200,300-dvd10);
  151.                         //vutre6en krug
  152.                           ctx.moveTo(212,300-dvd10);
  153.                           ctx.lineTo(212,309);
  154.                           ctx.lineTo(217,309);
  155.                           ctx.lineTo(217,351);
  156.                           ctx.lineTo(212,351);
  157.                           ctx.lineTo(212,360+dvd10);
  158.  
  159.                           ctx.moveTo(274,300-dvd10);
  160.                           ctx.lineTo(274,309);
  161.                           ctx.lineTo(269,309);
  162.                           ctx.lineTo(269,351);
  163.                           ctx.lineTo(274,351);
  164.                           ctx.lineTo(274,360+dvd10);
  165.                        //bonus
  166.                           ctx.moveTo(217,309);
  167.                           ctx.lineTo(269,309);
  168.                           ctx.moveTo(217,351);
  169.                           ctx.lineTo(269,351);
  170.                           ctx.stroke();
  171.            
  172.                      
  173.                            
  174.                            
  175.                            
  176.                         }
  177.                     </script>  
  178.  
  179.                            
  180.            
  181.         </body>
  182.    
  183. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement