JavaScript|JavaScript 数学曲线—心形线
引子
继双角线,接着尝试心形线(Cardioid)。
- Origin
- My GitHub
文章图片
Cardioid 是 Castillon 在 1741 年《Philosophical Transactions of the Royal Societyin》的一篇论文中首次使用的名称,它是一条曲线,是圆周上一点绕着半径相等的圆的圆周旋转所形成的轨迹。
在笛卡尔坐标系中公式描述:
文章图片
其中 a 为常数。
绘制 参数化转换:
【JavaScript|JavaScript 数学曲线—心形线】
这是示例,绘制主要逻辑代码:
function draw() {
let a = 40, start = 0;
let x = 0, y = 0, points = [];
const acceleration = 0.1, max = 40;
while (start <= max) {
const cal = 2 * start;
x = a * (2 * Math.cos(start) - Math.cos(cal));
y = a * (2 * Math.sin(start) - Math.sin(cal));
points.push([x, y]);
start = start + acceleration;
}
// 实现把点绘制成线的方法
line({ points: points});
}
参考资料
- Cardioid Curves
- Cardioid Wolfram
推荐阅读
- 事件代理
- 数组常用方法一
- 数学大作战
- 2019.11.14号总结
- 五年级数学上册期中考试质量分析
- 思维导图让你换一种打开方式学数学
- JavaScript|vue 基于axios封装request接口请求——request.js文件
- JavaScript|JavaScript: BOM对象 和 DOM 对象的增删改查
- JavaScript|JavaScript — 初识数组、数组字面量和方法、forEach、数组的遍历
- JavaScript|JavaScript — call()和apply()、Date对象、Math、包装类、字符串的方法