-
Notifications
You must be signed in to change notification settings - Fork 60
/
Copy pathACVD.js
89 lines (85 loc) · 2.04 KB
/
ACVD.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
const defaultParameters = [
{
name: "inputMesh",
alias: "input_mesh",
type: "file",
required: true
},
{
name: "numberOfVertices",
alias: "number_of_desired_vertices",
info: "number of desired vertices for the output mesh",
type: "int",
min: 0,
required: true
},
{
name: "gradation",
type: "float",
info: "set to 0 for uniform meshing, increase (example : 2.5) to add curvature-adapted meshing",
required: true,
min: 0,
max: 30,
defaultValue: 0
},
{
prefix: "-m ",
info: "force the output mesh to be manifold",
name: "forceManifold",
alias: "force_manifold",
type: "int",
min: 0,
max: 1
},
{
prefix : "-s ",
info : "subsampling threshold : subdivide the mesh until its number of points is large enough i.e. numberOfInputVertices / number_of_desired_vertices > subsamplingThreshold",
name : "subsamplingThreshold",
type : "int"
},
{
prefix : "-l ",
info : "split input edges longer than ( averageLength * lengthRatio )",
name : "lengthRatio",
type : "float"
},
{
text: "-d 0"
}
];
const QParameters = [
{
prefix: "-q ",
info: "quadrics level (0 : no quadrics, 3 : full quadrics)",
name: "quadricsLevel",
type: "int",
min: 0,
max: 3,
defaultValue: 3
}
]
const opts = {
actions : {
acvd: {
description: "Performs simplification/remeshing of 3D triangular meshes",
parameters : defaultParameters,
executable: "bin/ACVD"
},
acvdp: {
description: "Performs simplification/remeshing of 3D triangular meshes (parallel version)",
parameters: defaultParameters,
executable: "bin/ACVDP"
},
acvdq: {
description: "Performs simplification/remeshing of 3D triangular meshes (usin QEM, more accurate but slower)",
parameters: [ ...defaultParameters, ...QParameters ],
executable: "bin/ACVDQ"
},
acvdqp: {
description: "Performs simplification/remeshing of 3D triangular meshes (usin QEM, more accurate but slower, parallel version)",
parameters: [ ...defaultParameters, ...QParameters ],
executable: "bin/ACVDQP"
},
}
}
module.exports = opts;