我有一个矩阵,有18行3列。三列将对象的位置表示为x,y z坐标。我根据对象与另一个矩阵(ShiftLeft = max(matrix(:,1)) - min(matrix2(:,1))
)的距离重新调整对象,如下所示:
matrix
移位取决于matrix2
的最右边的坐标与ShiftLeft
的最左边的坐标有多远。
我已经在命令窗口中多次检查matrix + [shiftleft 0 0]
的值,并且它工作正常,其值等于7。
我想要做的就是创建一个新的矩阵,它是第一个矩阵,但是已移位。
我输入
newmatrix = matrix + [shiftleft 0 0]
进入命令窗口,它会生成一个新矩阵,这正是我想要的。
我也尝试过
syntax error
newmatrix = matrix + [shiftleft 0 0]
^
在命令窗口中再次生成我想要的矩阵。 但是,当我运行脚本时,它告诉我正是这一行产生了错误:
zip = zipfile.ZipFile(outfile, 'w', zipfile.ZIP_DEFLATED)
什么可能导致此错误?
我本来以为引起错误的是矩阵的命名,但是在命令窗口中将其命名可以正常工作。
答案 0 :(得分:1)
与page.screenshot()
一样,ShiftLeft
与shiftleft
不同。您的工作空间中可能已定义了另一个变量shiftleft
,因此语句matrix + [shiftleft 0 0]
在命令窗口中可以正常工作。但是该变量不会在脚本中定义,因此会收到错误消息。
例如,我在八度命令窗口中看到以下内容:
>> ShiftLeft=0
ShiftLeft = 0
>> shiftleft
error: 'shiftleft' undefined near line 1 column 1