/** ******************************************************************
 *  场景坐标变换控制器. 主要负责实现场景的最终视觉坐标系呈现
 *  1. 三维球
 *  2. 哥伦布平面
 *  3. 正摄平面
 *
 *********************************************************************/
//@ts-ignore
import { SceneTransitioner } from '@taotieh/cesium_extend';
var LoopControl = /** @class */ (function () {
    function LoopControl(scene) {
        this._detention = 0.5;
        this._scene = scene;
        this._transitioner = new SceneTransitioner(scene);
    }
    LoopControl.prototype._switchModeToGlobe = function (t) {
        if (t === void 0) { t = this._detention; }
        var scene = this._scene;
        scene.morphTo3D(t);
    };
    LoopControl.prototype._switchModeToColumbus = function (t) {
        if (t === void 0) { t = this._detention; }
        var scene = this._scene;
        scene.morphToColumbusView(t);
    };
    LoopControl.prototype._switchModeToOrthographic = function (t) {
        if (t === void 0) { t = this._detention; }
        var scene = this._scene;
        scene.morphTo2D(t);
    };
    LoopControl.prototype.switchMode = function (mode) {
        switch (mode) {
            case 'globe':
                this._switchModeToGlobe();
                break;
            case 'columbus':
                this._switchModeToColumbus();
                break;
            case 'orthographic':
                this._switchModeToOrthographic();
                break;
            default:
                break;
        }
    };
    return LoopControl;
}());
export default LoopControl;
