账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    canvas 有多个一样的圆形,怎么精简javascript
    46
    0
    <canvas id="myCanvas1" class="roundness" width="300" height="300"></canvas>
    <canvas id="myCanvas2" class="roundness" width="300" height="300"></canvas>
    <canvas id="myCanvas3" class="roundness" width="300" height="300"></canvas>
    
    <script>
        
        var context1=document.getElementById("myCanvas1");
        var context2=document.getElementById("myCanvas2");
        var context3=document.getElementById("myCanvas3");
        var ctx1=context1.getContext("2d");
        var ctx2=context2.getContext("2d");
        var ctx3=context3.getContext("2d");
        ctx1.lineWidth = 2;//线条的宽度
        ctx2.lineWidth = 2;//线条的宽度
        ctx3.lineWidth = 2;//线条的宽度
        ctx1.strokeStyle = "#b81113";//线条的颜色
        ctx2.strokeStyle = "#b81113";//线条的颜色
        ctx3.strokeStyle = "#b81113";//线条的颜色
        ctx1.beginPath();
        ctx2.beginPath();
        ctx3.beginPath();
        ctx1.arc(100,100,94,1.4*Math.PI,1*Math.PI);
        ctx2.arc(100,100,94,1.4*Math.PI,1*Math.PI);
        ctx3.arc(100,100,94,1.4*Math.PI,1*Math.PI);
        ctx1.stroke();
        ctx2.stroke();
        ctx3.stroke();
    
    </script> 

    三个圆形都是一样的,怎么精简? 各位小哥哥小姐姐求指教

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 武异 普通会员 1楼

      在JavaScript中,我们不能直接在一个canvas元素上绘制多个圆形。但是,我们可以通过以下步骤来实现这个目标:

      1. 创建一个canvas元素,并为其设置一个默认颜色和背景色。
      2. 在canvas上绘制一个圆形,使其半径等于需要的圆形半径。
      3. 在圆形的周围,再绘制两个同样大小的圆形,这两个圆形的半径应大于原圆形的半径。

      以下是一个示例代码:

      ```javascript // 创建canvas元素 var canvas = document.getElementById('myCanvas');

      // 设置默认颜色和背景色 canvas.style.backgroundColor = 'red'; canvas.style.color = '#fff';

      // 在canvas上绘制圆形 var ctx = canvas.getContext('2d'); ctx.beginPath(); ctx.arc(50, 50, 100, 0, Math.PI*2); ctx.fillStyle = 'red'; ctx.fill(); ctx.closePath();

      // 在圆形周围绘制两个同样大小的圆形 var leftCircle = ctx.beginPath(); var rightCircle = ctx.beginPath(); var circle1 = ctx.arc(50, 150, 100, 0, Math.PI*2); circle1.fillStyle = 'red'; circle1.fill(); circle1.closePath();

      var circle2 = ctx.beginPath(); var circle3 = ctx.beginPath(); circle2.arc(150, 50, 100, 0, Math.PI*2); circle2.fillStyle = 'red'; circle2.fill(); circle2.closePath(); ```

      在这个示例中,我们首先创建了一个canvas元素,并为其设置了默认颜色和背景色。然后,我们在canvas上绘制了一个圆形,并在圆形的周围绘制了两个同样大小的圆形。

    • 在JavaScript中,我们不能直接在一个canvas元素上绘制多个圆形。但是,我们可以通过以下步骤来实现这个目标:

      1. 创建一个canvas元素,并为其设置一个默认颜色和背景色。
      2. 在canvas上绘制一个圆形,使其半径等于需要的圆形半径。
      3. 在圆形的周围,再绘制两个同样大小的圆形,这两个圆形的半径应大于原圆形的半径。

      以下是一个示例代码:

      ```javascript // 创建canvas元素 var canvas = document.getElementById('myCanvas');

      // 设置默认颜色和背景色 canvas.style.backgroundColor = 'red'; canvas.style.color = '#fff';

      // 在canvas上绘制圆形 var ctx = canvas.getContext('2d'); ctx.beginPath(); ctx.arc(50, 50, 100, 0, Math.PI*2); ctx.fillStyle = 'red'; ctx.fill(); ctx.closePath();

      // 在圆形周围绘制两个同样大小的圆形 var leftCircle = ctx.beginPath(); var rightCircle = ctx.beginPath(); var circle1 = ctx.arc(50, 150, 100, 0, Math.PI*2); circle1.fillStyle = 'red'; circle1.fill(); circle1.closePath();

      var circle2 = ctx.beginPath(); var circle3 = ctx.beginPath(); circle2.arc(150, 50, 100, 0, Math.PI*2); circle2.fillStyle = 'red'; circle2.fill(); circle2.closePath(); ```

      在这个示例中,我们首先创建了一个canvas元素,并为其设置了默认颜色和背景色。然后,我们在canvas上绘制了一个圆形,并在圆形的周围绘制了两个同样大小的圆形。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部