【发布时间】:2015-08-20 08:51:33
【问题描述】:
我在 javascript 中有一个翻译矩阵,但我似乎无法正常工作。如果我有一个矩阵,我可以使用我使用的方法访问不同的级别,但是一旦我尝试将它与另一个矩阵相乘,我就会得到一个错误:内部错误设置变量。感谢您的 cmets。
function funct(number, number1) {
var matrixATranslate = new Array();
var matrixBTranslate = new Array();
var matrixCTranslate = new Array();
var matrixATranslate = [
[1, number, 0, number1],
[number1, 1, 0, 0],
[0, 0, 0, 0]
];
var matrixBTranslate = [
[number],
[number1],
[0],
[1]
];
var row = 3, col = 4, add = 4;
for (var i = 0; i < row; i++) {
for (var j = 0; j < col; j++) {
var sum = 0;
for (var k = 0; k < add; k++) {
sum += matrixATranslate[i, k] * matrixBTranslate[k, j];
}
matrixCTranslate[i, j] = sum;
}
}
Vars.transformedPoint.x = matrixCTranslate[0][0];
Vars.transformedPoint.y = matrixCTranslate[0][0];
return Vars.transformedPoint;
}
Vars.transformedPoint = funct(10, 20);
【问题讨论】:
-
哦!是的,那不是错误。我在机器视觉应用程序中使用它,它以这种方式引用在脚本窗口之外创建的变量。如果在脚本窗口中创建,那么它只是引用变量 var 的标准方式。
-
matrixBTranslate是向量而不是矩阵,所以调用matrixBTranslate[k, j];没有意义,因为 j 必须始终为零 -
啊!抱歉 - 我在玩代码并更改了一些东西。
-
啊抱歉 - 正在使用代码并更改了一些内容。行=2,列=0,添加=3。我有运行良好的 c# 版本,如果有帮助吗?除非回答我自己的问题,否则现在不知道如何在这里上传它
-
函数应该返回什么结果?
标签: javascript arrays matrix iteration