var scale= Cesium.Matrix4.getScale( modelMatrix, newCesium.Cartesian3() );
模型位置:
1
var position = Cesium.Matrix4.getTranslation( modelMatrix, newCesium.Cartesian3() );
模型欧拉角:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
var m1 = Cesium.Transforms.eastNorthUpToFixedFrame( Cesium.Matrix4.getTranslation( modelMatrix, newCesium.Cartesian3()), Cesium.Ellipsoid.WGS84, newCesium.Matrix4(), ); var m3 = Cesium.Matrix4.multiply( Cesium.Matrix4.inverse(m1, newCesium.Matrix4()), modelMatrix, newCesium.Matrix4(), ); var mat3 = Cesium.Matrix4.getRotation(m3, newCesium.Matrix3()); var q = Cesium.Quaternion.fromRotationMatrix(mat3); var hpr = Cesium.HeadingPitchRoll.fromQuaternion(q);
// 获取模型的heading、pitch、roll var heading = Cesium.Math.toDegrees(hpr.heading); var pitch = Cesium.Math.toDegrees(hpr.pitch); var roll = Cesium.Math.toDegrees(hpr.roll);