调整history和3d

This commit is contained in:
X1627315083
2025-04-09 16:10:44 +08:00
parent e1eccba8a1
commit fd2e47e783
7 changed files with 46 additions and 39 deletions

View File

@@ -18,15 +18,15 @@
<div class="heard">
<div class="text">Technical sketch</div>
<div class="switch">
back
<a-switch v-model:checked="isFront" />
front
<a-switch v-model:checked="isFront" />
back
</div>
</div>
<div class="modelBox">
<div v-show="!imgOrThree" class="img">
<img v-show="isFront" :src="selectModel.threeDLayoutList?.[0]?.url" alt="">
<img v-show="!isFront" :src="selectModel.threeDLayoutList?.[1]?.url" alt="">
<img v-show="!isFront" :src="selectModel.threeDLayoutList?.[0]?.url" alt="">
<img v-show="isFront" :src="selectModel.threeDLayoutList?.[1]?.url" alt="">
</div>
<threeBox v-if="imgOrThree" ref="threeBox"></threeBox>
</div>
@@ -81,7 +81,7 @@ export default defineComponent({
const setSelectModel = (item:any)=>{
data.isShowMark = true
const value = {
threeDSimpleId:item.id,
threeDSimpleId:item.threeDSimpleId,
}
Https.axiosPost(Https.httpUrls.getLayoutDetail,{},{params:value}).then((res:any)=>{
data.selectModel = res
@@ -244,8 +244,10 @@ export default defineComponent({
align-items: center;
> .modelBox{
width: 100%;
height: 20rem;
height: 75rem;
// height: 20rem;
// height: 75rem;
flex: 1;
overflow: hidden;
margin: auto;
>.img{
width: 100%;

View File

@@ -229,7 +229,6 @@ export default defineComponent({
metalness: .2, // 金属质感 (0-1)
side: THREE.DoubleSide // 双面渲染
});
console.log(child)
// 6. 替换原有材质
child.material = newMaterial;
@@ -242,7 +241,6 @@ export default defineComponent({
}
data.load.state = false
},(xhr:any) => { // 加载进度回调
console.log(xhr.loaded , xhr.total)
const percent = xhr.total == 0?100:(xhr.loaded / xhr.total * 100).toFixed(2);
data.load.progress = percent
// updateProgressBar(Number(percent));
@@ -274,9 +272,7 @@ export default defineComponent({
data.group.add(scene);
resolve('')
},(xhr:any) => { // 加载进度回调
console.log(xhr.loaded , xhr.total)
const percent = xhr.total == 0?100:(xhr.loaded / xhr.total * 100).toFixed(2);
console.log(`模型加载进度: ${percent}%`);
data.load.progress = percent
// updateProgressBar(Number(percent));
},(error:any) => { // 加载失败回调
@@ -296,7 +292,6 @@ export default defineComponent({
// init()
// }
const getModelUrl = (value:any)=>{
console.log(12314343)
return new Promise((resolve, reject) => {
// Https.axiosGet(Https.httpUrls.getThreeDGlb,{params:{threeDSimpleId:value.id},env:{binary:true}}).then((rv)=>{

View File

@@ -17,14 +17,14 @@
<span v-show="isUnfold">Settings</span>
</div>
<div class="border"></div>
<div class="navList list" :class="{active:selectKey == item.value,exist:navListData.some((navListItem:any) => navListItem.value === item.value)}" v-for="item in projectList.all" :key="item.value" @click="setNav(item.value, $event)">
<div class="navList list" :class="{active:selectKey == item.value,exist:navListData.some((navListItem:any) => navListItem.value === item.value)}" v-for="item in navList" :key="item.value" @click="setNav(item.value, $event)">
<i :class="item.icon"></i>
<span v-show="isUnfold">{{ item.name }}</span>
</div>
</div>
</template>
<script lang="ts">
import { defineComponent,computed,ref,provide,nextTick,createVNode,toRefs, reactive} from 'vue'
import { defineComponent,watch,ref,provide,nextTick,createVNode,toRefs, reactive} from 'vue'
// import setDesignItem from '@/component/Detail/setDesignItem2.vue'
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { Https } from "@/tool/https";
@@ -43,7 +43,8 @@ export default defineComponent({
setup(props,{emit}) {
const store = useStore();
const data = reactive({
isUnfold:false
isUnfold:false,
navList:[] as any,
})
const dataDom = reactive({
@@ -58,6 +59,20 @@ export default defineComponent({
emit("setSelectKey", data);
// emit("update:selectKey", str);
}
watch(()=>props.navListData,(newVal:any)=>{
let list:any = projectList.all
const combined = [...newVal, ...list];
const seen = new Set();
data.navList = combined.filter((item:any) => {
if (seen.has(item.value)) {
return false; // 如果value已经出现过跳过当前对象
} else {
seen.add(item.value); // 如果value没有出现过保留当前对象
return true;
}
});
})
const setUnfold = ()=>{
data.isUnfold = !data.isUnfold
emit("unfold");

View File

@@ -272,7 +272,7 @@ export default {
CollectionsName:'名字',
source:'来源',
UptateTime:'修改时间',
SketchCounts:'草图数量',
SketchCounts:'项目名字',
Operations:'Operations',
jsContent1:'删除成功',
jsContent2:'您确定要删除这个收藏吗?',

View File

@@ -272,7 +272,7 @@ export default {
CollectionsName:'Collections Name',
source:'Source',
UptateTime:'Uptate Time',
SketchCounts:'Sketch Counts',
SketchCounts:'Project Name',
Operations:'Operations',
jsContent1:'Deleted successfully',
jsContent2:'Do you really want to delete this collection? ',

View File

@@ -55,11 +55,6 @@ const projectList = {
value:'patternMaking3D',
name:'3D Pattern Making',
task:'false',
},{
icon:'fi fi-rr-play-alt',
value:'poseTransfer',
name:'Transfer Pose',
task:'false',
},{
icon:'fi fi-rr-pen-swirl',
value:'canvas',

View File

@@ -122,28 +122,28 @@ export default defineComponent({
let time = formatTime(record.text / 1000, 'YYYY-MM-DD hh:mm:ss')
return time
}},
{
title: useI18n().t('HistoryPage.source'),
align:'center', ellipsis: true, width: 150,
dataIndex: 'original', key: 'original',
customRender:(record:any)=>{
let str = ''
if(record.text == 1){
str = useI18n().t('newScaleImage.Original')
}else{
str = `@${record.record.originalAccountName}/${record.record.originalPortfolioName}`
}
// let time = formatTime(record.text / 1000, 'YYYY-MM-DD hh:mm:ss')
return str
}
},
{ title: useI18n().t('HistoryPage.SketchCounts'), align:'center', ellipsis: true, width: 120, dataIndex: 'sketchCount', key: 'sketchCounts' },
// {
// title: useI18n().t('HistoryPage.source'),
// align:'center', ellipsis: true, width: 150,
// dataIndex: 'original', key: 'original',
// customRender:(record:any)=>{
// let str = ''
// if(record.text == 1){
// str = useI18n().t('newScaleImage.Original')
// }else{
// str = `@${record.record.originalAccountName}/${record.record.originalPortfolioName}`
// }
// // let time = formatTime(record.text / 1000, 'YYYY-MM-DD hh:mm:ss')
// return str
// }
// },
{ title: useI18n().t('HistoryPage.SketchCounts'), align:'center', ellipsis: true, width: 120, dataIndex: 'process', key: 'process' },
{
title: useI18n().t('HistoryPage.Operations'),
key: 'operation',
align:'center',
fixed: 'right',
width: 180,
width: 100,
// slots:{customRender:'action'}
Operations:true,
},