题目:如何在 kitten 里将两个贴合在一起的立方体拆分开
贴合在一起的立方体如图:
这两个立方体绘制的起点分别如上图标注点1和2所示。
要实现拆分,只需要让点2 水平方向的偏移量的绝对值再增加一个固定值 ,比如 50.
问题1:点了拆分按钮之后,为什么按钮本身的位置也发生了变化?
问题2:之前绘制的边框没有清除掉。这个问题可以通过清除画笔的积木来解决。
当注释掉绘制两个正方体之后,拆分按钮的位置不会发生变化,说明这个 side effect 是绘制两个正方体引起的。
最后发现这个函数里有设置积木 x 和 y 坐标的语句。因此在拆分按钮的点击处理函数末尾,显式将其 x 和 y 坐标重置即可。
问题解决:











网友评论