Refine example pages

This commit is contained in:
yanzexuan
2022-12-02 15:52:49 +08:00
parent 19778ef385
commit dadda6fb96
8 changed files with 91 additions and 233 deletions

View File

@ -30,59 +30,34 @@
import DxfSettingsPanel from './demo/settings/DxfSettingsPanel.js';
import LayerManager from './demo/layerManager/LayerManager.js';
const models= [{
modelId: "dxf_0",
name: "dxf_0",
src: "./demo/models/dxf/rac_basic_sample_project.dxf",
const filename = "rac_basic_sample_project";
const modelCfg = {
modelId: filename,
name: filename,
src: `./demo/models/dxf/${filename}.dxf`,
merge: true,
visible: true,
}];
const config = {
};
const viewerCfg = {
containerId: "myCanvas",
enableAxisGizmo: true,
enableStats: true,
enableToolbar: true,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
enableSelection: true,
};
const viewer = new DxfViewer(config);
// const fontFiles = ["three/fonts/Microsoft_YaHei_Regular.typeface.json"];
const viewer = new DxfViewer(viewerCfg);
const fontFiles = ["./demo/three/fonts/hztxt.shx", "./demo/three/fonts/simplex.shx"];
await viewer.setFont(fontFiles);
window.viewer = viewer;
// loadProjectModel
let counter = 0; // to indicate how many models are loading
models.forEach((modelCfg) => {
if (modelCfg.visible === false) {
// visible is true by default
return; // only load visible ones
}
counter++;
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
};
try {
viewer.loadModelAsync(modelCfg, onProgress).then(() => {
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
}).finally(() => {
counter--;
});
} catch (ex) {
console.log(ex);
}
});
const onProgress = (event) => {
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer.loadModelAsync(modelCfg, onProgress);
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
// as a demo page, add dxfSettingsPanel to window!
window.dxfSettingsPanel = new DxfSettingsPanel(viewer);

View File

@ -17,60 +17,34 @@
import DxfSettingsPanel from './demo/settings/DxfSettingsPanel.js';
import LayerManager from "./demo/layerManager/LayerManager.js";
const models = [{
modelId: "dxf_1",
name: "dxf_1",
src: "./demo/models/dxf/apartments.dxf",
const filename = "apartments";
const modelCfg = {
modelId: filename,
name: filename,
src: `./demo/models/dxf/${filename}.dxf`,
merge: true,
visible: true,
}];
const config = {
};
const viewerCfg = {
containerId: "myCanvas",
enableAxisGizmo: true,
enableStats: true,
enableToolbar: true,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
};
const viewer = new DxfViewer(config);
// const fontFiles = ["three/fonts/Microsoft_YaHei_Regular.typeface.json"];
const viewer = new DxfViewer(viewerCfg);
const fontFiles = ["./demo/three/fonts/hztxt.shx", "./demo/three/fonts/simplex.shx"];
await viewer.setFont(fontFiles);
// loadProjectModel
let counter = 0; // to indicate how many models are loading
models.forEach((modelCfg) => {
if (modelCfg.visible === false) {
// visible is true by default
return; // only load visible ones
}
counter++;
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
};
try {
viewer
.loadModelAsync(modelCfg, onProgress)
.then(() => {
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
})
.finally(() => {
counter--;
});
} catch (ex) {
console.log(ex);
}
});
const onProgress = (event) => {
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer.loadModelAsync(modelCfg, onProgress);
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
// as a demo page, add dxfSettingsPanel to window!
window.dxfSettingsPanel = new DxfSettingsPanel(viewer);

View File

@ -17,60 +17,34 @@
import DxfSettingsPanel from './demo/settings/DxfSettingsPanel.js';
import LayerManager from "./demo/layerManager/LayerManager.js";
const models = [{
modelId: "dxf_2",
name: "dxf_2",
src: "./demo/models/dxf/doors_and_windows.dxf",
const filename = "doors_and_windows";
const modelCfg = {
modelId: filename,
name: filename,
src: `./demo/models/dxf/${filename}.dxf`,
merge: true,
visible: true,
}];
const config = {
};
const viewerCfg = {
containerId: "myCanvas",
enableAxisGizmo: true,
enableStats: true,
enableToolbar: true,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
};
const viewer = new DxfViewer(config);
// const fontFiles = ["three/fonts/Microsoft_YaHei_Regular.typeface.json"];
const viewer = new DxfViewer(viewerCfg);
const fontFiles = ["./demo/three/fonts/hztxt.shx", "./demo/three/fonts/simplex.shx"];
await viewer.setFont(fontFiles);
// loadProjectModel
let counter = 0; // to indicate how many models are loading
models.forEach((modelCfg) => {
if (modelCfg.visible === false) {
// visible is true by default
return; // only load visible ones
}
counter++;
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
};
try {
viewer
.loadModelAsync(modelCfg, onProgress)
.then(() => {
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
})
.finally(() => {
counter--;
});
} catch (ex) {
console.log(ex);
}
});
const onProgress = (event) => {
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer.loadModelAsync(modelCfg, onProgress);
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
// as a demo page, add dxfSettingsPanel to window!
window.dxfSettingsPanel = new DxfSettingsPanel(viewer);

View File

@ -24,11 +24,9 @@
const config = {
containerId: "myCanvas",
enableAxisGizmo: true,
enableStats: true,
enableToolbar: true,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
};
const viewer = new DxfViewer(config);
@ -37,12 +35,8 @@
await viewer.setFont(fontFiles);
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer.compare({src: url1, modelId: "dxf_3.dxf"}, {src: url2, modelId: "dxf_3_1.dxf"}, onProgress).then(() => {
console.log(`[Demo] Compared models: ${url1}, ${url2}`);

View File

@ -74,11 +74,10 @@
const config = {
containerId: "myCanvas3",
enableAxisGizmo: true,
enableStats: false,
enableToolbar: true,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
};
const viewer1 = new DxfViewer({ containerId: "myCanvas1"});
const viewer2 = new DxfViewer({ containerId: "myCanvas2"});
@ -89,12 +88,8 @@
await viewer3.setFont(fontFiles);
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer1.loadModelAsync(modelConfig1, onProgress);
await viewer2.loadModelAsync(modelConfig2, onProgress);

View File

@ -51,60 +51,33 @@
import DxfSettingsPanel from './demo/settings/DxfSettingsPanel.js';
import LayerManager from './demo/layerManager/LayerManager.js';
const models= [{
modelId: "dxf_0",
name: "dxf_0",
src: "./demo/models/dxf/rac_basic_sample_project.dxf",
const filename = "rac_basic_sample_project";
const modelCfg = {
modelId: filename,
name: filename,
src: `./demo/models/dxf/${filename}.dxf`,
merge: true,
visible: true,
}];
const config = {
};
const viewerCfg = {
containerId: "myCanvas",
enableAxisGizmo: true,
enableStats: true,
enableToolbar: false,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
enableSelection: true,
};
const viewer = new DxfViewer(config);
// const fontFiles = ["three/fonts/Microsoft_YaHei_Regular.typeface.json"];
const viewer = new DxfViewer(viewerCfg);
const fontFiles = ["./demo/three/fonts/hztxt.shx", "./demo/three/fonts/simplex.shx"];
await viewer.setFont(fontFiles);
window.viewer = viewer;
// loadProjectModel
let counter = 0; // to indicate how many models are loading
models.forEach((modelCfg) => {
if (modelCfg.visible === false) {
// visible is true by default
return; // only load visible ones
}
counter++;
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
};
try {
viewer.loadModelAsync(modelCfg, onProgress).then(() => {
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
}).finally(() => {
counter--;
});
} catch (ex) {
console.log(ex);
}
});
const onProgress = (event) => {
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer.loadModelAsync(modelCfg, onProgress);
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
// as a demo page, add dxfSettingsPanel to window!
window.dxfSettingsPanel = new DxfSettingsPanel(viewer);

View File

@ -105,60 +105,33 @@
import DxfSettingsPanel from './demo/settings/DxfSettingsPanel.js';
import LayerManager from './demo/layerManager/LayerManager.js';
const models= [{
modelId: "dxf_0",
name: "dxf_0",
src: "./demo/models/dxf/rac_basic_sample_project.dxf",
const filename = "rac_basic_sample_project";
const modelCfg = {
modelId: filename,
name: filename,
src: `./demo/models/dxf/${filename}.dxf`,
merge: true,
visible: true,
}];
const config = {
};
const viewerCfg = {
containerId: "myCanvas",
enableAxisGizmo: true,
enableStats: true,
enableToolbar: false,
enableSpinner: true,
enableProgressBar: true,
enableBottomBar: true,
enableLayoutBar: true,
enableSelection: true,
};
const viewer = new DxfViewer(config);
// const fontFiles = ["three/fonts/Microsoft_YaHei_Regular.typeface.json"];
const viewer = new DxfViewer(viewerCfg);
const fontFiles = ["./demo/three/fonts/hztxt.shx", "./demo/three/fonts/simplex.shx"];
await viewer.setFont(fontFiles);
window.viewer = viewer;
// loadProjectModel
let counter = 0; // to indicate how many models are loading
models.forEach((modelCfg) => {
if (modelCfg.visible === false) {
// visible is true by default
return; // only load visible ones
}
counter++;
const onProgress = (event) => {
let type = "Loading progress";
if (event.type === "parseProgress") {
type = "Parsing progress";
}
const progress = ((event.loaded * 100) / event.total).toFixed(2);
console.log(`[Demo] ${type}: ${progress}%`);
};
try {
viewer.loadModelAsync(modelCfg, onProgress).then(() => {
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
}).finally(() => {
counter--;
});
} catch (ex) {
console.log(ex);
}
});
const onProgress = (event) => {
const progress = ((event.loaded * 100) / event.total).toFixed(1);
console.log(`[Demo] Loading progress: ${progress}%`);
};
await viewer.loadModelAsync(modelCfg, onProgress);
console.log(`[Demo] Loaded model ${modelCfg.src}`);
if (!viewer.layerManager) {
viewer.layerManager = new LayerManager(viewer);
}
// as a demo page, add dxfSettingsPanel to window!
window.dxfSettingsPanel = new DxfSettingsPanel(viewer);

File diff suppressed because one or more lines are too long