|
@@ -103331,7 +103331,7 @@ ENDSEC
|
|
|
|
|
|
|
|
|
init(){
|
|
|
- let {pos,scale,rotation} = this.getBoxPose();
|
|
|
+
|
|
|
this.box = new BoxVolume$1({
|
|
|
clip:true , lineMat: new LineDashedMaterial({
|
|
|
dashSize:0.1,
|
|
@@ -103345,11 +103345,9 @@ ENDSEC
|
|
|
this.box.clipTask = ClipTask['SHOW_INSIDE_Big' ];
|
|
|
this.box.showBox = true;
|
|
|
this.box.name = "ClipBox";
|
|
|
- this.box.position.copy(pos);
|
|
|
- this.box.scale.copy(scale);
|
|
|
- this.box.rotation.copy(rotation);
|
|
|
+
|
|
|
viewer.scene.addVolume(this.box);
|
|
|
-
|
|
|
+ this.setBoxPose();
|
|
|
this.box.visible = false;
|
|
|
|
|
|
/* viewer.addEventListener('addBaseLine',(e)=>{
|
|
@@ -103370,7 +103368,7 @@ ENDSEC
|
|
|
},
|
|
|
|
|
|
|
|
|
- getBoxPose(){
|
|
|
+ setBoxPose(){
|
|
|
//box底部不变,永远在bound的底部。但top会根据height改变
|
|
|
let boxData = this.getBoxData();
|
|
|
let bound = viewer.bound.boundingBox.clone();
|
|
@@ -103379,7 +103377,9 @@ ENDSEC
|
|
|
let rotation = new Euler(0,0,boxData.rotAngle);
|
|
|
scale.setX(scale.x*boxData.scaleXY).setY(scale.y*boxData.scaleXY);
|
|
|
|
|
|
- return {pos,scale,rotation}
|
|
|
+ this.box.position.copy(pos);
|
|
|
+ this.box.rotation.copy(rotation);
|
|
|
+ this.box.scale.copy(scale);
|
|
|
},
|
|
|
|
|
|
//暂定为在手动设置旋转之前 , 如果有基准线,使用基准线的旋转角。
|