【질문】 파이썬에서 3d 애니메이션이 테두리 밖으로 나가는 것을 고치고 싶습니다.

python3을 사용하고 있습니다. 아래에 작성한 애니메이션의 스쿠쇼와 프로그램을 실어 둡니다. 합성파가 진행되어 가는 곳의 애니메이션을 만들어 보았습니다만, 파가 어디까지나 진행해 갑니다. 적당한 곳에서 파의 표시가 없어지고 싶습니다. 누군가를 아는 분을 가르쳐주세요.
잘 부탁드립니다.


from mpl_toolkits.mplot3d import Axes3D
import matplotlib.animation as anm
import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
ax = fig.gca(projection='3d')
f=np.pi/6
d=np.pi/2
t=[]

def update(i):
        if i !=0:
             plt.cla()

        X1=0
        Y1=0
        Z1=0
        U1=-np.cos(i/10)*np.sin(f)*np.cos(f)
        V1=np.cos(i/10)*np.sin(f)*np.sin(f)
        W1=0

        X2=0
        Y2=0
        Z2=0
        U2=np.cos(i/10)*np.sin(f)*np.cos(f)
        V2=np.cos(i/10)*np.cos(f)*np.cos(f)
        W2=0

        X3=0
        Y3=0
        Z3=0
        U3=U1+U2
        V3=V1+V2
        W3=0

        X4=[X1,U1]
        Y4=[Y1,V1]
        Z4=[Z1,W1]
        X5=[X2,U2]
        Y5=[Y2,V2]
        Z5=[Z2,W2]
        X6=[X3,U3]
        Y6=[Y3,V3]
        Z6=[Z3,W3]

        ax.set_xlim(-1.5,1.5)
        ax.set_ylim(-1.5,1.5)
        ax.set_zlim(0,3)
        ax.axis("off")
        ax.plot(X4,Y4,Z4,"-",c="r",lw=2)
        ax.plot(X5,Y5,Z5,"-",c="b",lw=2)
        ax.plot(X6,Y6,Z6,"-",c="m",lw=2)

        t.append(i)
        t1=np.array(t)

        x1=-np.cos((i-t1)/10)*np.sin(f)*np.cos(f)
        y1=np.cos((i-t1)/10)*np.sin(f)*np.sin(f)
        z1=t1/100


        x2=np.cos((i-t1)/10)*np.sin(f)*np.cos(f)
        y2=np.cos((i-t1)/10)*np.cos(f)*np.cos(f)
        z2=t1/100

        x3=x1+x2
        y3=y1+y2
        z3=z1

        ax.plot(x1, y1, z1,"-", c="r")
        ax.plot(x2, y2, z2,"-", c="b")
        ax.plot(x3, y3, z3,"-", c="m")





ani = anm.FuncAnimation(fig, update, \
    interval = 15, frames = 10000)


plt.show()

좋은 웹페이지 즐겨찾기