用js和html编写一个小程序,输入一个正整数,在页面画一朵玫瑰花
时间: 2023-06-11 18:07:21 浏览: 135
好的,我可以给您提供一些简单的代码,您可以自行尝试:
HTML部分:
```html
<label for="num">输入正整数:</label>
<input type="number" id="num" name="num">
<button onclick="drawRose()">画玫瑰花</button>
<br><br>
<canvas id="canvas"></canvas>
```
JS部分:
```javascript
function drawRose() {
// 获取输入的数字
const num = document.getElementById("num").value;
// 获取canvas元素和上下文
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
// 计算需要的常量
const factor = num * 0.02;
const radius = 50 * Math.sin(factor);
const delta = 2 * Math.PI / num;
// 绘制玫瑰花
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.beginPath();
for (let i = 0; i < num; i++) {
const theta = delta * i;
const x = radius * Math.cos(theta) * Math.cos(factor) + canvas.width / 2;
const y = radius * Math.sin(theta) * Math.cos(factor) + canvas.height / 2;
ctx.lineTo(x, y);
}
ctx.closePath();
ctx.fillStyle = "pink";
ctx.fill();
}
```
当您输入一个正整数并单击“画玫瑰花”按钮时,JS函数将计算偏移量、半径和角度,并根据这些变量在canvas上绘制玫瑰花。 如果您需要更多的帮助,请告诉我。
阅读全文