https://i.sstatic.net/HSRZz.png https://i.sstatic.net/1dggf.png
After developing a toolbox capable of rotating and repositioning a mesh with an axis in the middle, I ran into an issue where separating rotation and position caused the position to revert to its previous state, resulting in the rotation being off. To address this, I decided to use multiplication, but this did not yield the expected outcome as the mesh's position wasn't where I had specified it to be (not on the mesh axis). Can anyone provide guidance on how to properly rotate and position the object so that it remains in the specified position while rotating at that location? Below is the snippet of the code in question:
const translation = new THREE.Matrix4().makeTranslation(
this.valueAOA_X,
this.valueAOA_Y,
this.valueAOA_Z
);
const angleRadian = CoordinateConverter.degreeToRadian(
this.valueAOA_Rotation
);
const rotationAOA = new THREE.Matrix4().makeRotationZ(angleRadian);
this.selectedModel.setPlacementTransform(
rotationAOA.multiply(translation)
);