最新下载
24小时阅读排行榜
- 1 windows11文件无法删除提示被占用怎么解决_windows11文件占用无法删除修复办法
- 2 JavaScript安全漏洞与防护策略
- 3 OPPO A3 WiFi信号弱 OPPO A3网络增强方法
- 4 VSCode的自动保存功能值得开启吗?
- 5 石墨文档如何导入PPT演示文稿_石墨文档演示功能的操作
- 6 fmhy官网快速访问_fmhy中文版官网入口
- 7 win11如何设置电脑永不休眠 win11电脑永不休眠设置方法
- 8 VS Code终极指南:从安装配置到高效工作流实战
- 9 腾讯元宝AI在线试用入口 腾讯元宝网页版快速入口
- 10 html5文件如何实现自定义上传路径 html5文件后端接口的路径参数
- 11 硬件保修政策解读
- 12 PHP数据如何实现文件上传 PHP数据上传功能的完整实现
- 13 拼多多2025双11优惠券怎么领取最全 拼多多优惠活动合集
- 14 无线投屏设置:多设备屏幕共享教程
- 15 Microsoft Teams如何设置文件版本 Microsoft Teams文档管理的控制技巧
最新教程
-
- Node.js 教程
- 6104 2025-08-28
-
- CSS3 教程
- 899658 2025-08-27
-
- Rust 教程
- 9863 2025-08-27
-
- Vue 教程
- 12019 2025-08-22
-
- PostgreSQL 教程
- 9233 2025-08-21
-
- Git 教程
- 4793 2025-08-21
代码片段:
Stem.prototype.draw = function(ctx) {
var len, ctrlPoint, point;
len = this.points.length - 1;
ctrlPoint = {x: 0, y: 0};
ctx.save();
ctx.strokeStyle = this.color;
ctx.beginPath();
ctx.moveTo(this.points[this.points.length - 1].x, this.points[this.points.length - 1].y);
for (var i = len; i >= 1; i--) {
point = this.points[i];
ctrlPoint.x = (point.x + this.points[i - 1].x) / 2;
ctrlPoint.y = (point.y + this.points[i - 1].y) / 2;
ctx.quadraticCurveTo(point.x, point.y, ctrlPoint.x, ctrlPoint.y);
ctx.lineWidth = i * 1.1;
ctx.stroke();
ctx.fillStyle = 'red';
}
ctx.restore();
}


