|
@@ -1,63 +1,63 @@
|
|
|
<template>
|
|
|
+ <div
|
|
|
+ class="draw-layout"
|
|
|
+ @contextmenu.prevent
|
|
|
+ :style="{ cursor: cursorStyle }"
|
|
|
+ ref="layout"
|
|
|
+ :class="{ temp: tempStatus }"
|
|
|
+ >
|
|
|
+ <div class="mount-mask" :id="DomOutMountId" />
|
|
|
<div
|
|
|
- class="draw-layout"
|
|
|
- @contextmenu.prevent
|
|
|
- :style="{ cursor: cursorStyle }"
|
|
|
- ref="layout"
|
|
|
- :class="{ temp: tempStatus }"
|
|
|
+ class="draw-content"
|
|
|
+ :style="fix && { width: size?.width + 'px', height: size?.height + 'px' }"
|
|
|
>
|
|
|
- <div class="mount-mask" :id="DomOutMountId" />
|
|
|
- <div
|
|
|
- class="draw-content"
|
|
|
- :style="fix && { width: size?.width + 'px', height: size?.height + 'px' }"
|
|
|
- >
|
|
|
- <div class="mount-mask" :id="DomMountId"></div>
|
|
|
+ <div class="mount-mask" :id="DomMountId"></div>
|
|
|
|
|
|
- <v-stage ref="stage" :config="size" v-if="layout">
|
|
|
- <v-layer :config="viewerConfig" id="formal">
|
|
|
+ <v-stage ref="stage" :config="size" v-if="layout">
|
|
|
+ <v-layer :config="viewerConfig" id="formal">
|
|
|
+ <v-group>
|
|
|
<v-group>
|
|
|
- <v-group>
|
|
|
- <Back />
|
|
|
- </v-group>
|
|
|
- <v-group>
|
|
|
- <BackGrid v-if="expose.config.showGrid" />
|
|
|
- </v-group>
|
|
|
- </v-group>
|
|
|
- <v-group :id="DataGroupId">
|
|
|
- <component
|
|
|
- :is="GroupComponentMap[type]"
|
|
|
- v-for="type in types"
|
|
|
- :type="type"
|
|
|
- :key="type"
|
|
|
- />
|
|
|
+ <Back />
|
|
|
</v-group>
|
|
|
<v-group>
|
|
|
- <component
|
|
|
- v-for="part in mountParts.value"
|
|
|
- :is="part.comp"
|
|
|
- :key="part.props.key"
|
|
|
- v-bind="part.props"
|
|
|
- />
|
|
|
+ <BackGrid v-if="expose.config.showGrid" />
|
|
|
</v-group>
|
|
|
- </v-layer>
|
|
|
- <!-- 临时组,提供临时绘画,以及高频率渲染 -->
|
|
|
- <v-layer :config="viewerConfig" id="temp">
|
|
|
- <template v-if="mode.include(Mode.draw)">
|
|
|
- <TempShapeGroup v-for="type in types" :type="type" :key="type" />
|
|
|
- </template>
|
|
|
- </v-layer>
|
|
|
- <v-layer id="helper">
|
|
|
- <!-- <ActiveBoxs /> -->
|
|
|
- <SnapLines />
|
|
|
- <SplitLine v-if="expose.config.showLabelLine" />
|
|
|
- <Compass v-if="config.showCompass" />
|
|
|
- <layers v-if="store.layers.length > 1" />
|
|
|
- <Debugger v-if="isDev" />
|
|
|
- <Border />
|
|
|
- </v-layer>
|
|
|
- </v-stage>
|
|
|
- </div>
|
|
|
+ </v-group>
|
|
|
+ <v-group :id="DataGroupId">
|
|
|
+ <component
|
|
|
+ :is="GroupComponentMap[type]"
|
|
|
+ v-for="type in types"
|
|
|
+ :type="type"
|
|
|
+ :key="type"
|
|
|
+ />
|
|
|
+ </v-group>
|
|
|
+ <v-group>
|
|
|
+ <component
|
|
|
+ v-for="part in mountParts.value"
|
|
|
+ :is="part.comp"
|
|
|
+ :key="part.props.key"
|
|
|
+ v-bind="part.props"
|
|
|
+ />
|
|
|
+ </v-group>
|
|
|
+ </v-layer>
|
|
|
+ <!-- 临时组,提供临时绘画,以及高频率渲染 -->
|
|
|
+ <v-layer :config="viewerConfig" id="temp">
|
|
|
+ <template v-if="mode.include(Mode.draw)">
|
|
|
+ <TempShapeGroup v-for="type in types" :type="type" :key="type" />
|
|
|
+ </template>
|
|
|
+ </v-layer>
|
|
|
+ <v-layer id="helper">
|
|
|
+ <!-- <ActiveBoxs /> -->
|
|
|
+ <SnapLines />
|
|
|
+ <SplitLine v-if="expose.config.showLabelLine" />
|
|
|
+ <Compass v-if="config.showCompass" />
|
|
|
+ <layers v-if="store.layers.length > 1" />
|
|
|
+ <Debugger v-if="isDev" />
|
|
|
+ <Border />
|
|
|
+ </v-layer>
|
|
|
+ </v-stage>
|
|
|
</div>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts" setup>
|