给场景中的设备描边关键代码
import { EffectComposer } from 'three/examples/jsm/postprocessing/EffectComposer'
let composer = null
let outlinePassRing = null // 光圈
composer = new EffectComposer(renderer)
outlinePassRing = new OutlinePass(new THREE.Vector2(div3D.clientWidth, div3D.clientHeight), scene, camera)
let paramsRing = {
edgeStrength: 3.0, // 强度
edgeGlow: 1, // 边缘明暗度
edgeThickness: 2.0, // 边缘雾化度
pulsePeriod: 3, // 闪烁 值越大频率越低
rotate: false,
usePatternTexture: false // 是否使用皮肤
}
outlinePassRing.visibleEdgeColor.set('#ff0000')
outlinePassRing.edgeStrength = paramsRing.edgeStrength
outlinePassRing.edgeGlow = paramsRing.edgeGlow
outlinePassRing.pulsePeriod = paramsRing.pulsePeriod
outlinePassRing.edgeThickness = paramsRing.edgeThickness
outlinePassRing.renderToScreen = true
composer.addPass(outlinePassRing)
let dev = scene.getObjectByName(`设备名称`)
outlinePassRing.selected