|
@@ -34,7 +34,8 @@ const viewportProps = [{
|
|
|
direction : new THREE.Vector3(0,0,-1), //镜头朝向
|
|
direction : new THREE.Vector3(0,0,-1), //镜头朝向
|
|
|
active: true,
|
|
active: true,
|
|
|
//相机位置在z轴正向
|
|
//相机位置在z轴正向
|
|
|
- limitBound: new THREE.Box3(new THREE.Vector3(-Infinity,-Infinity, 1),new THREE.Vector3(Infinity,Infinity,5000)), //在地面以上
|
|
|
|
|
|
|
+ viewContainsPoints:[new THREE.Vector3(0,0,0)],//为了看到ground
|
|
|
|
|
+ // limitBound: new THREE.Box3(new THREE.Vector3(-Infinity,-Infinity, 1),new THREE.Vector3(Infinity,Infinity,5000)), //在地面以上
|
|
|
margin:{x:50, y:150} ,
|
|
margin:{x:50, y:150} ,
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
@@ -46,7 +47,7 @@ const viewportProps = [{
|
|
|
direction : new THREE.Vector3(1,0,0),
|
|
direction : new THREE.Vector3(1,0,0),
|
|
|
active: true,
|
|
active: true,
|
|
|
//相机位置在x轴负向 右下角屏
|
|
//相机位置在x轴负向 右下角屏
|
|
|
- viewContainsPoints:[new THREE.Vector3(0,0,0)],
|
|
|
|
|
|
|
+ viewContainsPoints:[new THREE.Vector3(0,0,0)],//为了看到轴线
|
|
|
margin:{x:300, y:250} ,
|
|
margin:{x:300, y:250} ,
|
|
|
} ]
|
|
} ]
|
|
|
let cylinderSkyGeo, oldSkyGeo
|
|
let cylinderSkyGeo, oldSkyGeo
|
|
@@ -414,7 +415,7 @@ let MergeEditor = {
|
|
|
let rightViewport = viewer.viewports.find(e=>e.name == 'right')
|
|
let rightViewport = viewer.viewports.find(e=>e.name == 'right')
|
|
|
let topViewport = viewer.viewports.find(e=>e.name == 'top')
|
|
let topViewport = viewer.viewports.find(e=>e.name == 'top')
|
|
|
topViewport.alignment = true
|
|
topViewport.alignment = true
|
|
|
- rightViewport.rotateSide = true
|
|
|
|
|
|
|
+ rightViewport.rotateSide = true
|
|
|
rightViewport.skyboxFixPos = true
|
|
rightViewport.skyboxFixPos = true
|
|
|
rightViewport.skyboxMinZoom = 10
|
|
rightViewport.skyboxMinZoom = 10
|
|
|
rightViewport.skyboxRenderFun = ()=>{// 使cube的一面永远正向镜头。 因侧视图的camera是ortho类型,需要平视mesh才不会拉伸
|
|
rightViewport.skyboxRenderFun = ()=>{// 使cube的一面永远正向镜头。 因侧视图的camera是ortho类型,需要平视mesh才不会拉伸
|
|
@@ -443,8 +444,23 @@ let MergeEditor = {
|
|
|
viewer.compass.changeViewport(viewer.viewports[1])
|
|
viewer.compass.changeViewport(viewer.viewports[1])
|
|
|
viewer.compass.setDomPos()
|
|
viewer.compass.setDomPos()
|
|
|
|
|
|
|
|
-
|
|
|
|
|
//this.changeSkyboxGeo(true)
|
|
//this.changeSkyboxGeo(true)
|
|
|
|
|
+ /*
|
|
|
|
|
+ if(this.selected){
|
|
|
|
|
+ this.splitFarFun = ()=>{//移动位置后两边都要更新far
|
|
|
|
|
+ viewer.viewports.forEach(v=>{
|
|
|
|
|
+ let far = this.SplitScreen.getCamFar(v)
|
|
|
|
|
+ v.camera.far = far
|
|
|
|
|
+ v.camera.updateProjectionMatrix()
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ this.selected.addEventListener('transformChanged', this.splitFarFun)
|
|
|
|
|
+
|
|
|
|
|
+ this.splitFarFun()
|
|
|
|
|
+ } */
|
|
|
|
|
+ this.SplitScreen.updateCameraOutOfModel()
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
@@ -452,6 +468,7 @@ let MergeEditor = {
|
|
|
this.split = false
|
|
this.split = false
|
|
|
this.SplitScreen.unSplit()
|
|
this.SplitScreen.unSplit()
|
|
|
viewer.setControls(viewer.orbitControls)
|
|
viewer.setControls(viewer.orbitControls)
|
|
|
|
|
+ //this.selected?.removeEventListener('transformChanged', this.splitFarFun)
|
|
|
|
|
|
|
|
Potree.settings.pointDensity = this.beforeSplit.pointDensity
|
|
Potree.settings.pointDensity = this.beforeSplit.pointDensity
|
|
|
/* if(this.selected && this.selected.isPointcloud){
|
|
/* if(this.selected && this.selected.isPointcloud){
|
|
@@ -473,6 +490,7 @@ let MergeEditor = {
|
|
|
|
|
|
|
|
rotateSideCamera(angle){
|
|
rotateSideCamera(angle){
|
|
|
this.SplitScreen.rotateSideCamera(viewer.viewports.find(e=>e.name == 'right'), angle)
|
|
this.SplitScreen.rotateSideCamera(viewer.viewports.find(e=>e.name == 'right'), angle)
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
setTransformState(state){//校准时
|
|
setTransformState(state){//校准时
|