在OOP系统中,如何表示卡上两个形状之间的转换?

2024-09-26 22:49:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试扩展我已经创建的OOP设计。下面是智力测试的一个例子:https://www.youtube.com/watch?v=WcsuDhIx8hU

enter image description here

我有两张(或更多)卡片。每张卡片上有两个或两个以上的形状。每个形状与同一张卡片上的另一个形状相关,例如,一个形状可能是“内部”另一个形状或“上面”等。我可以为“卡片”创建一个类,该类由两个对象组成,每个对象的类类型为“形状”

我有两个问题:

  1. 卡片上的每个形状都与另一个有关,例如形状a是“上面的” 或“内部”形状b等。什么是最好的方式来表示这种关系
  2. 这是更难的问题。如果我有两张牌,一张牌上的每个形状都可以是另一张牌上形状的变换。e、 g.卡2上的形状a可以是卡1上的形状a“收缩”、“反射”或“旋转”。我如何表示这种转变

我从一个卡片阵列开始,每个阵列包含一个对象(一个形状)。然后我有了另一个“relationship”类型的对象,它包含两个形状,并在每个形状之间存储了一个转换


Tags: 对象httpscom类型关系youtubewww方式
1条回答
网友
1楼 · 发布于 2024-09-26 22:49:25

你能不能把属性添加到每张卡片上,这样就可以从其他卡片上获取形状属性

例如,您可以有一个self.shape字段,对于每个特定的形状,当您要更改卡的形状时,可以在相应的卡上调用该方法

相关问题 更多 >

    热门问题