JSON File Configuration

The meshing process offers the following parameters:

 

Parameter Name

Default Value or Ratio

Link with which parameters

Information on the Parameter

Main Parameters

 

 

 

 

MainParameters:AverageEdgeLength

 

2.0

 

Not a ratio, defined in the unit of your point cloud

The average triangle size when we start the mesh- ing. You can adjust this value depending of the size of the object and the distance between points in the Point Cloud.

 

MainParameters:SmallestHoleDiameter

 

6.0

Not a ratio, defined in the unit of your point cloud

Define the minimal hole size that you want to

detect. -1.0 means that we try to fill holes as much as possible.

 

MainParameters:IgnoreScanDir

 

false

 

Some clouds could contain bad scan direction data. This parameter is used to avoid using scan directions

Preprocessing

 

 

 

 

PreProcessCloud:ExplosionDistance

 

20

 

Not a ratio, defined in the unit of your point cloud

Disconnected parts are split using this threshold distance and we keep the biggest part. You can modify the threshold for the split or remove this parameter if you want to keep everything.

PrePreocessCloud:NoiseReductionThre

shold

80

Unitless. Value between 0 and

100

Can filter the cloud to reduce the noise of the

cloud. 80 is a good value if the cloud is noisy.

 

ReductionRatio

 

1

 

Unitless. Value between 0 and 1

Reduce the cloud before meshing in order to speed up computation. 0 means that no point is kept, 1 means that all points are kept.

InitialMeshing

 

 

 

InitialMeshing:BorderExtensionParamete rs:Deviation

 

*0.1

MainParameters:AverageEdge Length

This parameter is used to extend border after the first meshing step. The idea is to better fit to the border of the cloud.

InitialMeshing:MaxTriSize

*3

MainParameters:AverageEdge

Length

Maximum triangle size

 

 

InitialMeshing: FillNonRegularHoles

 

 

0

 

 

Unitless

3 levels of Holes Filling:

0: Preserve holes in areas without acquired point cloud.

1: Try to fill some holes that are suspect due to missing data

2: Try to fill lot of holes to create watertight mesh.

InitialMeshing:MaximalHoleElongation Ratio

3.0

Unitless

Ratio between largest and second largest extend of the more elongated hole to be preserved.

 

SmoothingDistanceFactor

 

2.0

 

MainParameters:AverageEdge Length

Use projection on implicit surface to de-noise the data. The factor multiplying the Average Edge Length to determine the distance of the Polyno-

mial Surface from points are sampled.

PostProcessMesh

 

 

 

PostProcessMesh:BorderImprovement::M axEdgeLength

 

*0.5

MainParameters:AverageEdge Length

During border improvement, we have to subdivide the triangles around borders. This value indicate the max edge around borders.

PostProcessMesh:BorderImprovement:Dis

tanceSelection

*2.0

MainParameters:AverageEdge

Length

Distance around borders to select triangles.

PostProcessMesh:BorderImprovement:Sm oothingIntensity

 

2.0

 

Unitless

Intensity of the smoothing around borders.

0 means no smoothing, 5 means very high smooth- ing

PostProcessMesh:BorderImprovement:M axDeviation

0.1

MainParameters:AverageEdge Length

Maximal distance allowed between surfaces be- fore/after the smoothing

 

PostProcessMesh:Smoothing:Intensity

 

2.0

 

Unitless

Intensity of the smoothing around borders. 0 means no smoothing, 5 means very high

smoothing

PostProcessMesh:Smoothing:MaxDevia tion

*0.1

MainParameters:AverageEdge Length

Maximal distance allowed between surfaces be- fore/after the smoothing

 

PostProcessMesh:Reduce:MaxDeviation

 

*0.0025

MainParameters:AverageEdge Length

Reduce triangles in flat areas: this parameter defines the max deviation allowed between the

original mesh and the reduce one.

PostProcessMesh:Reduce:EdgeMaxLenght

* 4

MainParameters:AverageEdge Length

Maximal edge length allowed in the resulting mesh.

 

 

*PostProcessMesh:Refine:MaxDeviation

 

 

* 0.01

 

 

MainParameters:AverageEdge Length

This parameter is used to refine the mesh. This parameter is linked to the final quality of the mesh AND also link to the accuracy of the scanner/point cloud. If this parameter is too small compare to the noise thickness, it will lead to ‘waves’ effect in the final mesh.

PostProcessMesh:Refine:MinimalTriang leSize

* 2

PostProcessMesh:Refine:MaxDe viation

Minimum triangle size during there fine.

PostProcessMesh:Refine:DistanceWron gPoint

 

* 0.5

MainParameters:AverageEdge Length

Maximum distance between points and mesh to be used for the refine: points that are far (using this

param) are not used.

PostProcessMesh:CurvatureSelection:Sel ectionRadius

* 8

MainParameters:AverageEdge Length

Radius of the neighborhood used for the curvature selector.

PostProcessMesh:CurvatureSelection:Cur vedThreshold

 

50

Curvature radius (the reverse curvature) in document units.

Threshold for considering a triangle as curved or not (before the closing). The threshold is a mini-

mum curvature radius.

PostProcessMesh:CurvatureSelection:Whi teListThreshold

 

30

Curvature radius (the reverse curvature) in document units.

Threshold to select a triangle regardless of the closing. (White List Threshold must be less than or equal to Curved Threshold.)

PostProcessMesh:CurvatureSelection:Blac kListThreshold

 

100

Curvature radius (the reverse curvature) in document units.

Threshold to not select a triangle regardless of the closing. (Black List Threshold must be greater than

or equal to Curved Threshold.)

PostProcessMesh:CurvatureSelection:Clo singRatio

* 1

PostProcessMesh:CurvatureSelec tion:SelectionRadius

Ratio of selection radius used for closing (dilation and erosion of the selection).

 

Here is an example of a .JSON configuration file:

{

“Version”:”0.2”,

“BaseUnit”:”mm”,

“EnableLog”:false,

“MainParameters”:{

“AverageEdgeLength”:1.500,

“SmallestHoleDiameter”:5.000,

“IgnoreScanDir”:false

},

“PreProcessCloud”: {

“ExplosionDistance”: 20.0

},

“InitialMeshing”:{

“BorderExtensionParameters”:{

“Deviation”:0.1

},

“MaxTriSize”:3.000,

“FillNonRegularHoles”:0,

“MaximalHoleElongationRatio”:3.0,

“SmoothingDistanceFactor”:1.0

},

“PostProcessMesh”:{

“BorderImprovement”:{

“MaxEdgeLength”:0.5,

“DistanceSelection”:2.0,

“SmoothingIntensity”:2.0,

“MaxDeviation”:0.1

},

“Smoothing”:{

“Intensity”:2.0,

“MaxDeviation”:0.1

},

“Refine”:{

“MaxDeviation”:0.010000,

“MinimalTriangleSize”:0.001500,

“DistanceWrongPoint”:1.5

},

“Reduce”: {

“MaxDeviation”: 0.0025,

“MaxEdgeLength”: 3.0

},

“CurvatureSelection”: {

“Selection Radius”: 8.0,

“CurvedThreshold”: 50.0,

“WhiteListThreshold”: 30.0,

“BlackListThreshold”: 100.0,

“ClosingRatio”: 1.0

}}}