导航选项卡-6ren">
gpt4 book ai didi

zooming - 是否有任何解决方法可以禁用 Google 地球插件的 "auto tilt when zooming"功能?

转载 作者:行者123 更新时间:2023-12-02 03:57:16 29 4
gpt4 key购买 nike

最新版本的 Google 地球附带了一项名为“缩放时自动倾斜”的功能。如果启用,Google Earth 会在您拉近表面时自动将相机倾斜到地平线。可以从 GUI 中禁用此功能(首选项 -> 导航选项卡)。不幸的是,到目前为止,我还没有找到一种方法来为 Google 地球插件禁用它。

客户端设置似乎对应于注册表项 (HKCU\Software\Google\Google Earth Plus\SwoopEnabled)。 Google Earth Plugin 注册表分支 (HKCU\Software\Google\GoogleEarthPlugin\SwoopEnabled) 中存在一个同名键,但是,将值“false”分配给它根本没有效果。与客户端不同,插件似乎不会评估设置。

有一个 API 方法可以禁用地面自动转换 (void GEOptions.setAutoGroundLevelViewEnabled(bool)),但这不会禁用自动倾斜行为。没有“GEOptions.setSwoopEnabled(bool)”这样的方法,尽管在我看来拥有一个方法很有意义。

Google Earth API 问题跟踪器将此问题列为问题:

http://code.google.com/p/earth-api-samples/issues/detail?id=23

但是,该条目是从 2008 年 8 月开始的,在我看来 Google 不太可能很快修复它。因此,我的问题是:是否有任何变通办法/黑客/调整..强制插件禁用烦人的自动倾斜功能?

任何帮助将不胜感激!

最佳答案

不,据我所知,无法禁用此行为。

...也就是说,如果 View 高度低于特定高度,您可以可能使用一些事件和条件逻辑以编程方式设置倾斜度。然而,这可能会带来其他问题,比如在一定高度以下根本无法倾斜 View 。尽管这对于您的实现来说可能是可以接受的...

无论如何,像下面这样的东西可能对你有用,尽管它写在这里并且未经测试。

google.earth.addEventListener(ge, 'frameend', setView);

var setView = function() {
var camera = ge.getView().copyAsCamera(ge.ALTITUDE_RELATIVE_TO_GROUND);
if(camera.getAltitude() < BASE_ALTITUDE && camera.getTilt() >= AUTO_TILT_AMMOUNT) {
var speed = ge.getOptions().getFlyToSpeed();
ge.getOptions().setFlyToSpeed(ge.SPEED_TELEPORT);
camera.setTilt(0);
ge.getView().setAbstractView(camera);
ge.getOptions().setFlyToSpeed(speed);
}
}

BASE_ALTITUDE 是“俯冲”开始时的高度,AUTO_TILT_AMMOUNT 是“俯冲”(错误)俯冲后的倾斜值。

关于zooming - 是否有任何解决方法可以禁用 Google 地球插件的 "auto tilt when zooming"功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12054480/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com