|
@@ -173,48 +173,38 @@ export default class Magnifier extends THREE.Object3D {//放大镜or望远镜
|
|
})
|
|
})
|
|
|
|
|
|
var updateVisi = (e)=>{
|
|
var updateVisi = (e)=>{
|
|
- if(e.hoverViewport == viewer.mainViewport){
|
|
|
|
|
|
+ //if(e.hoverViewport == viewer.mainViewport){
|
|
Potree.Utils.updateVisible(this,"atViewport", true)
|
|
Potree.Utils.updateVisible(this,"atViewport", true)
|
|
this.update(e.intersect && e.intersect.location)
|
|
this.update(e.intersect && e.intersect.location)
|
|
- }else{
|
|
|
|
|
|
+ /* }else{
|
|
Potree.Utils.updateVisible(this,"atViewport", false) //小地图不显示
|
|
Potree.Utils.updateVisible(this,"atViewport", false) //小地图不显示
|
|
- }
|
|
|
|
|
|
+ } */
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- viewer.addEventListener('global_mousemove', updateVisi)
|
|
|
|
- viewer.addEventListener('global_touchstart', updateVisi)
|
|
|
|
|
|
+ //viewer.addEventListener('global_mousemove', updateVisi)
|
|
|
|
+ viewer.addEventListener('global_touchstart', updateVisi)
|
|
|
|
+ viewer.addEventListener('getIntersect', updateVisi)
|
|
|
|
|
|
|
|
|
|
- /* viewer.addEventListener("beginSplitView",()=>{
|
|
|
|
- this.updateVisible("splitView", false)
|
|
|
|
- })
|
|
|
|
- viewer.addEventListener("finishSplitView",()=>{
|
|
|
|
- this.updateVisible("splitView", true)
|
|
|
|
- }) */
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
this.addEventListener("setEnable",(e)=>{
|
|
this.addEventListener("setEnable",(e)=>{
|
|
- Potree.Utils.updateVisible(this, "enable", e.value) //界面开关
|
|
|
|
|
|
+ Potree.Utils.updateVisible(this, "enable", e.value, 1, e.value?'add':'cancel' ) //界面开关
|
|
/* if(Potree.settings.displayMode == 'showPanos') && e.value){
|
|
/* if(Potree.settings.displayMode == 'showPanos') && e.value){
|
|
Potree.settings.pointDensity = 'magnifier'
|
|
Potree.settings.pointDensity = 'magnifier'
|
|
}else if() */
|
|
}else if() */
|
|
|
|
|
|
})
|
|
})
|
|
-
|
|
|
|
-
|
|
|
|
- if(Potree.settings.isOfficial){
|
|
|
|
- Potree.Utils.updateVisible(this, "enable", false)
|
|
|
|
- }else{
|
|
|
|
- Potree.Utils.updateVisible(this, "measure", false)
|
|
|
|
- viewer.addEventListener("measureMovePoint",()=>{//测量开始
|
|
|
|
- Potree.Utils.updateVisible(this, "measure", true)
|
|
|
|
- })
|
|
|
|
- viewer.addEventListener("endMeasureMove",()=>{
|
|
|
|
- Potree.Utils.updateVisible(this, "measure", false)
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ //默认隐藏, 显示的条件:测量拖拽 或 外部消息setEnable
|
|
|
|
+
|
|
|
|
+ Potree.Utils.updateVisible(this, "default", false, 0) //默认隐藏
|
|
|
|
|
|
|
|
+ viewer.addEventListener("MeasureDragChange",(e)=>{//测量drag
|
|
|
|
+ Potree.Utils.updateVisible(this, "measure", e.state, 1, e.state?'add':'cancel')
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
|
|
viewer.scene.view.addEventListener('flyingDone',()=>{
|
|
viewer.scene.view.addEventListener('flyingDone',()=>{
|
|
if(!this.visible)return
|
|
if(!this.visible)return
|
|
@@ -229,11 +219,12 @@ export default class Magnifier extends THREE.Object3D {//放大镜or望远镜
|
|
|
|
|
|
//注意:在鼠标没有移动的时候,无法获取到最新的intersect, 放大镜内的内容可能是错误的。全景模式下更奇怪,原因未知
|
|
//注意:在鼠标没有移动的时候,无法获取到最新的intersect, 放大镜内的内容可能是错误的。全景模式下更奇怪,原因未知
|
|
update(aimPos){//相机靠近 navvis的做法
|
|
update(aimPos){//相机靠近 navvis的做法
|
|
|
|
+
|
|
var dontRender = this.dontRender || !(aimPos instanceof THREE.Vector3) || Potree.settings.displayMode == 'showPanos' && viewer.images360.flying
|
|
var dontRender = this.dontRender || !(aimPos instanceof THREE.Vector3) || Potree.settings.displayMode == 'showPanos' && viewer.images360.flying
|
|
aimPos = aimPos instanceof THREE.Vector3 ? aimPos : this.aimPos
|
|
aimPos = aimPos instanceof THREE.Vector3 ? aimPos : this.aimPos
|
|
if(!aimPos || !this.visible)return
|
|
if(!aimPos || !this.visible)return
|
|
|
|
|
|
-
|
|
|
|
|
|
+ //console.log('aimPos', aimPos)
|
|
|
|
|
|
var playerCamera = viewer.scene.getActiveCamera()
|
|
var playerCamera = viewer.scene.getActiveCamera()
|
|
|
|
|