zoukankan      html  css  js  c++  java
  • 小程序API(1.4)利用draw()函数实现参数化绘图

    <!--pages/index.wxml-->
    <view class='box'>
      <view class='title'>参数绘图</view>
      <view class='style01'>
        <canvas canvas-id='myCanvas'></canvas>
      </view>
      <view>
        <form bindsubmit='drawCircle' bindreset='clear'>
          <input name='x' type='number' placeholder='请输入圆心x坐标'></input>
          <input name='y' type='number' placeholder='请输入圆心y坐标'></input>
          <input name='radius' type='number' placeholder='请输入圆的半径'></input>
          <view class='style02'>
            <button type='primary' form-type='submit'>画圆</button>
            <button type='primary' form-type='reset'>清空</button>
          </view>
        </form>
      </view>
    </view>
    /* pages/index.wxss */
    
    .style01 {
      width: 100%;
    }
    
    canvas {
      border: 1px solid springgreen;
      width: 100%;
      height: 250px;
      margin-bottom: 20px;
    }
    
    input {
      margin-bottom: 20px;
      border-bottom: 1px solid rebeccapurple;
    }
    
    .style02 {
      display: flex;
      flex-direction: row;
      justify-content: center; /* 水平居中对齐 */
      margin-top: 20px;
    }
    
    button {
      width: 25%;
      margin: 10px;
    }
    // pages/index.js
    Page({
      onLoad: function() {
        this.ctx = wx.createCanvasContext('myCanvas', this);//创建绘图上下文
      },
      drawCircle: function(e) {
        var x = e.detail.value.x; //获取圆心x坐标
        var y = e.detail.value.y; //获取圆心y坐标
        var radius = e.detail.value.radius;//获取圆半径
        this.ctx.arc(x, y, radius, 0, 2 * Math.PI); //创建圆,以x,y为圆心,radius为半径,从0开始绘制,直接绘制一圈,2PI的角度
        this.ctx.stroke();//画出当前路径的边框
        this.ctx.draw(true);//刷新屏幕(保留画布内容)
      },
      clear: function() {
        this.ctx.draw();//刷新屏幕(清空画布内容)
      }
    })

    draw(boolean reserve, function callback)函数

       如果 reserve 为 true,则将保留当前画布上的内容继续绘制。

  • 相关阅读:
    USACO 2008 Mar Silver 3.River Crossing 动态规划水题
    常见经验总结
    Ikki's Story IV
    洛谷P1993 小K的农场_差分约束_dfs跑SPFA
    洛谷P3275 [SCOI2011]糖果_差分约束_判负环
    Integer Intervals POJ
    洛谷 P2365 任务安排_代价提前计算 + 好题
    [NOI2005]瑰丽华尔兹 动态规划 + 单调队列
    Shoot the Bullet ZOJ
    background-clip 和 background-origin
  • 原文地址:https://www.cnblogs.com/suitcases/p/13602087.html
Copyright © 2011-2022 走看看