如何绘制同心正方形?

问题描述 投票:-2回答:1

-创建10个不同颜色的同心正方形的草图-当按下鼠标或键盘时合并用户输入会更改正方形的颜色-代码必须使用变量/循环/和决策结构。

processing
1个回答
0
投票

同心圆这个词虽然通常用于圆圈,但实际上只是基于拉丁语的“相同中心”。因此,同心正方形就是具有相同中心(重金属酚相遇的地方)的正方形。

因此,假设您需要左上角(X向右增大,Y向下增大至底部)和边长。算出现有正方形的中心:

centX = X + length / 2
centY = Y + length / 2

然后计算给定长度(与第一个同心)的新正方形的左上角坐标:

X = centX - length / 2
Y = centY - length / 2

您可以使用类似这样的功能将其包装在一个函数(伪代码)中:

def makeConcentricSquare(origX, origY, origLen, newLen):
    newX = origX + origLen / 2 - newLen / 2
    newY = origY + origLen / 2 - newLen / 2
    return (newX, newY, newLen)

当然,假设您的正方形实际上是水平的。您可以做类似的事情来旋转它们,但是我将其留给读者作为练习,特别是因为规范没有提及允许它:-)

© www.soinside.com 2019 - 2024. All rights reserved.