|
@@ -13,6 +13,8 @@ import { SceneType } from "@/store";
|
|
|
import { params } from "@/env";
|
|
|
import { fuseModel, modelProps } from "./index";
|
|
|
import { modelSDKFactory } from "./platform";
|
|
|
+import { getToken } from "@/api";
|
|
|
+import { offlinePrev } from "@/api/offline";
|
|
|
|
|
|
const typeChange = () => {
|
|
|
const oldType = modelProps.type;
|
|
@@ -34,7 +36,6 @@ export const Model = defineComponent({
|
|
|
setup() {
|
|
|
const scene = computed(() => modelProps.type !== fuseModel && modelProps.type);
|
|
|
const url = ref("");
|
|
|
- const modelEntry = offline ? 'offline.html':'index.html'
|
|
|
const setUrl = (newURL: string) => {
|
|
|
if (newURL !== url.value) {
|
|
|
setTimeout(() => {
|
|
@@ -59,15 +60,57 @@ export const Model = defineComponent({
|
|
|
return setUrl("");
|
|
|
}
|
|
|
const type = scene.value.type;
|
|
|
- const urls = {
|
|
|
- [SceneType.SWKK]: `/swkk/spg.html?m=${scene.value.num}`,
|
|
|
- [SceneType.SWKJ]: `/swkk/spg.html?m=${scene.value.num}`,
|
|
|
- [SceneType.SWSS]: `/swss/${modelEntry}?m=${scene.value.num}`,
|
|
|
- [SceneType.SWSSMX]: `/swkk/spg.html?m=${scene.value.num}`,
|
|
|
- [SceneType.SWMX]: `${modelEntry}?caseId=${params.caseId}&app=${params.app}&modelId=${scene.value.num}&share=1#sign-model`,
|
|
|
- [SceneType.SWYDSS]: `/swss/${modelEntry}?m=${scene.value.num}`,
|
|
|
- [SceneType.SWYDMX]: `/swkk/spg.html?m=${scene.value.num}`,
|
|
|
- };
|
|
|
+ const sign = params.sign ? `&sign=${params.sign}` : "";
|
|
|
+ const urls = offline
|
|
|
+ ? {
|
|
|
+ [SceneType.SWKK]: `${offlinePrev}swkk/${scene.value.num}/wwwroot/spg.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ [SceneType.DSFXJ]: `${offlinePrev}swkk/${scene.value.num}/wwwroot/spg.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ [SceneType.SWKJ]: `${offlinePrev}swkk/${scene.value.num}/wwwroot/spg.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ [SceneType.SWSS]: `${offlinePrev}swss/${scene.value.num}/www/offline.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ [SceneType.SWSSMX]: `${offlinePrev}swkk/${scene.value.num}/wwwroot/spg.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ [SceneType.SWMX]: `offline.html?caseId=${params.caseId}&modelId=${scene.value.num}&share=1#sign-model`,
|
|
|
+ [SceneType.SWYDSS]: `${offlinePrev}swss/${scene.value.num}/www/offline.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ [SceneType.SWYDMX]: `${offlinePrev}swkk/${scene.value.num}/wwwroot/spg.html?m=${scene.value.num}&lang=zh`,
|
|
|
+ }
|
|
|
+ : {
|
|
|
+ [SceneType.SWKK]: `/swkk/spg.html?m=${scene.value.num}${sign}`,
|
|
|
+ [SceneType.DSFXJ]: `/swkk/spg.html?m=${scene.value.num}${sign}`,
|
|
|
+ [SceneType.SWKJ]: `/swkk/spg.html?m=${scene.value.num}${sign}`,
|
|
|
+ [SceneType.SWSS]: `/swss/index.html?m=${scene.value.num}${sign}`,
|
|
|
+ [SceneType.SWSSMX]: `/swkk/spg.html?m=${scene.value.num}${sign}`,
|
|
|
+ [SceneType.SWMX]: `index.html?caseId=${params.caseId}&modelId=${scene.value.num}${sign}#sign-model`,
|
|
|
+ [SceneType.SWYDSS]: `/swss/index.html?m=${scene.value.num}${sign}`,
|
|
|
+ [SceneType.SWYDMX]: `/swkk/spg.html?m=${scene.value.num}${sign}`,
|
|
|
+ };
|
|
|
+
|
|
|
+ if (import.meta.env.DEV && !offline) {
|
|
|
+ Object.assign(urls, {
|
|
|
+ [SceneType.SWKK]: `/swkk/spg.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }&toen=${getToken()}${sign}`,
|
|
|
+ [SceneType.DSFXJ]: `/swkk/spg.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }&toen=${getToken()}${sign}`,
|
|
|
+ [SceneType.SWKJ]: `/swkk/spg.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }&toen=${getToken()}${sign}`,
|
|
|
+ [SceneType.SWSS]: `/swss/index.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }&toen=${getToken()}${sign}`,
|
|
|
+ [SceneType.SWSSMX]: `/swkk/spg.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }&toen=${getToken()}${sign}`,
|
|
|
+ [SceneType.SWMX]: `index.html?caseId=${params.caseId}&modelId=${
|
|
|
+ scene.value.num
|
|
|
+ }&toen=${getToken()}${sign}#sign-model`,
|
|
|
+ [SceneType.SWYDSS]: `/swss/index.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }${sign}&toen=${getToken()}`,
|
|
|
+ [SceneType.SWYDMX]: `/swkk/spg.html?m=${
|
|
|
+ scene.value.num
|
|
|
+ }${sign}&toen=${getToken()}`,
|
|
|
+ });
|
|
|
+ }
|
|
|
setUrl(urls[type]);
|
|
|
});
|
|
|
|
|
@@ -109,8 +152,8 @@ export const Model = defineComponent({
|
|
|
// 手动渲染融合场景
|
|
|
console.log("手动渲染!");
|
|
|
setTimeout(() => {
|
|
|
- (window as any).viewer.setDisplay(true);
|
|
|
- }, 100);
|
|
|
+ (window as any).viewer?.setDisplay(true);
|
|
|
+ }, 1000);
|
|
|
}
|
|
|
|
|
|
const interval = setInterval(async () => {
|
|
@@ -180,7 +223,7 @@ export default Model;
|
|
|
|
|
|
#direction {
|
|
|
right: calc(var(--editor-menu-right) + var(--editor-toolbox-width)) !important;
|
|
|
- top: calc(var(--header-top) + var(--editor-head-height)) !important;
|
|
|
+ top: calc(var(--header-top) + var(--editor-head-height) + 50px) !important;
|
|
|
margin: 10px;
|
|
|
transition: top 0.3s ease, right 0.3s ease;
|
|
|
}
|