沃糙称马freopen

事后

事前

事后

🤣🤣🤣

???
当角色被点击
删除 x 的全部项目
删除 y 的全部项目
设置 编号 为 0
隐藏
移到 x: 0 y: 160
全部擦除
重复执行 上限(15) 次
将 编号 增加 1
将 0 加入 x // 先占位
将 0 加入 y // 先占位
克隆自己
当作为克隆体启动时
设置 _编号 为 编号 // 必须在克隆体里保存自己的编号!
如果 _编号 = 1 那么 // 根节点
设置 _当前_x 为 0
设置 _当前_y 为 160
移到 x: _当前_x y: _当前_y
显示
图章
替换 x 的第 1 项为 _当前_x
替换 y 的第 1 项为 _当前_y
否则 // 其他节点
// 1. 找父节点坐标
设置 _父编号 为 向下取整(_编号 / 2)
设置 _父_x 为 x 的第 _父编号 项
设置 _父_y 为 y 的第 _父编号 项
// 2. 计算深度(利用对数,Scratch里ln(n)/ln(2)就是求log2(n))
设置 _深度 为 向下取整(ln(_编号) / ln(2)) + 1
// 3. 计算间距(越往下间距越小,公式:100 / 2的(深度-2)次方)
设置 _间距 为 100 / (2 ^ (_深度 - 2))
// 4. 左右分支计算(利用奇偶数区分左右)
如果 (_编号 除以 2 的余数) = 1 那么
设置 _当前_x 为 _父_x + _间距 // 奇数放右边
否则
设置 _当前_x 为 _父_x - _间距 // 偶数放左边
结束
设置 _当前_y 为 _父_y - 40 // 垂直向下延伸
// 5. 绘制线条和节点
移到 x: _父_x y: _父_y
落笔
滑行到 x: _当前_x y: _当前_y
抬笔
移到 x: _当前_x y: _当前_y
显示
图章 // 在当前位置画圆圈
// 6. 把自己的坐标存入列表,供你的子节点使用!
替换 x 的第 _编号 项为 _当前_x
替换 y 的第 _编号 项为 _当前_y
timu
我的博客
h

ziliao