added rest based on socket call
This commit is contained in:
@@ -202,6 +202,34 @@ function RotateControls3D() {
|
||||
}, 50);
|
||||
}, [rotatedObjects, initialRotations, initialPositions, updateAsset]);
|
||||
|
||||
const resetToInitialRotation = useCallback(
|
||||
(modelUuid: string) => {
|
||||
setTimeout(() => {
|
||||
const obj = rotatedObjects.find((o: THREE.Object3D) => o.userData.modelUuid === modelUuid);
|
||||
|
||||
if (!obj) return;
|
||||
|
||||
const uuid = obj.uuid;
|
||||
const initialRotation = initialRotations[uuid];
|
||||
const initialPosition = initialPositions[uuid];
|
||||
|
||||
if (initialRotation && initialPosition) {
|
||||
const rotationArray: [number, number, number] = [initialRotation.x, initialRotation.y, initialRotation.z];
|
||||
const positionArray: [number, number, number] = [initialPosition.x, initialPosition.y, initialPosition.z];
|
||||
|
||||
updateAsset(modelUuid, {
|
||||
rotation: rotationArray,
|
||||
position: positionArray,
|
||||
});
|
||||
|
||||
obj.rotation.copy(initialRotation);
|
||||
obj.position.copy(initialPosition);
|
||||
}
|
||||
}, 50);
|
||||
},
|
||||
[rotatedObjects, initialRotations, initialPositions, updateAsset]
|
||||
);
|
||||
|
||||
useFrame(() => {
|
||||
if (!isRotating || rotatedObjects.length === 0) return;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user