123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- import { Strategy } from "./strategy.js";
- export class YUpRStrategy extends Strategy {
-
- originPointPose = null;
-
- unifiedCoordinateSystem(model) {
- console.log("Y-up: beforeAddApplyMatrix");
- return model
- }
-
- setLocalOriginPose(worldPose) {
- this.originPointPose = worldPose;
- console.log("Y-up: convertLocalToWorld");
- }
-
- convertLocalToWorld(localPosition) {
- var quaternion = new THREE.Quaternion(this.originPointPose.worldQuaternion.x,this.originPointPose.worldQuaternion.y,this.originPointPose.worldQuaternion.z,this.originPointPose.worldQuaternion.w);
- var rotationMatrix = new THREE.Matrix4().makeRotationFromQuaternion(quaternion);
- var translationMatrix = new THREE.Matrix4().makeTranslation(this.originPointPose.worldPosition.x,this.originPointPose.worldPosition.y,this.originPointPose.worldPosition.z);
- var transformationMatrix = new THREE.Matrix4().multiplyMatrices(translationMatrix, rotationMatrix);
- let worldPosition = localPosition.applyMatrix4(transformationMatrix);
- console.log('======打印当前的worldPosition======',worldPosition);
- return worldPosition
- }
- }
|