viral-viewer-2 6.2.0 → 6.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -0
- package/dist/threejs-addon/n8ao/post-processing.d.ts +109 -109
- package/dist/viralution-viewer.js +2 -0
- package/dist/viralution-viewer.js.LICENSE.txt +19 -0
- package/package.json +6 -4
- package/dist/components/animation/viral-animation.js +0 -59
- package/dist/components/animation/viral-animation.js.map +0 -1
- package/dist/components/bvh/viral-bvh.js +0 -19
- package/dist/components/bvh/viral-bvh.js.map +0 -1
- package/dist/components/camera/viral-camera.js +0 -201
- package/dist/components/camera/viral-camera.js.map +0 -1
- package/dist/components/centralized-event-handler/viral-centralized-event-handler.d.ts +0 -7
- package/dist/components/centralized-event-handler/viral-centralized-event-handler.js +0 -47
- package/dist/components/centralized-event-handler/viral-centralized-event-handler.js.map +0 -1
- package/dist/components/compress/viral-compress.processor.js +0 -13
- package/dist/components/compress/viral-compress.processor.js.map +0 -1
- package/dist/components/context-menu/viral-context-menu.d.ts +0 -17
- package/dist/components/context-menu/viral-context-menu.js +0 -74
- package/dist/components/context-menu/viral-context-menu.js.map +0 -1
- package/dist/components/custom-objects/index.js +0 -6
- package/dist/components/custom-objects/index.js.map +0 -1
- package/dist/components/custom-objects/viral-instanced-mesh.js +0 -200
- package/dist/components/custom-objects/viral-instanced-mesh.js.map +0 -1
- package/dist/components/data-manager/viral-data-manager.js +0 -35
- package/dist/components/data-manager/viral-data-manager.js.map +0 -1
- package/dist/components/event-handler/base/event-dispatcher.js +0 -35
- package/dist/components/event-handler/base/event-dispatcher.js.map +0 -1
- package/dist/components/event-handler/keyboard/viral-keyboard.js +0 -76
- package/dist/components/event-handler/keyboard/viral-keyboard.js.map +0 -1
- package/dist/components/event-handler/mouse/viral-mouse.js +0 -234
- package/dist/components/event-handler/mouse/viral-mouse.js.map +0 -1
- package/dist/components/event-handler/viral-centralized-event-handler.js +0 -158
- package/dist/components/event-handler/viral-centralized-event-handler.js.map +0 -1
- package/dist/components/event-handler/viral-lifecycle-event-handler.js +0 -55
- package/dist/components/event-handler/viral-lifecycle-event-handler.js.map +0 -1
- package/dist/components/keyboard/viral-keyboard.d.ts +0 -17
- package/dist/components/keyboard/viral-keyboard.js +0 -76
- package/dist/components/keyboard/viral-keyboard.js.map +0 -1
- package/dist/components/loader/viral-point-cloud.loader.js +0 -33
- package/dist/components/loader/viral-point-cloud.loader.js.map +0 -1
- package/dist/components/loader/viral-revit.loader.js +0 -119
- package/dist/components/loader/viral-revit.loader.js.map +0 -1
- package/dist/components/loader/viral-three.loader.js +0 -20
- package/dist/components/loader/viral-three.loader.js.map +0 -1
- package/dist/components/loader/viral.loader.js +0 -16
- package/dist/components/loader/viral.loader.js.map +0 -1
- package/dist/components/material/viral-material-manager.js +0 -60
- package/dist/components/material/viral-material-manager.js.map +0 -1
- package/dist/components/mouse/viral-mouse.d.ts +0 -31
- package/dist/components/mouse/viral-mouse.js +0 -234
- package/dist/components/mouse/viral-mouse.js.map +0 -1
- package/dist/components/navigation-cube/components/cube-camera.d.ts +0 -15
- package/dist/components/navigation-cube/components/cube-camera.js +0 -74
- package/dist/components/navigation-cube/components/cube-camera.js.map +0 -1
- package/dist/components/navigation-cube/components/cube-renderer.d.ts +0 -9
- package/dist/components/navigation-cube/components/cube-renderer.js +0 -31
- package/dist/components/navigation-cube/components/cube-renderer.js.map +0 -1
- package/dist/components/navigation-cube/components/cube-scene.d.ts +0 -13
- package/dist/components/navigation-cube/components/cube-scene.js +0 -546
- package/dist/components/navigation-cube/components/cube-scene.js.map +0 -1
- package/dist/components/navigation-cube/components/cube.mouse.d.ts +0 -9
- package/dist/components/navigation-cube/components/cube.mouse.js +0 -109
- package/dist/components/navigation-cube/components/cube.mouse.js.map +0 -1
- package/dist/components/navigation-cube/viral-navigation-cube.d.ts +0 -16
- package/dist/components/navigation-cube/viral-navigation-cube.js +0 -50
- package/dist/components/navigation-cube/viral-navigation-cube.js.map +0 -1
- package/dist/components/post-processing/ambient-occlusion-effect.d.ts +0 -11
- package/dist/components/post-processing/ambient-occlusion-effect.js +0 -32
- package/dist/components/post-processing/ambient-occlusion-effect.js.map +0 -1
- package/dist/components/post-processing/bloom-effect.d.ts +0 -11
- package/dist/components/post-processing/bloom-effect.js +0 -29
- package/dist/components/post-processing/bloom-effect.js.map +0 -1
- package/dist/components/post-processing/outline-effect.d.ts +0 -13
- package/dist/components/post-processing/outline-effect.js +0 -33
- package/dist/components/post-processing/outline-effect.js.map +0 -1
- package/dist/components/post-processing/post-processing-renderer.js +0 -46
- package/dist/components/post-processing/post-processing-renderer.js.map +0 -1
- package/dist/components/post-processing/viral-post-processing.d.ts +0 -11
- package/dist/components/post-processing/viral-post-processing.js +0 -29
- package/dist/components/post-processing/viral-post-processing.js.map +0 -1
- package/dist/components/renderer/viral-renderer.js +0 -51
- package/dist/components/renderer/viral-renderer.js.map +0 -1
- package/dist/components/scene/viral-scene.js +0 -129
- package/dist/components/scene/viral-scene.js.map +0 -1
- package/dist/components/spinner/viral-spinner.d.ts +0 -10
- package/dist/components/spinner/viral-spinner.js +0 -207
- package/dist/components/spinner/viral-spinner.js.map +0 -1
- package/dist/components/stats/viral-stats.js +0 -17
- package/dist/components/stats/viral-stats.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-ambient-occlusion.d.ts +0 -7
- package/dist/components/tools/tools/viral-tool-ambient-occlusion.js +0 -16
- package/dist/components/tools/tools/viral-tool-ambient-occlusion.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-dark-mode.d.ts +0 -7
- package/dist/components/tools/tools/viral-tool-dark-mode.js +0 -21
- package/dist/components/tools/tools/viral-tool-dark-mode.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-elevation.d.ts +0 -11
- package/dist/components/tools/tools/viral-tool-elevation.js +0 -30
- package/dist/components/tools/tools/viral-tool-elevation.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-measure.d.ts +0 -33
- package/dist/components/tools/tools/viral-tool-measure.js +0 -243
- package/dist/components/tools/tools/viral-tool-measure.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-sunlight.d.ts +0 -7
- package/dist/components/tools/tools/viral-tool-sunlight.js +0 -46
- package/dist/components/tools/tools/viral-tool-sunlight.js.map +0 -1
- package/dist/components/tools/viral-tools.d.ts +0 -32
- package/dist/components/tools/viral-tools.js +0 -213
- package/dist/components/tools/viral-tools.js.map +0 -1
- package/dist/components/visibility-manager/viral-visibility-manager.js +0 -166
- package/dist/components/visibility-manager/viral-visibility-manager.js.map +0 -1
- package/dist/components/worker/base/worker-pool.js +0 -68
- package/dist/components/worker/base/worker-pool.js.map +0 -1
- package/dist/components/worker/base/worker-thread.js +0 -35
- package/dist/components/worker/base/worker-thread.js.map +0 -1
- package/dist/components/worker/fetch-data.worker.js +0 -31
- package/dist/components/worker/fetch-data.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer-2.worker.js +0 -127
- package/dist/components/worker/viral-viewer-2.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer-3.worker.js +0 -82
- package/dist/components/worker/viral-viewer-3.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer-4.worker.js +0 -97
- package/dist/components/worker/viral-viewer-4.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer.worker.js +0 -107
- package/dist/components/worker/viral-viewer.worker.js.map +0 -1
- package/dist/components/worker-script/fetch-data-worker.script.js +0 -56
- package/dist/components/worker-script/fetch-data-worker.script.js.map +0 -1
- package/dist/components/worker-script/load-model-worker-2.script.js +0 -2704
- package/dist/components/worker-script/load-model-worker-2.script.js.map +0 -1
- package/dist/components/worker-script/load-model-worker-3.script.js +0 -34170
- package/dist/components/worker-script/load-model-worker-3.script.js.map +0 -1
- package/dist/components/worker-script/load-model-worker.script.js +0 -148
- package/dist/components/worker-script/load-model-worker.script.js.map +0 -1
- package/dist/components/worker-script/threejs.types.js +0 -34162
- package/dist/components/worker-script/threejs.types.js.map +0 -1
- package/dist/const/colors.js +0 -38
- package/dist/const/colors.js.map +0 -1
- package/dist/const/fonts.js +0 -17
- package/dist/const/fonts.js.map +0 -1
- package/dist/gui/context-menu/viral-context-menu.js +0 -74
- package/dist/gui/context-menu/viral-context-menu.js.map +0 -1
- package/dist/gui/draggable-modal/viral-draggable-modal.js +0 -91
- package/dist/gui/draggable-modal/viral-draggable-modal.js.map +0 -1
- package/dist/gui/fonts/fonts.js +0 -20
- package/dist/gui/fonts/fonts.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube-camera.js +0 -74
- package/dist/gui/navigation-cube/components/cube-camera.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube-renderer.js +0 -31
- package/dist/gui/navigation-cube/components/cube-renderer.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube-scene.js +0 -546
- package/dist/gui/navigation-cube/components/cube-scene.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube.mouse.js +0 -109
- package/dist/gui/navigation-cube/components/cube.mouse.js.map +0 -1
- package/dist/gui/navigation-cube/viral-navigation-cube.js +0 -50
- package/dist/gui/navigation-cube/viral-navigation-cube.js.map +0 -1
- package/dist/gui/spinner/viral-spinner.js +0 -102
- package/dist/gui/spinner/viral-spinner.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-ambient-occlusion.js +0 -16
- package/dist/gui/tools/tools/viral-tool-ambient-occlusion.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-dark-mode.js +0 -21
- package/dist/gui/tools/tools/viral-tool-dark-mode.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-elevation.js +0 -30
- package/dist/gui/tools/tools/viral-tool-elevation.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-measure.js +0 -243
- package/dist/gui/tools/tools/viral-tool-measure.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-sunlight.js +0 -46
- package/dist/gui/tools/tools/viral-tool-sunlight.js.map +0 -1
- package/dist/gui/tools/viral-tools.js +0 -213
- package/dist/gui/tools/viral-tools.js.map +0 -1
- package/dist/index.js +0 -21
- package/dist/index.js.map +0 -1
- package/dist/models/dictionary.model.d.ts +0 -0
- package/dist/models/dictionary.model.js +0 -1
- package/dist/models/dictionary.model.js.map +0 -1
- package/dist/services/local-storage.service.js +0 -57
- package/dist/services/local-storage.service.js.map +0 -1
- package/dist/threejs-addon/buffer-geometry-utils.d.ts +0 -64
- package/dist/threejs-addon/buffer-geometry-utils.js +0 -807
- package/dist/threejs-addon/buffer-geometry-utils.js.map +0 -1
- package/dist/threejs-addon/gltf-loader.d.ts +0 -17
- package/dist/threejs-addon/gltf-loader.js +0 -2796
- package/dist/threejs-addon/gltf-loader.js.map +0 -1
- package/dist/threejs-addon/n8ao/n8ao.js +0 -1952
- package/dist/threejs-addon/n8ao/n8ao.js.map +0 -1
- package/dist/threejs-addon/n8ao/post-processing.js +0 -15145
- package/dist/threejs-addon/n8ao/post-processing.js.map +0 -1
- package/dist/threejs-addon/post-processing/effect-composer.d.ts +0 -27
- package/dist/threejs-addon/post-processing/effect-composer.js +0 -134
- package/dist/threejs-addon/post-processing/effect-composer.js.map +0 -1
- package/dist/threejs-addon/post-processing/mask-pass.d.ts +0 -11
- package/dist/threejs-addon/post-processing/mask-pass.js +0 -69
- package/dist/threejs-addon/post-processing/mask-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/outline-pass.d.ts +0 -58
- package/dist/threejs-addon/post-processing/outline-pass.js +0 -484
- package/dist/threejs-addon/post-processing/outline-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/output-pass.d.ts +0 -11
- package/dist/threejs-addon/post-processing/output-pass.js +0 -61
- package/dist/threejs-addon/post-processing/output-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/pass.d.ts +0 -20
- package/dist/threejs-addon/post-processing/pass.js +0 -48
- package/dist/threejs-addon/post-processing/pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/render-pass.d.ts +0 -13
- package/dist/threejs-addon/post-processing/render-pass.js +0 -50
- package/dist/threejs-addon/post-processing/render-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/sao-pass.d.ts +0 -62
- package/dist/threejs-addon/post-processing/sao-pass.js +0 -296
- package/dist/threejs-addon/post-processing/sao-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/shader-pass.d.ts +0 -11
- package/dist/threejs-addon/post-processing/shader-pass.js +0 -48
- package/dist/threejs-addon/post-processing/shader-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/ssaa-render-pass.d.ts +0 -30
- package/dist/threejs-addon/post-processing/ssaa-render-pass.js +0 -202
- package/dist/threejs-addon/post-processing/ssaa-render-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/unreal-bloom-pass.d.ts +0 -48
- package/dist/threejs-addon/post-processing/unreal-bloom-pass.js +0 -290
- package/dist/threejs-addon/post-processing/unreal-bloom-pass.js.map +0 -1
- package/dist/threejs-addon/shaders/color-correction-shader.d.ts +0 -22
- package/dist/threejs-addon/shaders/color-correction-shader.js +0 -43
- package/dist/threejs-addon/shaders/color-correction-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/copy-shader.d.ts +0 -13
- package/dist/threejs-addon/shaders/copy-shader.js +0 -39
- package/dist/threejs-addon/shaders/copy-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/depth-limited-blur-shader.d.ts +0 -48
- package/dist/threejs-addon/shaders/depth-limited-blur-shader.js +0 -142
- package/dist/threejs-addon/shaders/depth-limited-blur-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/fxaa-shader.d.ts +0 -14
- package/dist/threejs-addon/shaders/fxaa-shader.js +0 -279
- package/dist/threejs-addon/shaders/fxaa-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/luminosity-high-pass-shader.d.ts +0 -27
- package/dist/threejs-addon/shaders/luminosity-high-pass-shader.js +0 -56
- package/dist/threejs-addon/shaders/luminosity-high-pass-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/output-shader.d.ts +0 -13
- package/dist/threejs-addon/shaders/output-shader.js +0 -72
- package/dist/threejs-addon/shaders/output-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/sao-shader.d.ts +0 -71
- package/dist/threejs-addon/shaders/sao-shader.js +0 -180
- package/dist/threejs-addon/shaders/sao-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/unpack-depth-rgba-shader.d.ts +0 -13
- package/dist/threejs-addon/shaders/unpack-depth-rgba-shader.js +0 -41
- package/dist/threejs-addon/shaders/unpack-depth-rgba-shader.js.map +0 -1
- package/dist/threejs-addon/simplify-modifier.d.ts +0 -4
- package/dist/threejs-addon/simplify-modifier.js +0 -325
- package/dist/threejs-addon/simplify-modifier.js.map +0 -1
- package/dist/threejs-addon/stats.js +0 -102
- package/dist/threejs-addon/stats.js.map +0 -1
- package/dist/threejs-addon/transform-control.d.ts +0 -74
- package/dist/threejs-addon/transform-control.js +0 -1033
- package/dist/threejs-addon/transform-control.js.map +0 -1
- package/dist/types.js +0 -145
- package/dist/types.js.map +0 -1
- package/dist/utils/html.js +0 -12
- package/dist/utils/html.js.map +0 -1
- package/dist/utils/index.js +0 -10
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/log.js +0 -14
- package/dist/utils/log.js.map +0 -1
- package/dist/utils/threejs.js +0 -44
- package/dist/utils/threejs.js.map +0 -1
- package/dist/viral-viewer-api.js +0 -73
- package/dist/viral-viewer-api.js.map +0 -1
|
@@ -1,325 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SimplifyModifier = void 0;
|
|
4
|
-
const three_1 = require("three");
|
|
5
|
-
const BufferGeometryUtils = require("./buffer-geometry-utils.js");
|
|
6
|
-
/**
|
|
7
|
-
* Simplification Geometry Modifier
|
|
8
|
-
* - based on code and technique
|
|
9
|
-
* - by Stan Melax in 1998
|
|
10
|
-
* - Progressive Mesh type Polygon Reduction Algorithm
|
|
11
|
-
* - http://www.melax.com/polychop/
|
|
12
|
-
*/
|
|
13
|
-
const _cb = new three_1.Vector3(), _ab = new three_1.Vector3();
|
|
14
|
-
class SimplifyModifier {
|
|
15
|
-
modify(geometry, count) {
|
|
16
|
-
geometry = geometry.clone();
|
|
17
|
-
const attributes = geometry.attributes;
|
|
18
|
-
// this modifier can only process indexed and non-indexed geomtries with a position attribute
|
|
19
|
-
for (const name in attributes) {
|
|
20
|
-
if (name !== 'position')
|
|
21
|
-
geometry.deleteAttribute(name);
|
|
22
|
-
}
|
|
23
|
-
geometry = BufferGeometryUtils.mergeVertices(geometry);
|
|
24
|
-
//
|
|
25
|
-
// put data of original geometry in different data structures
|
|
26
|
-
//
|
|
27
|
-
const vertices = [];
|
|
28
|
-
const faces = [];
|
|
29
|
-
// add vertices
|
|
30
|
-
const positionAttribute = geometry.getAttribute('position');
|
|
31
|
-
for (let i = 0; i < positionAttribute.count; i++) {
|
|
32
|
-
const v = new three_1.Vector3().fromBufferAttribute(positionAttribute, i);
|
|
33
|
-
const vertex = new Vertex(v);
|
|
34
|
-
vertices.push(vertex);
|
|
35
|
-
}
|
|
36
|
-
// add faces
|
|
37
|
-
let index = geometry.getIndex();
|
|
38
|
-
if (index !== null) {
|
|
39
|
-
for (let i = 0; i < index.count; i += 3) {
|
|
40
|
-
const a = index.getX(i);
|
|
41
|
-
const b = index.getX(i + 1);
|
|
42
|
-
const c = index.getX(i + 2);
|
|
43
|
-
const triangle = new Triangle(vertices[a], vertices[b], vertices[c], a, b, c);
|
|
44
|
-
faces.push(triangle);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
for (let i = 0; i < positionAttribute.count; i += 3) {
|
|
49
|
-
const a = i;
|
|
50
|
-
const b = i + 1;
|
|
51
|
-
const c = i + 2;
|
|
52
|
-
const triangle = new Triangle(vertices[a], vertices[b], vertices[c], a, b, c);
|
|
53
|
-
faces.push(triangle);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
// compute all edge collapse costs
|
|
57
|
-
for (let i = 0, il = vertices.length; i < il; i++) {
|
|
58
|
-
computeEdgeCostAtVertex(vertices[i]);
|
|
59
|
-
}
|
|
60
|
-
let nextVertex;
|
|
61
|
-
let z = count;
|
|
62
|
-
if (count > vertices.length) {
|
|
63
|
-
z = length;
|
|
64
|
-
}
|
|
65
|
-
while (z--) {
|
|
66
|
-
nextVertex = minimumCostEdge(vertices);
|
|
67
|
-
if (!nextVertex) {
|
|
68
|
-
console.log('THREE.SimplifyModifier: No next vertex');
|
|
69
|
-
break;
|
|
70
|
-
}
|
|
71
|
-
collapse(vertices, faces, nextVertex, nextVertex.collapseNeighbor);
|
|
72
|
-
}
|
|
73
|
-
//
|
|
74
|
-
const simplifiedGeometry = new three_1.BufferGeometry();
|
|
75
|
-
const position = [];
|
|
76
|
-
index = [];
|
|
77
|
-
//
|
|
78
|
-
for (let i = 0; i < vertices.length; i++) {
|
|
79
|
-
const vertex = vertices[i].position;
|
|
80
|
-
position.push(vertex.x, vertex.y, vertex.z);
|
|
81
|
-
// cache final index to GREATLY speed up faces reconstruction
|
|
82
|
-
vertices[i].id = i;
|
|
83
|
-
}
|
|
84
|
-
//
|
|
85
|
-
for (let i = 0; i < faces.length; i++) {
|
|
86
|
-
const face = faces[i];
|
|
87
|
-
index.push(face.v1.id, face.v2.id, face.v3.id);
|
|
88
|
-
}
|
|
89
|
-
//
|
|
90
|
-
simplifiedGeometry.setAttribute('position', new three_1.Float32BufferAttribute(position, 3));
|
|
91
|
-
simplifiedGeometry.setIndex(index);
|
|
92
|
-
return simplifiedGeometry;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
exports.SimplifyModifier = SimplifyModifier;
|
|
96
|
-
function pushIfUnique(array, object) {
|
|
97
|
-
if (array.indexOf(object) === -1)
|
|
98
|
-
array.push(object);
|
|
99
|
-
}
|
|
100
|
-
function removeFromArray(array, object) {
|
|
101
|
-
const k = array.indexOf(object);
|
|
102
|
-
if (k > -1)
|
|
103
|
-
array.splice(k, 1);
|
|
104
|
-
}
|
|
105
|
-
function computeEdgeCollapseCost(u, v) {
|
|
106
|
-
// if we collapse edge uv by moving u to v then how
|
|
107
|
-
// much different will the model change, i.e. the "error".
|
|
108
|
-
const edgelength = v.position.distanceTo(u.position);
|
|
109
|
-
let curvature = 0;
|
|
110
|
-
const sideFaces = [];
|
|
111
|
-
// find the "sides" triangles that are on the edge uv
|
|
112
|
-
for (let i = 0, il = u.faces.length; i < il; i++) {
|
|
113
|
-
const face = u.faces[i];
|
|
114
|
-
if (face.hasVertex(v)) {
|
|
115
|
-
sideFaces.push(face);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
// use the triangle facing most away from the sides
|
|
119
|
-
// to determine our curvature term
|
|
120
|
-
for (let i = 0, il = u.faces.length; i < il; i++) {
|
|
121
|
-
let minCurvature = 1;
|
|
122
|
-
const face = u.faces[i];
|
|
123
|
-
for (let j = 0; j < sideFaces.length; j++) {
|
|
124
|
-
const sideFace = sideFaces[j];
|
|
125
|
-
// use dot product of face normals.
|
|
126
|
-
const dotProd = face.normal.dot(sideFace.normal);
|
|
127
|
-
minCurvature = Math.min(minCurvature, (1.001 - dotProd) / 2);
|
|
128
|
-
}
|
|
129
|
-
curvature = Math.max(curvature, minCurvature);
|
|
130
|
-
}
|
|
131
|
-
// crude approach in attempt to preserve borders
|
|
132
|
-
// though it seems not to be totally correct
|
|
133
|
-
const borders = 0;
|
|
134
|
-
if (sideFaces.length < 2) {
|
|
135
|
-
// we add some arbitrary cost for borders,
|
|
136
|
-
// borders += 10;
|
|
137
|
-
curvature = 1;
|
|
138
|
-
}
|
|
139
|
-
const amt = edgelength * curvature + borders;
|
|
140
|
-
return amt;
|
|
141
|
-
}
|
|
142
|
-
function computeEdgeCostAtVertex(v) {
|
|
143
|
-
// compute the edge collapse cost for all edges that start
|
|
144
|
-
// from vertex v. Since we are only interested in reducing
|
|
145
|
-
// the object by selecting the min cost edge at each step, we
|
|
146
|
-
// only cache the cost of the least cost edge at this vertex
|
|
147
|
-
// (in member variable collapse) as well as the value of the
|
|
148
|
-
// cost (in member variable collapseCost).
|
|
149
|
-
if (v.neighbors.length === 0) {
|
|
150
|
-
// collapse if no neighbors.
|
|
151
|
-
v.collapseNeighbor = null;
|
|
152
|
-
v.collapseCost = -0.01;
|
|
153
|
-
return;
|
|
154
|
-
}
|
|
155
|
-
v.collapseCost = 100000;
|
|
156
|
-
v.collapseNeighbor = null;
|
|
157
|
-
// search all neighboring edges for "least cost" edge
|
|
158
|
-
for (let i = 0; i < v.neighbors.length; i++) {
|
|
159
|
-
const collapseCost = computeEdgeCollapseCost(v, v.neighbors[i]);
|
|
160
|
-
if (!v.collapseNeighbor) {
|
|
161
|
-
v.collapseNeighbor = v.neighbors[i];
|
|
162
|
-
v.collapseCost = collapseCost;
|
|
163
|
-
v.minCost = collapseCost;
|
|
164
|
-
v.totalCost = 0;
|
|
165
|
-
v.costCount = 0;
|
|
166
|
-
}
|
|
167
|
-
v.costCount++;
|
|
168
|
-
v.totalCost += collapseCost;
|
|
169
|
-
if (collapseCost < v.minCost) {
|
|
170
|
-
v.collapseNeighbor = v.neighbors[i];
|
|
171
|
-
v.minCost = collapseCost;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
// we average the cost of collapsing at this vertex
|
|
175
|
-
v.collapseCost = v.totalCost / v.costCount;
|
|
176
|
-
// v.collapseCost = v.minCost;
|
|
177
|
-
}
|
|
178
|
-
function removeVertex(v, vertices) {
|
|
179
|
-
console.assert(v.faces.length === 0);
|
|
180
|
-
while (v.neighbors.length) {
|
|
181
|
-
const n = v.neighbors.pop();
|
|
182
|
-
removeFromArray(n.neighbors, v);
|
|
183
|
-
}
|
|
184
|
-
removeFromArray(vertices, v);
|
|
185
|
-
}
|
|
186
|
-
function removeFace(f, faces) {
|
|
187
|
-
removeFromArray(faces, f);
|
|
188
|
-
if (f.v1)
|
|
189
|
-
removeFromArray(f.v1.faces, f);
|
|
190
|
-
if (f.v2)
|
|
191
|
-
removeFromArray(f.v2.faces, f);
|
|
192
|
-
if (f.v3)
|
|
193
|
-
removeFromArray(f.v3.faces, f);
|
|
194
|
-
// TODO optimize this!
|
|
195
|
-
const vs = [f.v1, f.v2, f.v3];
|
|
196
|
-
for (let i = 0; i < 3; i++) {
|
|
197
|
-
const v1 = vs[i];
|
|
198
|
-
const v2 = vs[(i + 1) % 3];
|
|
199
|
-
if (!v1 || !v2)
|
|
200
|
-
continue;
|
|
201
|
-
v1.removeIfNonNeighbor(v2);
|
|
202
|
-
v2.removeIfNonNeighbor(v1);
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
function collapse(vertices, faces, u, v) {
|
|
206
|
-
// Collapse the edge uv by moving vertex u onto v
|
|
207
|
-
if (!v) {
|
|
208
|
-
// u is a vertex all by itself so just delete it..
|
|
209
|
-
removeVertex(u, vertices);
|
|
210
|
-
return;
|
|
211
|
-
}
|
|
212
|
-
const tmpVertices = [];
|
|
213
|
-
for (let i = 0; i < u.neighbors.length; i++) {
|
|
214
|
-
tmpVertices.push(u.neighbors[i]);
|
|
215
|
-
}
|
|
216
|
-
// delete triangles on edge uv:
|
|
217
|
-
for (let i = u.faces.length - 1; i >= 0; i--) {
|
|
218
|
-
if (u.faces[i] && u.faces[i].hasVertex(v)) {
|
|
219
|
-
removeFace(u.faces[i], faces);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
// update remaining triangles to have v instead of u
|
|
223
|
-
for (let i = u.faces.length - 1; i >= 0; i--) {
|
|
224
|
-
u.faces[i].replaceVertex(u, v);
|
|
225
|
-
}
|
|
226
|
-
removeVertex(u, vertices);
|
|
227
|
-
// recompute the edge collapse costs in neighborhood
|
|
228
|
-
for (let i = 0; i < tmpVertices.length; i++) {
|
|
229
|
-
computeEdgeCostAtVertex(tmpVertices[i]);
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
function minimumCostEdge(vertices) {
|
|
233
|
-
// O(n * n) approach. TODO optimize this
|
|
234
|
-
let least = vertices[0];
|
|
235
|
-
for (let i = 0; i < vertices.length; i++) {
|
|
236
|
-
if (vertices[i].collapseCost < least.collapseCost) {
|
|
237
|
-
least = vertices[i];
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
return least;
|
|
241
|
-
}
|
|
242
|
-
// we use a triangle class to represent structure of face slightly differently
|
|
243
|
-
class Triangle {
|
|
244
|
-
constructor(v1, v2, v3, a, b, c) {
|
|
245
|
-
this.a = a;
|
|
246
|
-
this.b = b;
|
|
247
|
-
this.c = c;
|
|
248
|
-
this.v1 = v1;
|
|
249
|
-
this.v2 = v2;
|
|
250
|
-
this.v3 = v3;
|
|
251
|
-
this.normal = new three_1.Vector3();
|
|
252
|
-
this.computeNormal();
|
|
253
|
-
v1.faces.push(this);
|
|
254
|
-
v1.addUniqueNeighbor(v2);
|
|
255
|
-
v1.addUniqueNeighbor(v3);
|
|
256
|
-
v2.faces.push(this);
|
|
257
|
-
v2.addUniqueNeighbor(v1);
|
|
258
|
-
v2.addUniqueNeighbor(v3);
|
|
259
|
-
v3.faces.push(this);
|
|
260
|
-
v3.addUniqueNeighbor(v1);
|
|
261
|
-
v3.addUniqueNeighbor(v2);
|
|
262
|
-
}
|
|
263
|
-
computeNormal() {
|
|
264
|
-
const vA = this.v1.position;
|
|
265
|
-
const vB = this.v2.position;
|
|
266
|
-
const vC = this.v3.position;
|
|
267
|
-
_cb.subVectors(vC, vB);
|
|
268
|
-
_ab.subVectors(vA, vB);
|
|
269
|
-
_cb.cross(_ab).normalize();
|
|
270
|
-
this.normal.copy(_cb);
|
|
271
|
-
}
|
|
272
|
-
hasVertex(v) {
|
|
273
|
-
return v === this.v1 || v === this.v2 || v === this.v3;
|
|
274
|
-
}
|
|
275
|
-
replaceVertex(oldv, newv) {
|
|
276
|
-
if (oldv === this.v1)
|
|
277
|
-
this.v1 = newv;
|
|
278
|
-
else if (oldv === this.v2)
|
|
279
|
-
this.v2 = newv;
|
|
280
|
-
else if (oldv === this.v3)
|
|
281
|
-
this.v3 = newv;
|
|
282
|
-
removeFromArray(oldv.faces, this);
|
|
283
|
-
newv.faces.push(this);
|
|
284
|
-
oldv.removeIfNonNeighbor(this.v1);
|
|
285
|
-
this.v1.removeIfNonNeighbor(oldv);
|
|
286
|
-
oldv.removeIfNonNeighbor(this.v2);
|
|
287
|
-
this.v2.removeIfNonNeighbor(oldv);
|
|
288
|
-
oldv.removeIfNonNeighbor(this.v3);
|
|
289
|
-
this.v3.removeIfNonNeighbor(oldv);
|
|
290
|
-
this.v1.addUniqueNeighbor(this.v2);
|
|
291
|
-
this.v1.addUniqueNeighbor(this.v3);
|
|
292
|
-
this.v2.addUniqueNeighbor(this.v1);
|
|
293
|
-
this.v2.addUniqueNeighbor(this.v3);
|
|
294
|
-
this.v3.addUniqueNeighbor(this.v1);
|
|
295
|
-
this.v3.addUniqueNeighbor(this.v2);
|
|
296
|
-
this.computeNormal();
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
class Vertex {
|
|
300
|
-
constructor(v) {
|
|
301
|
-
this.position = v;
|
|
302
|
-
this.id = -1; // external use position in vertices list (for e.g. face generation)
|
|
303
|
-
this.faces = []; // faces vertex is connected
|
|
304
|
-
this.neighbors = []; // neighbouring vertices aka "adjacentVertices"
|
|
305
|
-
// these will be computed in computeEdgeCostAtVertex()
|
|
306
|
-
this.collapseCost = 0; // cost of collapsing this vertex, the less the better. aka objdist
|
|
307
|
-
this.collapseNeighbor = null; // best candinate for collapsing
|
|
308
|
-
}
|
|
309
|
-
addUniqueNeighbor(vertex) {
|
|
310
|
-
pushIfUnique(this.neighbors, vertex);
|
|
311
|
-
}
|
|
312
|
-
removeIfNonNeighbor(n) {
|
|
313
|
-
const neighbors = this.neighbors;
|
|
314
|
-
const faces = this.faces;
|
|
315
|
-
const offset = neighbors.indexOf(n);
|
|
316
|
-
if (offset === -1)
|
|
317
|
-
return;
|
|
318
|
-
for (let i = 0; i < faces.length; i++) {
|
|
319
|
-
if (faces[i].hasVertex(n))
|
|
320
|
-
return;
|
|
321
|
-
}
|
|
322
|
-
neighbors.splice(offset, 1);
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
//# sourceMappingURL=simplify-modifier.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simplify-modifier.js","sourceRoot":"","sources":["../../src/threejs-addon/simplify-modifier.js"],"names":[],"mappings":"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"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @author mrdoob / http://mrdoob.com/
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var Stats = function () {
|
|
7
|
-
var mode = 0;
|
|
8
|
-
var container = document.createElement('div');
|
|
9
|
-
container.style.cssText = 'position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000';
|
|
10
|
-
container.addEventListener('click', function (event) {
|
|
11
|
-
event.preventDefault();
|
|
12
|
-
showPanel(++mode % container.children.length);
|
|
13
|
-
}, false);
|
|
14
|
-
//
|
|
15
|
-
function addPanel(panel) {
|
|
16
|
-
container.appendChild(panel.dom);
|
|
17
|
-
return panel;
|
|
18
|
-
}
|
|
19
|
-
function showPanel(id) {
|
|
20
|
-
for (var i = 0; i < container.children.length; i++) {
|
|
21
|
-
container.children[i].style.display = i === id ? 'block' : 'none';
|
|
22
|
-
}
|
|
23
|
-
mode = id;
|
|
24
|
-
}
|
|
25
|
-
//
|
|
26
|
-
var beginTime = (performance || Date).now(), prevTime = beginTime, frames = 0;
|
|
27
|
-
var fpsPanel = addPanel(new Stats.Panel('FPS', '#0ff', '#002'));
|
|
28
|
-
var msPanel = addPanel(new Stats.Panel('MS', '#0f0', '#020'));
|
|
29
|
-
if (self.performance && self.performance.memory) {
|
|
30
|
-
var memPanel = addPanel(new Stats.Panel('MB', '#f08', '#201'));
|
|
31
|
-
}
|
|
32
|
-
showPanel(0);
|
|
33
|
-
return {
|
|
34
|
-
REVISION: 16,
|
|
35
|
-
dom: container,
|
|
36
|
-
addPanel: addPanel,
|
|
37
|
-
showPanel: showPanel,
|
|
38
|
-
begin: function () {
|
|
39
|
-
beginTime = (performance || Date).now();
|
|
40
|
-
},
|
|
41
|
-
end: function () {
|
|
42
|
-
frames++;
|
|
43
|
-
var time = (performance || Date).now();
|
|
44
|
-
msPanel.update(time - beginTime, 200);
|
|
45
|
-
if (time > prevTime + 1000) {
|
|
46
|
-
fpsPanel.update((frames * 1000) / (time - prevTime), 100);
|
|
47
|
-
prevTime = time;
|
|
48
|
-
frames = 0;
|
|
49
|
-
if (memPanel) {
|
|
50
|
-
var memory = performance.memory;
|
|
51
|
-
memPanel.update(memory.usedJSHeapSize / 1048576, memory.jsHeapSizeLimit / 1048576);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return time;
|
|
55
|
-
},
|
|
56
|
-
update: function () {
|
|
57
|
-
beginTime = this.end();
|
|
58
|
-
},
|
|
59
|
-
// Backwards Compatibility
|
|
60
|
-
domElement: container,
|
|
61
|
-
setMode: showPanel
|
|
62
|
-
};
|
|
63
|
-
};
|
|
64
|
-
Stats.Panel = function (name, fg, bg) {
|
|
65
|
-
var min = Infinity, max = 0, round = Math.round;
|
|
66
|
-
var PR = round(window.devicePixelRatio || 1);
|
|
67
|
-
var WIDTH = 80 * PR, HEIGHT = 48 * PR, TEXT_X = 3 * PR, TEXT_Y = 2 * PR, GRAPH_X = 3 * PR, GRAPH_Y = 15 * PR, GRAPH_WIDTH = 74 * PR, GRAPH_HEIGHT = 30 * PR;
|
|
68
|
-
var canvas = document.createElement('canvas');
|
|
69
|
-
canvas.width = WIDTH;
|
|
70
|
-
canvas.height = HEIGHT;
|
|
71
|
-
canvas.style.cssText = 'width:80px;height:48px';
|
|
72
|
-
var context = canvas.getContext('2d');
|
|
73
|
-
context.font = 'bold ' + (9 * PR) + 'px Helvetica,Arial,sans-serif';
|
|
74
|
-
context.textBaseline = 'top';
|
|
75
|
-
context.fillStyle = bg;
|
|
76
|
-
context.fillRect(0, 0, WIDTH, HEIGHT);
|
|
77
|
-
context.fillStyle = fg;
|
|
78
|
-
context.fillText(name, TEXT_X, TEXT_Y);
|
|
79
|
-
context.fillRect(GRAPH_X, GRAPH_Y, GRAPH_WIDTH, GRAPH_HEIGHT);
|
|
80
|
-
context.fillStyle = bg;
|
|
81
|
-
context.globalAlpha = 0.9;
|
|
82
|
-
context.fillRect(GRAPH_X, GRAPH_Y, GRAPH_WIDTH, GRAPH_HEIGHT);
|
|
83
|
-
return {
|
|
84
|
-
dom: canvas,
|
|
85
|
-
update: function (value, maxValue) {
|
|
86
|
-
min = Math.min(min, value);
|
|
87
|
-
max = Math.max(max, value);
|
|
88
|
-
context.fillStyle = bg;
|
|
89
|
-
context.globalAlpha = 1;
|
|
90
|
-
context.fillRect(0, 0, WIDTH, GRAPH_Y);
|
|
91
|
-
context.fillStyle = fg;
|
|
92
|
-
context.fillText(round(value) + ' ' + name + ' (' + round(min) + '-' + round(max) + ')', TEXT_X, TEXT_Y);
|
|
93
|
-
context.drawImage(canvas, GRAPH_X + PR, GRAPH_Y, GRAPH_WIDTH - PR, GRAPH_HEIGHT, GRAPH_X, GRAPH_Y, GRAPH_WIDTH - PR, GRAPH_HEIGHT);
|
|
94
|
-
context.fillRect(GRAPH_X + GRAPH_WIDTH - PR, GRAPH_Y, PR, GRAPH_HEIGHT);
|
|
95
|
-
context.fillStyle = bg;
|
|
96
|
-
context.globalAlpha = 0.9;
|
|
97
|
-
context.fillRect(GRAPH_X + GRAPH_WIDTH - PR, GRAPH_Y, PR, round((1 - (value / maxValue)) * GRAPH_HEIGHT));
|
|
98
|
-
}
|
|
99
|
-
};
|
|
100
|
-
};
|
|
101
|
-
exports.default = Stats;
|
|
102
|
-
//# sourceMappingURL=stats.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stats.js","sourceRoot":"","sources":["../../src/threejs-addon/stats.js"],"names":[],"mappings":"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"}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
export class TransformControls extends Object3D<import("three").Object3DEventMap> {
|
|
2
|
-
constructor(camera: any, domElement: any);
|
|
3
|
-
isTransformControls: boolean;
|
|
4
|
-
domElement: any;
|
|
5
|
-
_gizmo: TransformControlsGizmo;
|
|
6
|
-
_plane: TransformControlsPlane;
|
|
7
|
-
_offset: Vector3;
|
|
8
|
-
_startNorm: Vector3;
|
|
9
|
-
_endNorm: Vector3;
|
|
10
|
-
_cameraScale: Vector3;
|
|
11
|
-
_parentPosition: Vector3;
|
|
12
|
-
_parentQuaternion: Quaternion;
|
|
13
|
-
_parentQuaternionInv: Quaternion;
|
|
14
|
-
_parentScale: Vector3;
|
|
15
|
-
_worldScaleStart: Vector3;
|
|
16
|
-
_worldQuaternionInv: Quaternion;
|
|
17
|
-
_worldScale: Vector3;
|
|
18
|
-
_positionStart: Vector3;
|
|
19
|
-
_quaternionStart: Quaternion;
|
|
20
|
-
_scaleStart: Vector3;
|
|
21
|
-
_getPointer: any;
|
|
22
|
-
_onPointerDown: any;
|
|
23
|
-
_onPointerHover: any;
|
|
24
|
-
_onPointerMove: any;
|
|
25
|
-
_onPointerUp: any;
|
|
26
|
-
updateMatrixWorld(): void;
|
|
27
|
-
pointerHover(pointer: any): void;
|
|
28
|
-
axis: any;
|
|
29
|
-
pointerDown(pointer: any): void;
|
|
30
|
-
dragging: boolean | undefined;
|
|
31
|
-
pointerMove(pointer: any): void;
|
|
32
|
-
rotationAngle: any;
|
|
33
|
-
pointerUp(pointer: any): void;
|
|
34
|
-
dispose(): void;
|
|
35
|
-
attach(object: any): TransformControls;
|
|
36
|
-
object: any;
|
|
37
|
-
detach(): TransformControls;
|
|
38
|
-
reset(): void;
|
|
39
|
-
getRaycaster(): Raycaster;
|
|
40
|
-
getMode(): any;
|
|
41
|
-
setMode(mode: any): void;
|
|
42
|
-
mode: any;
|
|
43
|
-
setTranslationSnap(translationSnap: any): void;
|
|
44
|
-
translationSnap: any;
|
|
45
|
-
setRotationSnap(rotationSnap: any): void;
|
|
46
|
-
rotationSnap: any;
|
|
47
|
-
setScaleSnap(scaleSnap: any): void;
|
|
48
|
-
scaleSnap: any;
|
|
49
|
-
setSize(size: any): void;
|
|
50
|
-
size: any;
|
|
51
|
-
setSpace(space: any): void;
|
|
52
|
-
space: any;
|
|
53
|
-
}
|
|
54
|
-
export class TransformControlsGizmo extends Object3D<import("three").Object3DEventMap> {
|
|
55
|
-
constructor();
|
|
56
|
-
isTransformControlsGizmo: boolean;
|
|
57
|
-
type: string;
|
|
58
|
-
gizmo: {};
|
|
59
|
-
picker: {};
|
|
60
|
-
helper: {};
|
|
61
|
-
updateMatrixWorld(force: any): void;
|
|
62
|
-
}
|
|
63
|
-
export class TransformControlsPlane extends Mesh<BufferGeometry<import("three").NormalBufferAttributes>, import("three").Material | import("three").Material[], import("three").Object3DEventMap> {
|
|
64
|
-
constructor();
|
|
65
|
-
isTransformControlsPlane: boolean;
|
|
66
|
-
type: string;
|
|
67
|
-
updateMatrixWorld(force: any): void;
|
|
68
|
-
}
|
|
69
|
-
import { Object3D } from 'three';
|
|
70
|
-
import { Vector3 } from 'three';
|
|
71
|
-
import { Quaternion } from 'three';
|
|
72
|
-
import { Raycaster } from 'three';
|
|
73
|
-
import { BufferGeometry } from 'three';
|
|
74
|
-
import { Mesh } from 'three';
|