为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 raphael 图形使用 for 循环绘制由从小到大的矩形组成的塔?

如何使用 raphael 图形使用 for 循环绘制由从小到大的矩形组成的塔?

四季花海 2023-09-18 17:32:41
我不明白如何使用 for 循环 8 次来绘制塔?所以最终结果会是这样的 这是我所拥有的setup = function() {  paper = Raphael ('pyramid', 500,500)  for (i=1; i <= 8; i+=1){rect = paper.rect(80,i*5,i*15,5) }$(document).ready(setup)
查看完整描述

1 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

CH = 画布高度,CW = 画布宽度,

每个块的高度 H = CH/8。对于第一个,top = 0,bottom = H。对于第二个,top = H,bottom = H * 2。所以对于n,top = (n - 1) * H。

最后一个的宽度是CW,每一步减少一个方差V,所以宽度W = CW - (8 - n) * V。例如我们可以设置V = CW/8。块居中,因此 Left = (CW - W) / 2。

cw = 180;

ch = 180;

s = 8;

paper = Raphael('pyramid', cw, ch)

for (n = 1; n <= s; n += 1) {

  h = ch / s;

  t = h * (n - 1);

  v = cw / s;

  w = cw - (s - n) * v;

  l = (cw - w) / 2;

  paper.rect (l, t, w, h);

}

<script src="https://cdnjs.cloudflare.com/ajax/libs/raphael/2.3.0/raphael.min.js"></script>

<div id="pyramid"></div>


查看完整回答
反对 回复 2023-09-18
  • 1 回答
  • 0 关注
  • 56 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信