(x1,y1)=(0.5,0) (x2,y2)=(1,0.5) (x3,y3)=(0.5,1) (x4,y4)=(0,0.5) plt.plot(x1,y1,'ob') plt.plot(x2,y2,'oy') plt.plot(x3,y3,'oc') plt.plot(x4,y4,'om') plt.grid() plt.axis('square') plt.show()
Np=4 xp=np.array([0.5,1,0.5,0]) yp=np.array([0,0.5,1,0.5]) for i in range(Np): plt.plot(xp[i],yp[i],'ob') x_aux=np.array([xp[0],xp[1]]) y_aux=np.array([yp[0],yp[1]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[1],xp[2]]) y_aux=np.array([yp[1],yp[2]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[2],xp[3]]) y_aux=np.array([yp[2],yp[3]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[3],xp[0]]) y_aux=np.array([yp[3],yp[0]]) plt.plot(x_aux,y_aux,'--k') plt.grid() plt.axis('square') plt.show()
def rombo(xp,yp,Np): for i in range(Np): plt.plot(xp[i],yp[i],'ob') x_aux=np.array([xp[0],xp[1]]) y_aux=np.array([yp[0],yp[1]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[1],xp[2]]) y_aux=np.array([yp[1],yp[2]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[2],xp[3]]) y_aux=np.array([yp[2],yp[3]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[3],xp[0]]) y_aux=np.array([yp[3],yp[0]]) plt.plot(x_aux,y_aux,'--k') plt.grid() plt.axis('square') Np=4 xp=np.array([0.5,1,0.5,0]) yp=np.array([0,0.5,1,0.5]) rombo(xp,yp,Np) x=random() y=random()
def rombo(xp,yp,Np): for i in range(Np): plt.plot(xp[i],yp[i],'oy') x_aux=np.array([xp[0],xp[1]]) y_aux=np.array([yp[0],yp[1]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[1],xp[2]]) y_aux=np.array([yp[1],yp[2]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[2],xp[3]]) y_aux=np.array([yp[2],yp[3]]) plt.plot(x_aux,y_aux,'--k') x_aux=np.array([xp[3],xp[0]]) y_aux=np.array([yp[3],yp[0]]) plt.plot(x_aux,y_aux,'--k') plt.grid() plt.axis('square') Np=4 xp=np.array([0.5,1,0.5,0]) yp=np.array([0,0.5,1,0.5]) rombo(xp,yp,Np) xr=0.5+0.5*random() yr=random() plt.plot(xr,yr,'ok') arriba1=0 yl = yp[0]+( (yp[1]-yp[0])/(xp[1]-xp[0]) )*(xr-xp[0]) if yr > yl: arriba1 = 1 print('El punto esta ARRIBA de la linea') print('que une a los puntos (x[0],y[0]) y (x[1],y[1])') print() if yr <= yl: arriba1 = 0 print('El punto esta ABAJO de la linea') print('que une a los puntos (x[0],y[0]) y (x[1],y[1])') print() plt.plot(xr,yl,'om') plt.show()
Np=4 xp=np.array([0.5,1,0.5,0]) yp=np.array([0,0.5,1,0.5]) rombo(xp,yp,Np) xr=0.5+0.5*random() yr=random() plt.plot(xr,yr,'ok') arriba1=0 yl = yp[0]+( (yp[1]-yp[0])/(xp[1]-xp[0]) )*(xr-xp[0]) if yr>yl : arriba1=1 arriba2=0 yl = yp[1]+( (yp[2]-yp[1])/(xp[2]-xp[1]) )*(xr-xp[1]) if yr>yl : arriba2=1 if arriba1==1 and arriba2==0: plt.plot(xr,yr,'og') else: plt.plot(xr,yr,'or') print(arriba1,arriba2) plt.show()
Np=4 xp=np.array([0.5,1,0.5,0]) yp=np.array([0,0.5,1,0.5]) rombo(xp,yp,Np) for i in range(100): xr=0.5+0.5*random() yr=random() plt.plot(xr,yr,'ok') arriba1=0 yl = yp[0]+( (yp[1]-yp[0])/(xp[1]-xp[0]) )*(xr-xp[0]) if yr>yl : arriba1=1 arriba2=0 yl = yp[1]+( (yp[2]-yp[1])/(xp[2]-xp[1]) )*(xr-xp[1]) if yr>yl : arriba2=1 if arriba1==1 and arriba2==0: plt.plot(xr,yr,'og') else: plt.plot(xr,yr,'or') # print(arriba1,arriba2) plt.show()
for i in range(1000): xr=0.0+random() yr=random() plt.plot(xr,yr,'ok') arriba1=0 yl = yp[0]+( (yp[1]-yp[0])/(xp[1]-xp[0]) )*(xr-xp[0]) if yr>yl : arriba1=1 arriba2=0 yl = yp[1]+( (yp[2]-yp[1])/(xp[2]-xp[1]) )*(xr-xp[1]) if yr>yl : arriba2=1 arriba3=0 yl = yp[2]+( (yp[3]-yp[2])/(xp[3]-xp[2]) )*(xr-xp[2]) if yr>yl : arriba3=1 arriba4=0 yl = yp[3]+( (yp[3]-yp[0])/(xp[3]-xp[0]) )*(xr-xp[3]) if yr>yl : arriba4=1 if arriba1==1 and arriba2==0 and arriba3==0 and arriba4==1: plt.plot(xr,yr,'og') else: plt.plot(xr,yr,'or') plt.grid() plt.axis('square') plt.show()