Different kind of object transformations and their effects

Hi everyone. Im quite new to threeJS and im having abit of problem understanding how each kind of transformation works. In the scene, the red cylinder represents the center of the scene.

CASE 1 – setPosition() is being ignored

cylinder2.translateX(-10);
cylinder2.matrix.setPosition(0,10,0);

image

CASE 2 – translateX() is being ignored

 cylinder2.matrixAutoUpdate = false;
 cylinder2.translateX(-10);
 cylinder2.matrix.setPosition(0, 10, 0);

image

CASE 3 – TranslateX is being ignored if matrixAutoUpdate(true) is not set afterwards. (and in this case the setPosition is being ignored)

cylinder2.matrixAutoUpdate = false;
cylinder2.translateX(-10);
cylinder2.matrix.setPosition(0, 10, 0);
cylinder2.matrixAutoUpdate = true;

image

Can somebody help me understand the 3 cases?

Thank you.