|
@@ -62,7 +62,7 @@
|
|
|
<!-- 底部操作按钮 -->
|
|
|
<el-row class="canvas-actions-box">
|
|
|
<canvasFun @fit="fit" @savePng="savePng" @saveSvg="saveSvg" @divide="divide" @clearDivide="clearDivide" @undo="undo" @redo="redo"
|
|
|
- @scale="scale" :isEdit="isEdit" ref="canvasFun"></canvasFun>
|
|
|
+ @changeAbsorb="changeAbsorb" @scale="scale" @groupSelect="groupSelect" :config="config" ref="canvasFun"></canvasFun>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
<!-- -->
|
|
@@ -135,7 +135,11 @@ export default {
|
|
|
FloorObj: {}, //楼层对象
|
|
|
FloorMap: '', //楼层底图
|
|
|
tab: {},
|
|
|
- isEdit: false,
|
|
|
+ config: {
|
|
|
+ isEdit: false,
|
|
|
+ divide: true,
|
|
|
+ groupSelect: true
|
|
|
+ },
|
|
|
canvasLoading: false,
|
|
|
view: null,
|
|
|
scene: null,
|
|
@@ -183,6 +187,11 @@ export default {
|
|
|
// 业务空间
|
|
|
this.getBusinessSpace();
|
|
|
}
|
|
|
+ this.config = {
|
|
|
+ isEdit: false,
|
|
|
+ divide: true,
|
|
|
+ groupSelect: true
|
|
|
+ }
|
|
|
// 获取当前楼层的元空间
|
|
|
this.getFloorISpace();
|
|
|
// 查询未关联业务空间的元空间
|
|
@@ -365,6 +374,11 @@ export default {
|
|
|
// 编辑平面图
|
|
|
editGraphy() {
|
|
|
this.type = 3;
|
|
|
+ this.config.isEdit = true;
|
|
|
+ this.config.groupSelect = false;
|
|
|
+ this.config.divide = true;
|
|
|
+ // 设置业务空间不可选
|
|
|
+ this.scene.isZoneSelectable = false
|
|
|
},
|
|
|
// 查看未关联的业务空间--flag--查看-or-选择
|
|
|
lookUnrelatBSpace(flag) {
|
|
@@ -390,7 +404,16 @@ export default {
|
|
|
this.groupCreateBSpace()
|
|
|
} else if (this.groupCreateType == 2) {
|
|
|
this.type = 5;
|
|
|
+ this.config.isEdit = true;
|
|
|
+ this.config.groupSelect = true;
|
|
|
+ this.config.divide = false;
|
|
|
this.groupCreateDialogVis = false;
|
|
|
+ // 清空选中空间
|
|
|
+ this.scene.clearSpaceSelection();
|
|
|
+ // 设置空间可选
|
|
|
+ this.scene.isSpaceSelectable = true;
|
|
|
+ // 设置业务空间不可选
|
|
|
+ this.scene.isZoneSelectable = false;
|
|
|
}
|
|
|
},
|
|
|
// 批量创建业务空间
|
|
@@ -497,7 +520,8 @@ export default {
|
|
|
// 设置空间可选
|
|
|
this.scene.isSpaceSelectable = true;
|
|
|
// 将已关联的设置不可选,并将当前选的隐藏
|
|
|
- this.scene.changeSelectZone(this.curZoneItem);
|
|
|
+ this.scene.isZoneSelectable = false;
|
|
|
+ this.curZoneItem.visible = false;
|
|
|
},
|
|
|
// 重新划分--保存
|
|
|
saveRefactorBSP() {
|
|
@@ -518,7 +542,7 @@ export default {
|
|
|
this.updateBSPOutline(zoneObj, IspaceIdList)
|
|
|
},
|
|
|
// 批量创建所选业务空间
|
|
|
- groupCreateZone(){},
|
|
|
+ groupCreateZone() { },
|
|
|
// 更新业务空间和元空间的关系
|
|
|
relationInBSPandISP(SpaceId, IspaceIdList) {
|
|
|
let pa = {
|
|
@@ -614,6 +638,14 @@ export default {
|
|
|
this.view = new FloorView('floorCanvas')
|
|
|
},
|
|
|
// 工具栏操作
|
|
|
+ // 吸附
|
|
|
+ changeAbsorb(isAbsorbing) {
|
|
|
+ this.scene.isAbsorbing = isAbsorbing;
|
|
|
+ },
|
|
|
+ // 框选
|
|
|
+ groupSelect() {
|
|
|
+ this.scene.isRectSelection = true;
|
|
|
+ },
|
|
|
// 适配底图到窗口
|
|
|
fit() {
|
|
|
this.view.fitSceneToView()
|