javascript - 請問有辦法透過 API 產(chǎn)生剖切面嗎?
問題描述
請問要如何透過 Viewer 的 API 來產(chǎn)生剖切面嗎?
像這截圖這樣:
問題解答
回答1:可以的,你可以透過 viewer.setCutPlanes() 這個函數(shù)來設(shè)置剖切面,它接受的是 THREE.Vector4 的數(shù)組 (array),也就是剖切面的數(shù)組。 每個 THREE.Vector4 都代表一個高等數(shù)學(xué)的面方程 ax + by + cz + d = 0 ,這個面方程的法向?yàn)?(a,b,c) 且與距離坐標(biāo)原點(diǎn) d 單位。此外, Forge Viewer 還以 THREE.Vector4 的 (x, y, z) 來表示面的法向 (a, b, c),w 代表與原點(diǎn)的距離 d。調(diào)用示例如下:
var cutplanes = [ new THREE.Vector4( 0, 0, -1, -17 ), new THREE.Vector4( 0, 0, 1, 0 ),];veiwer.setCutPlanes( cutplanes );
結(jié)果截圖:
如果要取消剖切的話,只要再調(diào)用一次 viewer.setCutPlanes() 且不傳入任何參數(shù)即可,取消后房子就回復(fù)原狀了:
康工您好,我是小趙,在上海就同問過您的名氣,現(xiàn)在想請教您,模型剖切后是否可以默認(rèn)選中顯示的部分(觸發(fā)that.viewer.getSelection()事件)。我對于forge只是入門,這個問題也困擾我一段時間了。
相關(guān)文章:
1. angular.js - angularjs的自定義過濾器如何給文字加顏色?2. MySQL中無法修改字段名的疑問3. javascript - 如何讓移動端網(wǎng)頁的輸入框固定在底部?4. angular.js - angular內(nèi)容過長展開收起效果5. docker鏡像push報(bào)錯6. javascript - 微信小程序限制加載個數(shù)7. 大家好,請問在python腳本中怎么用virtualenv激活指定的環(huán)境?8. android - QQ物聯(lián),視頻通話9. 網(wǎng)頁爬蟲 - 用Python3的requests庫模擬登陸B(tài)ilibili總是提示驗(yàn)證碼錯誤怎么辦?10. 請教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒有反應(yīng)
