0
我想要顯示同一場景的幾個視圖,其中1個完全交互,另外2個從頂部和右側只能縮放。所以我的問題是禁用渲染上的一些用戶交互。更改交互器的'config'屬性以禁用某些用戶事件
一種替代方法是重載其他事件處理程序方法,如果事件不是鼠標滾輪,則強制渲染器的相機保持相同的視圖。它的工作原理,但它不漂亮(無論是程序員還是用戶)。
所以我想改變我的渲染器的'配置'屬性。這裏是我的代碼和解釋的問題:
var r1 = new X.renderer('r1'); // r1 is created, but its "interactor" attribute is null, see visualization>renderer.js
r1.interactor().config.MOUSEWHEEL_ENABLED = false; // DO NOT work cause the "interactor" attribute of r1 is null
r1.init(); // r1 is initialized : it creates a new interactor, calls interactor.init(), and puts the new interactor in the "interactor" attribute of r1, , see visualization>renderer.js
r1.interactor().config.MOUSEWHEEL_ENABLED = false; // DO NOT work because the interactor.init() has already generated all the event handler methods and associated them to the listeners, see io>interactor.js
我也試過以下,但結果是我的渲染變黑/空:
var r1 = new X.renderer('r1');
r1.init();
r1.interactor().config.MOUSEWHEEL_ENABLED = false;
r1.interactor().init();
你看到的問題? 「配置」更改應該在創建新的交互器和初始化之間完成。但是,如果我沒有弄錯,就不能創建交互器並將其設置爲像「交互器」屬性受保護的渲染器。
我有什麼問題嗎?任何想法執行它?
是的,這就是我在閱讀代碼(組織得非常好)時所認爲的,謝謝! – Ricola3D