Add periodic progress reporting to verbose output.
This MR adds progress reporting to Chaparral.
Currently, only the hemicube calculation has this functionality. It prints the number of processed facets in roughly 5% increments. Only the file vflib/VF_MatrixCalcHemicube.c
has been modified so far.
Here's a sample of the output:
Calling VF_Hemicube()...
resolution = 10
max subdivisions = 100
min seperation = 1
Processed 0 facets of 9006 (0.0%)
Processed 480 facets of 9006 (5.3%)
Processed 1036 facets of 9006 (11.5%)
Processed 1376 facets of 9006 (15.3%)
Processed 1808 facets of 9006 (20.1%)
Processed 2384 facets of 9006 (26.5%)
Processed 2708 facets of 9006 (30.1%)
Processed 3204 facets of 9006 (35.6%)
Processed 3600 facets of 9006 (40.0%)
Processed 4175 facets of 9006 (46.4%)
Processed 4611 facets of 9006 (51.2%)
Processed 4983 facets of 9006 (55.3%)
Processed 5636 facets of 9006 (62.6%)
Processed 5872 facets of 9006 (65.2%)
Processed 6336 facets of 9006 (70.4%)
Processed 6762 facets of 9006 (75.1%)
Processed 7201 facets of 9006 (80.0%)
Processed 7805 facets of 9006 (86.7%)
Processed 8135 facets of 9006 (90.3%)
Processed 8598 facets of 9006 (95.5%)
Processed 9003 facets of 9006 (100.0%)
Processed all 9006 facets
Minimum Partial Enclosure Area = 0.00276102
Minimum effective surface radius = 0.000946432
Minimum seperation distance = 0.0013213
Maximum desired surface subdivision = 3, 3
Actual maximum surface subdivision = 100
Data segment memory size = 680.26Mb
Elapsed time = 10.17
We should also add progress reporting to the smoothing step. The relevant files are vflib/VF_MakeMatrixSymmetric.c
and vflib/VF_SmoothMatrix.c
.
Edited by Neil N. Carlson