Проблемы
Я пытаюсь преобразовать следующий фрагмент кода: https://github.com/mdn/webgl-examples/blob/gh-pages/tutorial/glUtils.js#L13-L15Clourescript: преобразование доступа к массиву
Код JavaScript является:
Matrix.Translation = function (v)
{
// ignore length 2 case for simplicty
if (v.elements.length == 3) {
var r = Matrix.I(4);
r.elements[0][3] = v.elements[0];
r.elements[1][3] = v.elements[1];
r.elements[2][3] = v.elements[2];
return r;
}
throw "Invalid length for Translation";
}
Теперь я могу переписать его cljs следующим образом :
(defn translation [x y z]
(let [r (. js/Matrix I 4)]
r[0][3] = x ;; how do I write this?
r[1][3] = y ;; how do I write this?
r[2][3] = z ;; how do I write this?
))
Вопрос
Однако как написать r [0] [3] в cljs?