MCPcopy
hub / github.com/CesiumGS/cesium / morph

Function morph

packages/engine/Source/Scene/SceneTransitioner.js:891–921  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

889 scene._mode = SceneMode.MORPHING;
890
891 function morph() {
892 camera.frustum = cameraCV.frustum.clone();
893
894 const startPos = Cartesian3.clone(camera.position, scratch3DToCVStartPos);
895 const startDir = Cartesian3.clone(camera.direction, scratch3DToCVStartDir);
896 const startUp = Cartesian3.clone(camera.up, scratch3DToCVStartUp);
897 startPos.z = endPos.z;
898
899 function update(value) {
900 columbusViewMorph(startPos, endPos, value.time, camera.position);
901 columbusViewMorph(startDir, endDir, value.time, camera.direction);
902 columbusViewMorph(startUp, endUp, value.time, camera.up);
903 Cartesian3.cross(camera.direction, camera.up, camera.right);
904 Cartesian3.normalize(camera.right, camera.right);
905 }
906 const tween = scene.tweens.add({
907 duration: duration,
908 easingFunction: EasingFunction.QUARTIC_OUT,
909 startObject: {
910 time: 0.0,
911 },
912 stopObject: {
913 time: 1.0,
914 },
915 update: update,
916 complete: function () {
917 complete(transitioner);
918 },
919 });
920 transitioner._currentTweens.push(tween);
921 }
922
923 if (transitioner._morphToOrthographic) {
924 morph();

Callers 2

morphFrom2DTo3DFunction · 0.85

Calls 3

completeFunction · 0.50
cloneMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…