1. 程式人生 > >鼠標交互插件threex.domevents介紹

鼠標交互插件threex.domevents介紹

使用 bottom ott 鼠標 padding three.js ack round .com

threex.domevents是一個three.js的擴展庫,支持3D場景的交互。和我們操作DOM樹的事件相似,名稱都是一樣的。所以使用起來非常方便。另外他也提供了連接操作。單擊網格可實現跳轉功能。

如果僅僅使用Dom事件,需要引入:

<script src=‘threex.domevents.js‘></script>

如果需要使用鏈接跳轉,還需要引入:

<script src="threex.linkify.js"></script>

不管是使用事件還是跳轉,都得創建DomEvents對象:

var domEvents = new
THREEx.DomEvents(camera, webGLRenderer.domElement);
    THREEx.DomEvents.eventNames是一個包含了所有支持的事件的名稱集合。所有我們可以像下面這樣輸出所有事件操作的日誌:
THREEx.DomEvents.eventNames.forEach(function(eventName){
                if(eventName === "mousemove") return;
                domEvents.addEventListener(sphereMesh, eventName, 
function(event){ var domElement = document.querySelector("#log"); domElement.innerHTML = event.type + "<br/>" + domElement.innerHTML ; }, false); });

我們給sphereMesh網格註冊了所有DomEvents支持的事件。由於mousemove觸發太頻繁,所以忽略了它。

如何使用鏈接?代碼相當簡單:

THREEx.Linkify(domEvents, sphereMesh, "http://www.cnblogs.com/w_wanglei");

最後附上domEvents的源代碼下載地址:https://github.com/jeromeetienne/threex.domevents。

鼠標交互插件threex.domevents介紹