非矩形热源Python

时间:2015-03-21 14:42:24

标签: python

我必须制作形状像X的热源,但必须将其定义为功能。 在矩阵中它将是:

Gr=np.eye(10)*5000
for iGr in range(10):
    Gr[iGr,-iGr-1]=5000

def assert_heaters(M, Gr):
    M[20:30,10:20] = np.where(Gr > 0, Gr, M[20:30,10:20])
M=np.zeros([L,B])           
assert_heaters(M, Gr) 

我尝试制作一个功能,但没有成功。

def q(x,y,qqq):
    qq=0
    for k in range 10:
        if x>20 and x<30 and y>10 and y<20:

        qq=qqq
    return qq

我的问题是:如何让它看起来像X而不是矩形?

1 个答案:

答案 0 :(得分:0)

简单的(未经测试):

def heat(x, y):
    x1 = x - 20
    y1 = y - 10
    if x1 < 0 or x1 > 9 or y1 < 0 or y1 > 9:    # out of range
        return 0
    if (x1 == y1) or (x1 == 9-y1):
        return 5000
    else:
        return 0