短い質問: 私は winged egde 構造を使用してさまざまな形状を描画したいので、実際に翼のある eged を描画する 1 つのクラスと、立方体やその他の形状を定義する別のクラスがあります。今、同じ図に 2 つの立方体を描きたいのですが、できません。各図に常に 1 つの立方体を描画します。
長い質問: 翼のあるエッジ構造を使用してさまざまな形状を描画したいので、次のようにします。
class WEdge -> wedge_instance = WEdge(vertices, faces) 
次に、たとえば、描画する必要がある図形ごとに 1 つのクラスがあります。
class Box -> simplebox = Box(vertices, faces, translation, rotation)
WEdge クラスでは、次のコードを使用して実際にオブジェクトをプロットします。
        ax = a3.Axes3D(pl.figure())
        for k in range(self.nFaces):
           currentColumn = self.faces[k,:]
           vtx = np.zeros([4,3])
           j = 0
           for i in currentColumn:
               vtx[j] = self.vertices[i-1]
               j = j +1
        tri = a3.art3d.Poly3DCollection([vtx])
        tri.set_color(colors.rgb2hex(sp.rand(3)))
        tri.set_edgecolor('b')
        ax.add_collection3d(tri)  
問題は、同じ図形に 2 つの立方体を描きたい場合です。hold、gca などの可能な組み合わせを多数試しましたが、最終的には常に図 1 の 1 つの立方体と図 2 の別の立方体が得られます。
例:
>>>Box(3,1,3, [0,1,0], np.eye(3))
>>> # hold, gca, timer...
>>>Box(3,1,3, [1,0,3], np.eye(3))
![Box(3,1,3, [0,1,0], np.eye(3)](https://i.stack.imgur.com/aSQ0g.png)
![Box(3,1,3, [1,0,3], np.eye(3)](https://i.stack.imgur.com/e0GAr.png)