14、three.js用ray射線點(diǎn)擊模型出現(xiàn)面板介紹
注意問題:(1) width: calc(100% - 200px);將面板元素的左側(cè)位置設(shè)置為200像素,同時將其寬度設(shè)置為屏幕寬度減去200像素。請注意,在這里使用了 calc() 函數(shù)來計算面板元素的寬度,這是一種計算 CSS 屬性值的方法,可以在其中使用算術(shù)表達(dá)式。
1、具體使用案例
創(chuàng)建examples/adminray.html文件——》

上述代碼講解:
創(chuàng)建一個 Raycaster 對象用于檢測用戶點(diǎn)擊的模型,同時創(chuàng)建一個 Vector2 對象用于保存鼠標(biāo)點(diǎn)擊的位置。在 onClick 函數(shù)中,通過計算鼠標(biāo)點(diǎn)擊的位置,將其轉(zhuǎn)換為 Three.js 中的坐標(biāo)系。然后使用射線檢測算法獲取與點(diǎn)擊位置相交的模型,如果有相交的模型,則從 intersects 數(shù)組中取出第一個模型并生成模型信息,將其顯示在面板中;如果沒有相交的模型,則隱藏面板。
標(biāo)簽: