diff --git a/libsrc/meshing/improve3.cpp b/libsrc/meshing/improve3.cpp index 8400e541..c97e0974 100644 --- a/libsrc/meshing/improve3.cpp +++ b/libsrc/meshing/improve3.cpp @@ -1698,7 +1698,7 @@ void MeshOptimize3d :: SwapImproveSequential (Mesh & mesh, OPTIMIZEGOAL goal, } -bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, +double MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, const NgBitArray * working_elements, Table & elementsonnode, INDEX_3_HASHTABLE & faces, @@ -1714,10 +1714,10 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, Element el1b(TET), el2b(TET), el3b(TET), el4b(TET); ArrayMem hasbothpoints; - bool do_swap = false; + double d_badness = 0.0; if (pi2 < pi1) Swap (pi1, pi2); - if (mesh.BoundaryEdge (pi1, pi2)) return false; + if (mesh.BoundaryEdge (pi1, pi2)) return 0.0; hasbothpoints.SetSize (0); @@ -1726,7 +1726,7 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, bool has1 = 0, has2 = 0; const Element & elem = mesh[elnr]; - if (elem.IsDeleted()) return false; + if (elem.IsDeleted()) return 0.0; for (int l = 0; l < elem.GetNP(); l++) { @@ -1749,27 +1749,27 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, for (ElementIndex ei : hasbothpoints) { if (mesh[ei].GetType () != TET) - return false; + return 0.0; if (mp.only3D_domain_nr && mp.only3D_domain_nr != mesh.VolumeElement(ei).GetIndex()) - return false; + return 0.0; if ((mesh.ElementType(ei)) == FIXEDELEMENT) - return false; + return 0.0; if(working_elements && ei < working_elements->Size() && !working_elements->Test(ei)) - return false; + return 0.0; if (mesh[ei].IsDeleted()) - return false; + return 0.0; if ((goal == OPT_LEGAL) && mesh.LegalTet (mesh[ei]) && CalcBad (mesh.Points(), mesh[ei], 0) < 1e3) - return false; + return 0.0; } int nsuround = hasbothpoints.Size(); @@ -1883,8 +1883,9 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, { // (*mycout) << "3->2 " << flush; // (*testout) << "3->2 conversion" << endl; - do_swap = true; - if(check_only) return do_swap; + d_badness = bad2-bad1; + if(check_only) + return d_badness; /* @@ -2079,12 +2080,9 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, swap3 = !swap2 && (bad3 < bad1); } - - if (swap2 || swap3) - { - do_swap = true; - if(check_only) return do_swap; - } + d_badness = swap2 ? bad2-bad1 : bad3-bad1; + if(check_only) + return d_badness; if (swap2) { @@ -2279,8 +2277,9 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, if (bestl != -1) { // (*mycout) << nsuround << "->" << 2 * (nsuround-2) << " " << flush; - do_swap = true; - if(check_only) return do_swap; + d_badness = badopt-bad1; + if(check_only) + return d_badness; for (int k = bestl+1; k <= nsuround + bestl - 2; k++) { @@ -2323,7 +2322,7 @@ bool MeshOptimize3d :: SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, } } } - return do_swap; + return d_badness; } void MeshOptimize3d :: SwapImprove (Mesh & mesh, OPTIMIZEGOAL goal, @@ -2373,7 +2372,7 @@ void MeshOptimize3d :: SwapImprove (Mesh & mesh, OPTIMIZEGOAL goal, Array> edges; BuildEdgeList(mesh, elementsonnode, edges); - Array candidate_edges(edges.Size()); + Array> candidate_edges(edges.Size()); std::atomic improvement_counter(0); tloop.Start(); @@ -2386,18 +2385,22 @@ void MeshOptimize3d :: SwapImprove (Mesh & mesh, OPTIMIZEGOAL goal, break; auto [pi0, pi1] = edges[i]; - if(SwapImproveEdge (mesh, goal, working_elements, elementsonnode, faces, pi0, pi1, true)) - candidate_edges[improvement_counter++] = i; + double d_badness = SwapImproveEdge (mesh, goal, working_elements, elementsonnode, faces, pi0, pi1, true); + if(d_badness<0.0) + { + int index = improvement_counter++; + candidate_edges[index] = make_tuple(d_badness, i); + } } }); auto edges_with_improvement = candidate_edges.Part(0, improvement_counter.load()); QuickSort(edges_with_improvement); - for(auto ei : edges_with_improvement) + for(auto [d_badness, ei] : edges_with_improvement) { auto [pi0,pi1] = edges[ei]; - if(SwapImproveEdge (mesh, goal, working_elements, elementsonnode, faces, pi0, pi1, false)) + if(SwapImproveEdge (mesh, goal, working_elements, elementsonnode, faces, pi0, pi1, false) < 0.0) cnt++; } @@ -3277,7 +3280,7 @@ void MeshOptimize3d :: SwapImproveSurface (Mesh & mesh, OPTIMIZEGOAL goal, 2 -> 3 conversion */ -bool MeshOptimize3d :: SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementIndex eli1, int face, +double MeshOptimize3d :: SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementIndex eli1, int face, Table & elementsonnode, TABLE & belementsonnode, bool check_only ) { @@ -3285,9 +3288,10 @@ bool MeshOptimize3d :: SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementInd Element el21(TET), el22(TET), el31(TET), el32(TET), el33(TET); int j = face; double bad1, bad2; + double d_badness = 0.0; Element & elem = mesh[eli1]; - if (elem.IsDeleted()) return false; + if (elem.IsDeleted()) return 0.0; int mattyp = elem.GetIndex(); @@ -3333,7 +3337,7 @@ bool MeshOptimize3d :: SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementInd } } - if (bface) return false; + if (bface) return 0.0; FlatArray row = elementsonnode[pi1]; @@ -3403,14 +3407,16 @@ bool MeshOptimize3d :: SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementInd bad2 += 1e4; - bool do_swap = (bad2 < bad1); + d_badness = bad2 - bad1; if ( ((bad2 < 1e6) || (bad2 < 10 * bad1)) && mesh.BoundaryEdge (pi4, pi5)) - do_swap = 1; + d_badness = -1e4; + if(check_only) + return d_badness; - if (!check_only && do_swap) + if (d_badness<0.0) { el31.flags.illegal_valid = 0; el32.flags.illegal_valid = 0; @@ -3422,12 +3428,11 @@ bool MeshOptimize3d :: SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementInd mesh.AddVolumeElement (el32); mesh.AddVolumeElement (el33); } - return do_swap; + return d_badness; } } } - - return false; + return d_badness; } /* @@ -3570,8 +3575,8 @@ void MeshOptimize3d :: SwapImprove2 (Mesh & mesh, OPTIMIZEGOAL goal) int num_threads = ngcore::TaskManager::GetNumThreads(); - Array> faces_with_improvement; - Array>> faces_with_improvement_threadlocal(num_threads); + Array> faces_with_improvement; + Array>> faces_with_improvement_threadlocal(num_threads); ParallelForRange( Range(ne), [&]( auto myrange ) { @@ -3598,8 +3603,9 @@ void MeshOptimize3d :: SwapImprove2 (Mesh & mesh, OPTIMIZEGOAL goal) for (int j = 0; j < 4; j++) { - if(SwapImprove2( mesh, goal, eli1, j, elementsonnode, belementsonnode, true)) - my_faces_with_improvement.Append( std::make_tuple(eli1, j) ); + double d_badness = SwapImprove2( mesh, goal, eli1, j, elementsonnode, belementsonnode, true); + if(d_badness<0.0) + my_faces_with_improvement.Append( std::make_tuple(d_badness, eli1, j) ); } } }); @@ -3609,8 +3615,9 @@ void MeshOptimize3d :: SwapImprove2 (Mesh & mesh, OPTIMIZEGOAL goal) QuickSort(faces_with_improvement); - for (auto [eli,j] : faces_with_improvement) - cnt += SwapImprove2( mesh, goal, eli, j, elementsonnode, belementsonnode, false); + for (auto [dummy, eli,j] : faces_with_improvement) + if(SwapImprove2( mesh, goal, eli, j, elementsonnode, belementsonnode, false) < 0.0) + cnt++; PrintMessage (5, cnt, " swaps performed"); diff --git a/libsrc/meshing/improve3.hpp b/libsrc/meshing/improve3.hpp index 21fdcce6..309df47f 100644 --- a/libsrc/meshing/improve3.hpp +++ b/libsrc/meshing/improve3.hpp @@ -25,7 +25,7 @@ public: void SplitImprove (Mesh & mesh, OPTIMIZEGOAL goal = OPT_QUALITY); - bool SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, const NgBitArray * working_elements, Table & elementsonnode, INDEX_3_HASHTABLE & faces, PointIndex pi1, PointIndex pi2, bool check_only=false); + double SwapImproveEdge (Mesh & mesh, OPTIMIZEGOAL goal, const NgBitArray * working_elements, Table & elementsonnode, INDEX_3_HASHTABLE & faces, PointIndex pi1, PointIndex pi2, bool check_only=false); void SwapImprove (Mesh & mesh, OPTIMIZEGOAL goal = OPT_QUALITY, const NgBitArray * working_elements = NULL); void SwapImproveSequential (Mesh & mesh, OPTIMIZEGOAL goal = OPT_QUALITY, @@ -35,7 +35,7 @@ public: const NgArray< NgArray* > * idmaps = NULL); void SwapImprove2Sequential (Mesh & mesh, OPTIMIZEGOAL goal = OPT_QUALITY); void SwapImprove2 (Mesh & mesh, OPTIMIZEGOAL goal = OPT_QUALITY); - bool SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementIndex eli1, int face, Table & elementsonnode, TABLE & belementsonnode, bool check_only=false ); + double SwapImprove2 ( Mesh & mesh, OPTIMIZEGOAL goal, ElementIndex eli1, int face, Table & elementsonnode, TABLE & belementsonnode, bool check_only=false ); double CalcBad (const Mesh::T_POINTS & points, const Element & elem, double h) diff --git a/tests/pytest/compare_results.py b/tests/pytest/compare_results.py new file mode 100644 index 00000000..8a74fb9d --- /dev/null +++ b/tests/pytest/compare_results.py @@ -0,0 +1,91 @@ +import json +import sys +import subprocess +import statistics + +def readData(a, files): + amin=[] + amax=[] + amin1=[] + amax1=[] + bad=[] + ne1d=[] + ne2d=[] + ne3d=[] + for f in files: + for t in a[f]: + if t['ne1d']>0: + ne1d.append(t['ne1d']) + if t['ne2d']>0: + ne2d.append(t['ne2d']) + if t['ne3d']>0: + ne3d.append(t['ne3d']) + if t['total_badness']>0.0: + bad.append(t['total_badness']) + if 'angles_tet' in t: + amin.append(t['angles_tet'][0]) + amax.append(t['angles_tet'][1]) + if 'angles_trig' in t: + amin1.append(t['angles_trig'][0]) + amax1.append(t['angles_trig'][1]) + return { + "min tet angle":amin, + "max tet angle" : amax, + "min trig angle":amin1, + "max trig angle" : amax1, + "badness" : bad, + "#edges" : ne1d, + "#trigs" : ne2d, + "#tets" : ne3d, + } + +import matplotlib.pyplot as plt + +ref = 'master' +if len(sys.argv)>1: + ref = sys.argv[1] + +res = subprocess.run(['git','show','{}:./results.json'.format(ref)], capture_output=True) +s = json.loads(res.stdout.decode()) + +if len(sys.argv) > 2: + ref2 = sys.argv[2] + res = subprocess.run(['git','show','{}:./results.json'.format(ref2)], capture_output=True) + s2 = res.stdout.decode() +else: + ref2 = 'current' + s2 = open('results.json','r').read() +s2 = json.loads(s2) + +filenames = [f for f in s if f in s2] +data = readData(s, filenames) +data2 = readData(s2, filenames) + +n = len(data)+1 +fig,ax = plt.subplots(figsize=(10,7)) +for i,d in enumerate(['min trig angle','min tet angle','max trig angle','max tet angle']): + ax = plt.subplot(2,5,i+1) + plt.title(d) + ax.set_xticks([1,2]) + if len(data[d])==0 or len(data2[d])==0: + continue + + plt.violinplot([data[d],data2[d]], showmedians=True) + med = statistics.median(data[d]) + plt.hlines(med, 1,2, linestyle='dotted') + if d=='badness': + ax.set_yscale('log') + ax.set_xticklabels([ref, ref2]) + + +for i,d in enumerate(['badness','#edges','#trigs','#tets']): + ax = plt.subplot(2,5,6+i) + plt.title('difference '+d+' (in %)') +# plt.violinplot([(y-x)/x for x,y in zip(data[d],data2[d])], showmedians=True) + plt.boxplot([(y-x)/x for x,y in zip(data[d],data2[d])]) + plt.hlines(0.0, 0.5,1.5, linestyle='dotted') + + +# plt.savefig('comparison.png', dpi=100) +plt.show() + diff --git a/tests/pytest/results.json b/tests/pytest/results.json index 4e8fb437..e8e49b6b 100644 --- a/tests/pytest/results.json +++ b/tests/pytest/results.json @@ -1,6 +1,14 @@ { "boundarycondition.geo": [ { + "angles_tet": [ + 30.666, + 127.89 + ], + "angles_trig": [ + 26.565, + 91.094 + ], "ne1d": 74, "ne2d": 54, "ne3d": 40, @@ -8,6 +16,14 @@ "total_badness": 61.085020204 }, { + "angles_tet": [ + 31.383, + 127.91 + ], + "angles_trig": [ + 28.041, + 119.87 + ], "ne1d": 59, "ne2d": 37, "ne3d": 22, @@ -15,6 +31,14 @@ "total_badness": 35.161528768 }, { + "angles_tet": [ + 32.461, + 127.16 + ], + "angles_trig": [ + 28.547, + 120.05 + ], "ne1d": 59, "ne2d": 37, "ne3d": 22, @@ -22,6 +46,14 @@ "total_badness": 35.098288788 }, { + "angles_tet": [ + 30.666, + 127.89 + ], + "angles_trig": [ + 26.565, + 91.094 + ], "ne1d": 74, "ne2d": 54, "ne3d": 40, @@ -29,154 +61,322 @@ "total_badness": 61.085020204 }, { + "angles_tet": [ + 22.611, + 132.85 + ], + "angles_trig": [ + 23.939, + 104.77 + ], "ne1d": 118, "ne2d": 140, "ne3d": 165, "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 9, 13, 23, 20, 31, 25, 21, 14, 6, 1]", - "total_badness": 233.73328932 + "total_badness": 233.73328914 }, { + "angles_tet": [ + 25.801, + 134.97 + ], + "angles_trig": [ + 24.858, + 111.88 + ], "ne1d": 181, "ne2d": 325, - "ne3d": 528, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 6, 19, 38, 53, 74, 80, 99, 85, 63, 9]", - "total_badness": 687.31675405 + "ne3d": 520, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 17, 38, 51, 64, 81, 91, 93, 61, 15]", + "total_badness": 673.69458466 } ], "boxcyl.geo": [ { + "angles_tet": [ + 22.391, + 135.51 + ], + "angles_trig": [ + 22.547, + 121.98 + ], "ne1d": 190, "ne2d": 468, - "ne3d": 846, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 93, 78, 103, 80, 92, 103, 102, 84, 56, 21]", - "total_badness": 1229.0231928 + "ne3d": 845, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 29, 90, 89, 74, 95, 96, 93, 98, 99, 60, 21]", + "total_badness": 1218.9142866 }, { + "angles_tet": [ + 19.341, + 141.96 + ], + "angles_trig": [ + 16.491, + 127.01 + ], "ne1d": 94, "ne2d": 114, - "ne3d": 157, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 3, 8, 13, 13, 15, 7, 12, 11, 19, 14, 12, 21, 5, 3]", - "total_badness": 260.17372209 + "ne3d": 151, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 1, 6, 12, 13, 7, 5, 10, 6, 18, 23, 15, 23, 9, 2]", + "total_badness": 235.71475569 }, { + "angles_tet": [ + 16.335, + 150.13 + ], + "angles_trig": [ + 22.011, + 118.9 + ], "ne1d": 136, "ne2d": 222, - "ne3d": 386, - "quality_histogram": "[0, 0, 0, 1, 2, 3, 2, 7, 8, 15, 16, 36, 36, 59, 53, 55, 58, 19, 15, 1]", - "total_badness": 590.51625062 + "ne3d": 376, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 0, 2, 2, 6, 20, 29, 32, 62, 63, 67, 49, 24, 17, 2]", + "total_badness": 538.32692177 }, { + "angles_tet": [ + 22.392, + 135.93 + ], + "angles_trig": [ + 22.547, + 121.98 + ], "ne1d": 190, "ne2d": 468, - "ne3d": 833, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 32, 89, 78, 83, 86, 83, 106, 103, 89, 62, 21]", - "total_badness": 1200.9010008 + "ne3d": 838, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 30, 88, 87, 63, 105, 87, 95, 98, 101, 59, 24]", + "total_badness": 1206.145501 }, { + "angles_tet": [ + 26.449, + 140.15 + ], + "angles_trig": [ + 24.477, + 114.57 + ], "ne1d": 284, "ne2d": 938, - "ne3d": 3742, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 25, 55, 131, 247, 484, 640, 754, 710, 529, 161]", - "total_badness": 4685.7832014 + "ne3d": 3808, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 12, 47, 117, 277, 497, 641, 782, 746, 506, 177]", + "total_badness": 4753.2608817 }, { + "angles_tet": [ + 28.77, + 136.82 + ], + "angles_trig": [ + 24.852, + 123.15 + ], "ne1d": 456, "ne2d": 2496, - "ne3d": 18713, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 10, 39, 127, 338, 795, 1684, 2888, 4053, 4409, 3223, 1146]", - "total_badness": 22695.778021 + "ne3d": 18753, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 32, 96, 275, 747, 1627, 2885, 4041, 4511, 3355, 1181]", + "total_badness": 22636.690026 } ], "circle_on_cube.geo": [ { + "angles_tet": [ + 21.273, + 137.67 + ], + "angles_trig": [ + 24.517, + 113.53 + ], "ne1d": 94, "ne2d": 170, - "ne3d": 637, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 0, 4, 5, 18, 38, 54, 74, 84, 109, 110, 73, 55, 12]", - "total_badness": 863.74076861 + "ne3d": 631, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 12, 30, 55, 76, 104, 120, 97, 70, 49, 10]", + "total_badness": 851.6214528 }, { + "angles_tet": [ + 17.203, + 146.18 + ], + "angles_trig": [ + 16.937, + 127.21 + ], "ne1d": 40, "ne2d": 38, "ne3d": 46, "quality_histogram": "[0, 0, 0, 0, 0, 2, 2, 4, 8, 8, 6, 7, 5, 1, 2, 1, 0, 0, 0, 0]", - "total_badness": 97.323158335 + "total_badness": 97.323158326 }, { + "angles_tet": [ + 26.568, + 131.32 + ], + "angles_trig": [ + 23.604, + 115.75 + ], "ne1d": 62, "ne2d": 96, "ne3d": 196, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 2, 6, 8, 8, 27, 34, 42, 33, 20, 9, 6, 1]", - "total_badness": 282.75693303 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 8, 13, 31, 32, 43, 33, 18, 6, 9, 0]", + "total_badness": 281.47956507 }, { + "angles_tet": [ + 27.256, + 136.88 + ], + "angles_trig": [ + 25.056, + 112.86 + ], "ne1d": 94, "ne2d": 170, - "ne3d": 622, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 12, 26, 39, 80, 70, 113, 112, 93, 62, 10]", - "total_badness": 821.68699443 + "ne3d": 617, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 8, 24, 45, 83, 93, 110, 109, 75, 54, 12]", + "total_badness": 818.76482812 }, { + "angles_tet": [ + 28.642, + 131.64 + ], + "angles_trig": [ + 27.582, + 112.81 + ], "ne1d": 138, "ne2d": 384, - "ne3d": 2028, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 9, 28, 67, 157, 250, 347, 419, 398, 261, 88]", - "total_badness": 2540.7133216 + "ne3d": 1988, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 11, 49, 142, 225, 336, 439, 417, 280, 85]", + "total_badness": 2458.7297408 }, { + "angles_tet": [ + 26.261, + 136.67 + ], + "angles_trig": [ + 24.333, + 115.58 + ], "ne1d": 224, "ne2d": 944, - "ne3d": 11860, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 4, 8, 29, 85, 211, 518, 1135, 1851, 2527, 2686, 2118, 688]", - "total_badness": 14411.259826 + "ne3d": 11879, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 15, 66, 190, 486, 1113, 1774, 2543, 2771, 2231, 685]", + "total_badness": 14361.247834 } ], "cone.geo": [ { + "angles_tet": [ + 13.001, + 151.67 + ], + "angles_trig": [ + 18.841, + 121.55 + ], "ne1d": 64, "ne2d": 722, - "ne3d": 1263, - "quality_histogram": "[0, 0, 0, 0, 0, 3, 4, 14, 48, 62, 95, 129, 141, 162, 163, 145, 107, 112, 61, 17]", - "total_badness": 1927.4650748 + "ne3d": 1273, + "quality_histogram": "[0, 0, 0, 0, 0, 2, 6, 15, 38, 56, 96, 131, 135, 153, 162, 152, 136, 115, 62, 14]", + "total_badness": 1925.8714141 }, { + "angles_tet": [ + 9.8354, + 165.47 + ], + "angles_trig": [ + 11.866, + 146.87 + ], "ne1d": 32, "ne2d": 220, - "ne3d": 700, - "quality_histogram": "[0, 0, 13, 49, 51, 51, 51, 46, 63, 42, 38, 49, 53, 50, 42, 33, 27, 21, 18, 3]", - "total_badness": 1807.5903418 + "ne3d": 682, + "quality_histogram": "[0, 0, 3, 6, 27, 29, 43, 59, 57, 69, 78, 72, 47, 60, 28, 31, 30, 24, 12, 7]", + "total_badness": 1446.4542095 }, { + "angles_tet": [ + 2.1733, + 172.69 + ], + "angles_trig": [ + 6.6643, + 162.43 + ], "ne1d": 48, "ne2d": 428, - "ne3d": 930, - "quality_histogram": "[6, 33, 75, 70, 53, 52, 44, 63, 73, 77, 65, 88, 62, 37, 46, 30, 20, 21, 15, 0]", - "total_badness": 3263.5820874 + "ne3d": 923, + "quality_histogram": "[6, 19, 49, 47, 58, 49, 52, 62, 83, 82, 70, 88, 52, 49, 61, 32, 23, 28, 11, 2]", + "total_badness": 2830.4770758 }, { + "angles_tet": [ + 17.241, + 144.22 + ], + "angles_trig": [ + 17.777, + 121.5 + ], "ne1d": 64, "ne2d": 722, - "ne3d": 1244, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 2, 10, 25, 61, 77, 117, 140, 158, 172, 138, 144, 118, 66, 15]", - "total_badness": 1843.7405821 + "ne3d": 1246, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 11, 23, 42, 90, 110, 129, 162, 174, 152, 136, 131, 67, 18]", + "total_badness": 1823.124854 }, { + "angles_tet": [ + 17.406, + 142.43 + ], + "angles_trig": [ + 19.91, + 123.02 + ], "ne1d": 96, "ne2d": 1660, - "ne3d": 4395, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 14, 39, 86, 147, 270, 427, 584, 724, 725, 723, 492, 162]", - "total_badness": 5745.9242938 + "ne3d": 4458, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 8, 32, 70, 131, 272, 410, 628, 728, 793, 731, 514, 139]", + "total_badness": 5796.7549854 }, { + "angles_tet": [ + 22.764, + 140.56 + ], + "angles_trig": [ + 27.263, + 120.46 + ], "ne1d": 160, "ne2d": 4748, - "ne3d": 27365, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 8, 35, 121, 352, 715, 1535, 2882, 4456, 5703, 5878, 4303, 1377]", - "total_badness": 33766.111622 + "ne3d": 27254, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 4, 16, 71, 235, 659, 1375, 2774, 4392, 5618, 6099, 4470, 1540]", + "total_badness": 33350.665768 } ], "cube.geo": [ { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -184,6 +384,14 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -191,6 +399,14 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -198,6 +414,14 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -205,66 +429,138 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 27.354, + 136.27 + ], + "angles_trig": [ + 21.671, + 126.93 + ], "ne1d": 48, "ne2d": 36, "ne3d": 57, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 2, 12, 14, 4, 12, 2, 2, 3, 0]", - "total_badness": 84.416883473 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 1, 10, 12, 9, 12, 4, 1, 2, 0]", + "total_badness": 83.840161698 }, { + "angles_tet": [ + 21.865, + 136.72 + ], + "angles_trig": [ + 22.37, + 121.17 + ], "ne1d": 72, "ne2d": 116, - "ne3d": 167, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 4, 2, 5, 5, 16, 8, 18, 30, 31, 29, 11, 7]", - "total_badness": 224.7322738 + "ne3d": 169, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 3, 3, 4, 8, 13, 12, 20, 28, 33, 27, 11, 6]", + "total_badness": 228.41837612 } ], "cubeandring.geo": [ { + "angles_tet": [ + 5.0886, + 168.15 + ], + "angles_trig": [ + 11.704, + 150.46 + ], "ne1d": 262, "ne2d": 726, - "ne3d": 2225, - "quality_histogram": "[0, 10, 19, 36, 98, 105, 126, 110, 98, 59, 71, 87, 153, 186, 272, 275, 223, 160, 109, 28]", - "total_badness": 4466.5881396 + "ne3d": 2165, + "quality_histogram": "[0, 4, 9, 26, 77, 106, 122, 104, 88, 59, 50, 85, 108, 191, 251, 255, 262, 219, 117, 32]", + "total_badness": 4081.3030242 }, { + "angles_tet": [ + 16.741, + 140.94 + ], + "angles_trig": [ + 19.264, + 120.29 + ], "ne1d": 134, "ne2d": 164, - "ne3d": 250, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 0, 4, 4, 6, 13, 24, 28, 43, 40, 34, 25, 19, 7, 2]", - "total_badness": 372.39445714 + "ne3d": 252, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 4, 2, 3, 11, 30, 31, 34, 40, 38, 33, 17, 7, 1]", + "total_badness": 369.95189199 }, { + "angles_tet": [ + 21.008, + 143.76 + ], + "angles_trig": [ + 21.077, + 131.52 + ], "ne1d": 190, "ne2d": 300, - "ne3d": 646, - "quality_histogram": "[0, 0, 0, 1, 2, 0, 0, 2, 10, 27, 58, 69, 66, 107, 87, 91, 60, 44, 20, 2]", - "total_badness": 978.54289744 + "ne3d": 637, + "quality_histogram": "[0, 0, 0, 0, 1, 0, 0, 2, 9, 26, 46, 56, 73, 108, 88, 92, 64, 48, 22, 2]", + "total_badness": 947.83482937 }, { + "angles_tet": [ + 6.3388, + 162.18 + ], + "angles_trig": [ + 13.547, + 150.69 + ], "ne1d": 262, "ne2d": 726, - "ne3d": 2087, - "quality_histogram": "[0, 2, 12, 18, 54, 90, 113, 95, 88, 55, 41, 59, 111, 196, 254, 299, 260, 193, 114, 33]", - "total_badness": 3774.9667473 + "ne3d": 2042, + "quality_histogram": "[0, 2, 2, 14, 38, 85, 114, 100, 71, 41, 42, 59, 98, 174, 237, 295, 282, 216, 136, 36]", + "total_badness": 3537.8190966 }, { + "angles_tet": [ + 23.906, + 141.88 + ], + "angles_trig": [ + 23.172, + 119.78 + ], "ne1d": 378, "ne2d": 1412, - "ne3d": 7741, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 11, 17, 64, 139, 294, 516, 862, 1328, 1545, 1486, 1147, 331]", - "total_badness": 9711.521562 + "ne3d": 7695, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 2, 8, 36, 113, 286, 492, 840, 1340, 1570, 1501, 1167, 340]", + "total_badness": 9589.479693 }, { + "angles_tet": [ + 24.428, + 143.27 + ], + "angles_trig": [ + 24.968, + 121.61 + ], "ne1d": 624, "ne2d": 3944, - "ne3d": 38347, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 18, 40, 131, 351, 853, 2070, 3906, 6037, 7925, 8484, 6438, 2092]", - "total_badness": 47000.212862 + "ne3d": 38343, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 5, 12, 72, 229, 696, 1857, 3739, 6022, 8041, 8829, 6603, 2238]", + "total_badness": 46633.485738 } ], "cubeandspheres.geo": [ { + "angles_tet": [ + 23.615, + 137.71 + ], + "angles_trig": [ + 28.816, + 110.5 + ], "ne1d": 144, "ne2d": 148, "ne3d": 98, @@ -272,6 +568,14 @@ "total_badness": 145.83375079 }, { + "angles_tet": [ + 24.423, + 137.5 + ], + "angles_trig": [ + 28.935, + 109.27 + ], "ne1d": 144, "ne2d": 150, "ne3d": 100, @@ -279,6 +583,14 @@ "total_badness": 146.6468601 }, { + "angles_tet": [ + 23.888, + 137.32 + ], + "angles_trig": [ + 29.702, + 106.44 + ], "ne1d": 144, "ne2d": 148, "ne3d": 98, @@ -286,6 +598,14 @@ "total_badness": 145.14580879 }, { + "angles_tet": [ + 23.615, + 137.71 + ], + "angles_trig": [ + 28.816, + 110.5 + ], "ne1d": 144, "ne2d": 148, "ne3d": 98, @@ -293,6 +613,14 @@ "total_badness": 145.83375079 }, { + "angles_tet": [ + 17.481, + 142.47 + ], + "angles_trig": [ + 23.755, + 116.95 + ], "ne1d": 264, "ne2d": 390, "ne3d": 369, @@ -300,323 +628,675 @@ "total_badness": 554.2809713 }, { + "angles_tet": [ + 13.221, + 154.37 + ], + "angles_trig": [ + 19.374, + 128.1 + ], "ne1d": 428, "ne2d": 926, - "ne3d": 1074, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 2, 23, 50, 36, 109, 137, 96, 117, 160, 162, 67, 60, 32, 22]", - "total_badness": 1675.8711911 + "ne3d": 1071, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 3, 22, 48, 36, 110, 131, 98, 115, 161, 162, 68, 66, 30, 20]", + "total_badness": 1667.9770545 } ], "cubemcyl.geo": [ { + "angles_tet": [ + 19.041, + 148.34 + ], + "angles_trig": [ + 19.915, + 129.27 + ], "ne1d": 142, "ne2d": 2488, - "ne3d": 20783, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 26, 94, 208, 408, 708, 1158, 1848, 2485, 3200, 3251, 3127, 2474, 1418, 376]", - "total_badness": 28813.276387 + "ne3d": 20432, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 14, 54, 187, 395, 899, 1585, 2434, 3099, 3519, 3425, 2759, 1616, 443]", + "total_badness": 27337.360732 }, { + "angles_tet": [ + 20.47, + 140.16 + ], + "angles_trig": [ + 17.584, + 126.83 + ], "ne1d": 64, "ne2d": 642, - "ne3d": 3214, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 7, 13, 34, 74, 140, 230, 351, 455, 533, 531, 378, 284, 151, 31]", - "total_badness": 4592.7629352 + "ne3d": 3267, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 11, 22, 60, 129, 205, 354, 477, 540, 526, 443, 324, 153, 22]", + "total_badness": 4603.5864383 }, { + "angles_tet": [ + 22.711, + 143.32 + ], + "angles_trig": [ + 17.713, + 129.68 + ], "ne1d": 102, "ne2d": 1402, - "ne3d": 8234, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 12, 30, 67, 143, 309, 586, 856, 1050, 1271, 1291, 1179, 825, 462, 151]", - "total_badness": 11552.618825 + "ne3d": 8240, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 4, 30, 67, 191, 423, 704, 1053, 1363, 1371, 1302, 971, 578, 181]", + "total_badness": 11153.756744 }, { + "angles_tet": [ + 21.242, + 144.44 + ], + "angles_trig": [ + 21.964, + 122.59 + ], "ne1d": 142, "ne2d": 2488, - "ne3d": 19499, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 5, 27, 106, 226, 529, 1209, 2008, 2862, 3440, 3576, 3083, 1921, 507]", - "total_badness": 25390.546576 + "ne3d": 19443, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 11, 46, 120, 425, 1007, 1816, 2772, 3553, 3744, 3270, 2124, 553]", + "total_badness": 24928.621019 }, { + "angles_tet": [ + 22.179, + 143.28 + ], + "angles_trig": [ + 22.998, + 122.28 + ], "ne1d": 210, "ne2d": 5508, - "ne3d": 88767, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 26, 120, 352, 982, 2386, 5436, 9851, 14528, 18286, 19003, 13703, 4092]", - "total_badness": 109764.47526 + "ne3d": 89117, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 7, 64, 213, 756, 2149, 5057, 9544, 14526, 18574, 19578, 14242, 4407]", + "total_badness": 109474.0737 }, { + "angles_tet": [ + 22.072, + 141.68 + ], + "angles_trig": [ + 23.818, + 123.89 + ], "ne1d": 362, "ne2d": 15122, - "ne3d": 524413, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 23, 86, 347, 1131, 3167, 9094, 23844, 49271, 81498, 111440, 122044, 93488, 28977]", - "total_badness": 636787.56071 + "ne3d": 525200, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 6, 82, 526, 2296, 7742, 21372, 47326, 79983, 111877, 125226, 97896, 30868]", + "total_badness": 633738.01838 } ], "cubemsphere.geo": [ { + "angles_tet": [ + 18.771, + 145.97 + ], + "angles_trig": [ + 21.404, + 128.34 + ], "ne1d": 90, "ne2d": 702, - "ne3d": 4867, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 5, 17, 43, 80, 172, 274, 422, 600, 765, 725, 748, 588, 317, 111]", - "total_badness": 6717.4363413 + "ne3d": 4831, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 6, 10, 61, 94, 209, 377, 599, 716, 821, 772, 684, 378, 103]", + "total_badness": 6481.1281561 }, { + "angles_tet": [ + 17.436, + 150.08 + ], + "angles_trig": [ + 14.077, + 130.7 + ], "ne1d": 44, "ne2d": 274, - "ne3d": 768, - "quality_histogram": "[0, 0, 0, 0, 1, 5, 9, 11, 26, 62, 72, 78, 114, 95, 91, 78, 74, 24, 22, 6]", - "total_badness": 1237.8358347 + "ne3d": 769, + "quality_histogram": "[0, 0, 0, 0, 1, 3, 9, 15, 28, 41, 69, 78, 114, 88, 96, 95, 62, 35, 31, 4]", + "total_badness": 1221.5992458 }, { + "angles_tet": [ + 20.966, + 149.27 + ], + "angles_trig": [ + 22.441, + 124.17 + ], "ne1d": 68, "ne2d": 402, - "ne3d": 1600, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 1, 4, 26, 61, 119, 170, 232, 277, 269, 214, 148, 71, 7]", - "total_badness": 2248.6479915 + "ne3d": 1570, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 10, 25, 53, 109, 194, 185, 264, 251, 214, 153, 94, 16]", + "total_badness": 2195.1465077 }, { + "angles_tet": [ + 24.932, + 138.52 + ], + "angles_trig": [ + 22.159, + 120.51 + ], "ne1d": 90, "ne2d": 702, - "ne3d": 4618, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 4, 24, 53, 140, 293, 465, 706, 805, 841, 747, 418, 120]", - "total_badness": 6022.3952178 + "ne3d": 4638, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 20, 47, 101, 244, 467, 692, 821, 890, 755, 457, 141]", + "total_badness": 5985.8946244 }, { + "angles_tet": [ + 25.469, + 139.67 + ], + "angles_trig": [ + 24.507, + 122.25 + ], "ne1d": 146, "ne2d": 1492, - "ne3d": 17800, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 1, 7, 23, 89, 208, 524, 1085, 1942, 2969, 3729, 3811, 2675, 736]", - "total_badness": 22074.204803 + "ne3d": 17944, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 14, 55, 167, 422, 1012, 1922, 3070, 3860, 3747, 2850, 824]", + "total_badness": 22091.45854 }, { + "angles_tet": [ + 23.568, + 140.8 + ], + "angles_trig": [ + 24.037, + 125.3 + ], "ne1d": 248, "ne2d": 4354, - "ne3d": 113716, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 5, 12, 43, 136, 381, 909, 2353, 5720, 11280, 18112, 23886, 25957, 19090, 5832]", - "total_badness": 139103.15382 + "ne3d": 113873, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 2, 22, 142, 565, 1781, 4999, 10821, 18217, 24198, 26644, 20232, 6250]", + "total_badness": 138024.45404 } ], "cylinder.geo": [ { + "angles_tet": [ + 19.066, + 144.66 + ], + "angles_trig": [ + 22.516, + 111.49 + ], "ne1d": 52, "ne2d": 288, - "ne3d": 410, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 0, 2, 8, 14, 31, 47, 57, 67, 64, 53, 44, 13, 9]", - "total_badness": 577.74781759 + "ne3d": 403, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 1, 1, 4, 15, 36, 40, 54, 81, 51, 55, 40, 13, 11]", + "total_badness": 567.02829865 }, { + "angles_tet": [ + 35.352, + 114.72 + ], + "angles_trig": [ + 32.903, + 97.687 + ], "ne1d": 24, "ne2d": 66, - "ne3d": 124, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 9, 12, 16, 23, 39, 12, 5]", - "total_badness": 153.9684245 + "ne3d": 107, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 7, 15, 12, 16, 25, 14, 15]", + "total_badness": 129.9282285 }, { + "angles_tet": [ + 15.283, + 154.13 + ], + "angles_trig": [ + 18.507, + 126.84 + ], "ne1d": 36, "ne2d": 152, - "ne3d": 376, - "quality_histogram": "[0, 0, 0, 8, 18, 19, 17, 43, 35, 17, 29, 16, 18, 42, 20, 21, 38, 16, 12, 7]", - "total_badness": 793.09247202 + "ne3d": 329, + "quality_histogram": "[0, 0, 0, 0, 0, 4, 13, 28, 34, 14, 22, 24, 26, 29, 34, 19, 41, 22, 12, 7]", + "total_badness": 573.53528334 }, { + "angles_tet": [ + 19.059, + 144.67 + ], + "angles_trig": [ + 22.497, + 111.48 + ], "ne1d": 52, "ne2d": 288, - "ne3d": 404, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 0, 2, 4, 15, 25, 38, 68, 66, 55, 55, 52, 15, 8]", - "total_badness": 562.71987918 + "ne3d": 403, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 1, 1, 4, 15, 36, 40, 54, 81, 51, 56, 39, 13, 11]", + "total_badness": 567.02256434 }, { + "angles_tet": [ + 22.02, + 138.96 + ], + "angles_trig": [ + 24.393, + 119.51 + ], "ne1d": 76, "ne2d": 636, - "ne3d": 1146, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 12, 34, 57, 101, 121, 179, 190, 199, 137, 96, 17]", - "total_badness": 1547.7672308 + "ne3d": 1193, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 35, 58, 101, 143, 198, 194, 198, 145, 89, 22]", + "total_badness": 1610.5397081 }, { + "angles_tet": [ + 26.431, + 137.01 + ], + "angles_trig": [ + 29.429, + 114.09 + ], "ne1d": 124, "ne2d": 1672, - "ne3d": 8039, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 16, 52, 160, 405, 772, 1246, 1710, 1808, 1421, 444]", - "total_badness": 9788.5339464 + "ne3d": 8121, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 9, 50, 133, 416, 799, 1302, 1711, 1834, 1397, 468]", + "total_badness": 9872.9589801 } ], "cylsphere.geo": [ { + "angles_tet": [ + 16.89, + 141.12 + ], + "angles_trig": [ + 17.583, + 119.1 + ], "ne1d": 104, "ne2d": 496, - "ne3d": 711, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 4, 9, 15, 36, 63, 90, 107, 103, 99, 56, 60, 50, 17, 2]", - "total_badness": 1105.8880942 + "ne3d": 707, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 8, 14, 34, 56, 93, 112, 103, 97, 52, 69, 49, 14, 3]", + "total_badness": 1093.5696529 }, { + "angles_tet": [ + 11.216, + 162.1 + ], + "angles_trig": [ + 11.297, + 157.18 + ], "ne1d": 48, "ne2d": 142, - "ne3d": 242, - "quality_histogram": "[0, 0, 0, 16, 20, 29, 22, 22, 6, 8, 6, 14, 5, 13, 14, 25, 18, 13, 11, 0]", - "total_badness": 604.89450225 + "ne3d": 240, + "quality_histogram": "[0, 0, 0, 15, 15, 39, 22, 23, 9, 4, 1, 5, 6, 15, 17, 35, 20, 8, 3, 3]", + "total_badness": 600.26723612 }, { + "angles_tet": [ + 16.975, + 137.45 + ], + "angles_trig": [ + 17.533, + 120.6 + ], "ne1d": 104, "ne2d": 496, - "ne3d": 709, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 4, 5, 15, 29, 63, 86, 110, 109, 89, 69, 66, 45, 15, 4]", - "total_badness": 1092.3394563 + "ne3d": 706, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 5, 14, 31, 59, 94, 101, 111, 93, 65, 66, 46, 15, 3]", + "total_badness": 1086.526116 }, { + "angles_tet": [ + 24.122, + 136.31 + ], + "angles_trig": [ + 20.921, + 117.93 + ], "ne1d": 152, "ne2d": 1084, - "ne3d": 2798, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 5, 19, 44, 91, 162, 267, 345, 422, 507, 505, 322, 108]", - "total_badness": 3620.8176099 + "ne3d": 2876, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 4, 19, 35, 100, 163, 262, 362, 452, 549, 486, 354, 89]", + "total_badness": 3717.0068038 }, { + "angles_tet": [ + 21.966, + 141.66 + ], + "angles_trig": [ + 24.678, + 126.09 + ], "ne1d": 248, "ne2d": 2820, - "ne3d": 17745, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 20, 57, 142, 331, 880, 1771, 2788, 3668, 3998, 3037, 1049]", - "total_badness": 21647.214644 + "ne3d": 17753, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 31, 104, 303, 725, 1654, 2787, 3759, 4114, 3205, 1066]", + "total_badness": 21493.852902 } ], "ellipsoid.geo": [ { + "angles_tet": [ + 17.18, + 148.24 + ], + "angles_trig": [ + 18.74, + 123.79 + ], "ne1d": 0, "ne2d": 704, - "ne3d": 1297, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 7, 14, 42, 76, 119, 157, 154, 160, 158, 142, 111, 89, 54, 14]", - "total_badness": 2009.8527353 + "ne3d": 1288, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 12, 35, 66, 96, 127, 161, 175, 155, 147, 142, 92, 55, 23]", + "total_badness": 1943.7694776 }, { + "angles_tet": [ + 3.2444, + 174.72 + ], + "angles_trig": [ + 4.0664, + 165.5 + ], "ne1d": 0, "ne2d": 192, - "ne3d": 915, - "quality_histogram": "[24, 146, 135, 112, 105, 65, 62, 41, 46, 43, 32, 26, 19, 24, 15, 10, 6, 1, 3, 0]", - "total_badness": 5760.7267346 + "ne3d": 898, + "quality_histogram": "[2, 121, 119, 126, 114, 100, 65, 46, 55, 37, 31, 24, 13, 16, 8, 9, 10, 0, 0, 2]", + "total_badness": 4890.5820005 }, { + "angles_tet": [ + 19.919, + 134.24 + ], + "angles_trig": [ + 19.054, + 114.7 + ], "ne1d": 0, "ne2d": 394, - "ne3d": 592, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 5, 9, 21, 38, 80, 86, 90, 99, 53, 48, 29, 22, 12]", - "total_badness": 893.18441542 + "ne3d": 597, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 6, 29, 49, 60, 87, 92, 86, 82, 48, 33, 15, 8]", + "total_badness": 899.55007686 }, { + "angles_tet": [ + 19.369, + 144.19 + ], + "angles_trig": [ + 18.297, + 124.49 + ], "ne1d": 0, "ne2d": 704, - "ne3d": 1282, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 10, 33, 59, 108, 136, 158, 156, 163, 153, 115, 97, 69, 23]", - "total_badness": 1929.3894181 + "ne3d": 1285, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 6, 32, 61, 67, 125, 157, 151, 179, 160, 155, 100, 67, 24]", + "total_badness": 1894.9301899 }, { + "angles_tet": [ + 22.352, + 144.95 + ], + "angles_trig": [ + 22.933, + 115.76 + ], "ne1d": 0, "ne2d": 1618, - "ne3d": 5569, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 4, 23, 73, 130, 303, 511, 700, 922, 1025, 989, 693, 195]", - "total_badness": 7142.2540344 + "ne3d": 5619, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 2, 15, 46, 131, 304, 463, 681, 893, 1027, 1081, 754, 221]", + "total_badness": 7143.079025 }, { + "angles_tet": [ + 23.712, + 141.53 + ], + "angles_trig": [ + 27.221, + 119.7 + ], "ne1d": 0, "ne2d": 4236, - "ne3d": 37387, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 3, 17, 75, 239, 644, 1587, 3545, 5826, 7874, 8638, 6846, 2092]", - "total_badness": 45341.992565 + "ne3d": 37117, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 44, 184, 483, 1429, 3235, 5608, 7742, 8925, 7191, 2263]", + "total_badness": 44684.151242 } ], "ellipticcone.geo": [ { + "angles_tet": [ + 17.696, + 148.03 + ], + "angles_trig": [ + 22.831, + 122.76 + ], "ne1d": 174, "ne2d": 1562, - "ne3d": 5180, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 3, 18, 65, 115, 211, 361, 589, 766, 881, 904, 732, 405, 130]", - "total_badness": 6920.4601657 + "ne3d": 5179, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 2, 12, 41, 90, 190, 296, 503, 717, 972, 960, 765, 460, 170]", + "total_badness": 6791.2847453 }, { + "angles_tet": [ + 17.515, + 154.86 + ], + "angles_trig": [ + 18.772, + 127.9 + ], "ne1d": 86, "ne2d": 380, - "ne3d": 585, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 1, 5, 13, 17, 32, 57, 64, 73, 84, 89, 68, 47, 22, 12]", - "total_badness": 860.61770269 + "ne3d": 576, + "quality_histogram": "[0, 0, 0, 0, 0, 2, 3, 4, 11, 25, 33, 61, 54, 71, 83, 79, 64, 47, 22, 17]", + "total_badness": 854.86560286 }, { + "angles_tet": [ + 16.279, + 155.23 + ], + "angles_trig": [ + 16.146, + 133.94 + ], "ne1d": 130, "ne2d": 864, - "ne3d": 1734, - "quality_histogram": "[0, 0, 0, 0, 0, 7, 9, 28, 37, 57, 85, 135, 132, 216, 225, 256, 238, 177, 100, 32]", - "total_badness": 2535.8367438 + "ne3d": 1707, + "quality_histogram": "[0, 0, 0, 0, 0, 2, 7, 21, 23, 42, 68, 102, 150, 186, 197, 269, 284, 209, 118, 29]", + "total_badness": 2408.1612987 }, { + "angles_tet": [ + 21.749, + 144.86 + ], + "angles_trig": [ + 25.521, + 119.99 + ], "ne1d": 174, "ne2d": 1562, - "ne3d": 4943, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 4, 15, 49, 116, 255, 456, 635, 917, 1005, 806, 517, 167]", - "total_badness": 6347.4280983 + "ne3d": 4993, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 4, 10, 43, 82, 190, 407, 651, 895, 1050, 901, 559, 201]", + "total_badness": 6324.738761 }, { + "angles_tet": [ + 20.935, + 144.66 + ], + "angles_trig": [ + 18.719, + 132.57 + ], "ne1d": 258, "ne2d": 3468, - "ne3d": 13314, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 4, 33, 103, 197, 351, 652, 1077, 1619, 2280, 2518, 2361, 1583, 535]", - "total_badness": 17113.967555 + "ne3d": 13471, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 8, 18, 67, 132, 305, 570, 999, 1594, 2335, 2604, 2480, 1787, 572]", + "total_badness": 17093.610487 }, { + "angles_tet": [ + 19.639, + 144.83 + ], + "angles_trig": [ + 21.736, + 126.14 + ], "ne1d": 432, "ne2d": 9544, - "ne3d": 69891, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 9, 37, 119, 313, 839, 1927, 4086, 7715, 11454, 14338, 14977, 10816, 3260]", - "total_badness": 86472.194086 + "ne3d": 69841, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 8, 29, 68, 223, 647, 1557, 3675, 7009, 11233, 14653, 15498, 11829, 3411]", + "total_badness": 85612.037608 } ], "ellipticcyl.geo": [ { + "angles_tet": [ + 16.524, + 149.5 + ], + "angles_trig": [ + 21.243, + 122.35 + ], "ne1d": 156, "ne2d": 996, - "ne3d": 2299, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 12, 15, 55, 86, 117, 235, 272, 372, 360, 358, 240, 144, 33]", - "total_badness": 3202.1380209 + "ne3d": 2251, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 3, 10, 51, 75, 118, 218, 247, 339, 373, 356, 250, 161, 49]", + "total_badness": 3094.4761746 }, { + "angles_tet": [ + 22.853, + 132.4 + ], + "angles_trig": [ + 21.921, + 108.66 + ], "ne1d": 76, "ne2d": 238, - "ne3d": 325, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 5, 18, 28, 26, 38, 68, 55, 45, 28, 11, 2]", - "total_badness": 459.61476239 + "ne3d": 318, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 16, 20, 33, 38, 67, 54, 49, 20, 11, 1]", + "total_badness": 450.48872415 }, { + "angles_tet": [ + 20.733, + 143.0 + ], + "angles_trig": [ + 23.594, + 117.45 + ], "ne1d": 116, "ne2d": 596, - "ne3d": 1129, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 0, 2, 10, 28, 38, 75, 130, 159, 208, 199, 162, 100, 17]", - "total_badness": 1500.1384781 + "ne3d": 1126, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 2, 9, 28, 29, 73, 131, 178, 186, 196, 165, 107, 21]", + "total_badness": 1489.487043 }, { + "angles_tet": [ + 18.67, + 144.62 + ], + "angles_trig": [ + 23.116, + 121.16 + ], "ne1d": 156, "ne2d": 996, - "ne3d": 2214, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 1, 4, 40, 47, 89, 182, 262, 324, 362, 381, 279, 196, 46]", - "total_badness": 2974.3073079 + "ne3d": 2223, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 7, 27, 54, 105, 179, 229, 331, 394, 366, 287, 195, 47]", + "total_badness": 2982.3855227 }, { + "angles_tet": [ + 24.468, + 138.03 + ], + "angles_trig": [ + 25.275, + 115.12 + ], "ne1d": 232, "ne2d": 2212, - "ne3d": 8313, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 4, 15, 37, 113, 263, 626, 1005, 1387, 1743, 1660, 1133, 327]", - "total_badness": 10392.004794 + "ne3d": 8292, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 15, 37, 90, 258, 586, 955, 1411, 1668, 1703, 1209, 359]", + "total_badness": 10319.810588 }, { + "angles_tet": [ + 21.427, + 140.07 + ], + "angles_trig": [ + 23.929, + 119.81 + ], "ne1d": 388, "ne2d": 6142, - "ne3d": 54975, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 12, 45, 127, 329, 844, 2554, 5100, 8469, 11479, 12855, 9876, 3283]", - "total_badness": 66669.096677 + "ne3d": 54717, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 62, 250, 720, 2125, 4823, 8219, 11623, 13212, 10219, 3446]", + "total_badness": 65897.718457 } ], "fichera.geo": [ { + "angles_tet": [ + 35.188, + 126.84 + ], + "angles_trig": [ + 35.264, + 96.517 + ], "ne1d": 50, "ne2d": 38, - "ne3d": 40, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 1, 3, 2, 4, 3, 5, 7, 8, 2, 1, 0, 2]", - "total_badness": 62.361996939 + "ne3d": 34, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 2, 9, 3, 10, 3, 0, 0, 3]", + "total_badness": 47.155868379 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 109.47 + ], "ne1d": 42, "ne2d": 24, "ne3d": 18, @@ -624,6 +1304,14 @@ "total_badness": 26.546480075 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 109.47 + ], "ne1d": 42, "ne2d": 24, "ne3d": 18, @@ -631,96 +1319,200 @@ "total_badness": 26.546480075 }, { + "angles_tet": [ + 35.188, + 126.84 + ], + "angles_trig": [ + 35.264, + 96.517 + ], "ne1d": 50, "ne2d": 38, - "ne3d": 40, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 1, 3, 2, 4, 3, 5, 7, 8, 2, 1, 0, 2]", - "total_badness": 62.361996939 + "ne3d": 34, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 2, 9, 3, 10, 3, 0, 0, 3]", + "total_badness": 47.155868379 }, { + "angles_tet": [ + 25.061, + 136.16 + ], + "angles_trig": [ + 29.251, + 110.29 + ], "ne1d": 96, "ne2d": 120, - "ne3d": 211, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6, 14, 22, 26, 38, 37, 41, 14, 9]", - "total_badness": 273.06134659 + "ne3d": 205, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 5, 4, 13, 17, 26, 36, 40, 31, 22, 10]", + "total_badness": 264.77766512 }, { + "angles_tet": [ + 26.621, + 137.76 + ], + "angles_trig": [ + 22.737, + 128.54 + ], "ne1d": 144, "ne2d": 274, - "ne3d": 510, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 8, 16, 34, 67, 79, 99, 78, 66, 48, 12]", - "total_badness": 673.19970182 + "ne3d": 489, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 20, 29, 59, 75, 95, 77, 74, 43, 13]", + "total_badness": 639.78974452 } ], "frame.step": [ { + "angles_tet": [ + 2.7663, + 169.42 + ], + "angles_trig": [ + 1.7007, + 160.42 + ], "ne1d": 12694, "ne2d": 40504, - "ne3d": 218733, - "quality_histogram": "[4, 7, 19, 26, 34, 80, 334, 892, 2071, 3877, 6685, 11284, 17985, 25708, 31526, 35128, 33835, 27776, 17087, 4375]", - "total_badness": 300987.32592 + "ne3d": 217035, + "quality_histogram": "[2, 7, 6, 10, 13, 38, 104, 293, 948, 2202, 4751, 9102, 16010, 24305, 31395, 36541, 36662, 30391, 19284, 4971]", + "total_badness": 290345.32031 }, { + "angles_tet": [ + 2.296, + 175.61 + ], + "angles_trig": [ + 2.0087, + 175.57 + ], "ne1d": 6026, "ne2d": 11450, - "ne3d": 30266, - "quality_histogram": "[3, 4, 4, 15, 27, 52, 144, 325, 794, 1146, 1804, 2656, 3402, 4054, 4470, 4132, 3244, 2343, 1324, 323]", - "total_badness": 45523.987082 + "ne3d": 30654, + "quality_histogram": "[3, 4, 8, 18, 25, 59, 158, 291, 794, 1103, 1677, 2706, 3249, 4083, 4515, 4321, 3450, 2495, 1353, 342]", + "total_badness": 45863.767283 }, { + "angles_tet": [ + 1.8662, + 175.73 + ], + "angles_trig": [ + 1.6035, + 174.13 + ], "ne1d": 9704, "ne2d": 24550, - "ne3d": 95261, - "quality_histogram": "[7, 41, 55, 151, 370, 1084, 2131, 3122, 4208, 5545, 7047, 8851, 10433, 11502, 11477, 10373, 8376, 6104, 3497, 887]", - "total_badness": 157567.1736 + "ne3d": 95234, + "quality_histogram": "[10, 30, 47, 144, 375, 1073, 2109, 3137, 4186, 5488, 7023, 8891, 10539, 11468, 11436, 10390, 8429, 6086, 3487, 886]", + "total_badness": 157343.87525 } ], "hinge.stl": [ { + "angles_tet": [ + 21.231, + 144.42 + ], + "angles_trig": [ + 18.101, + 139.79 + ], "ne1d": 456, "ne2d": 1220, - "ne3d": 1980, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 11, 19, 47, 65, 135, 159, 254, 309, 289, 269, 237, 142, 44]", - "total_badness": 2756.1867742 + "ne3d": 1990, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 8, 18, 40, 68, 124, 179, 249, 297, 309, 262, 257, 140, 39]", + "total_badness": 2756.3340439 }, { + "angles_tet": [ + 7.5286, + 161.84 + ], + "angles_trig": [ + 9.1007, + 148.89 + ], "ne1d": 298, "ne2d": 610, - "ne3d": 798, - "quality_histogram": "[0, 0, 1, 9, 10, 6, 28, 14, 41, 51, 72, 81, 97, 98, 79, 82, 52, 48, 25, 4]", - "total_badness": 1395.9318106 + "ne3d": 787, + "quality_histogram": "[0, 0, 1, 9, 10, 4, 21, 15, 37, 42, 66, 85, 104, 95, 83, 89, 51, 47, 24, 4]", + "total_badness": 1354.692379 }, { + "angles_tet": [ + 10.751, + 157.43 + ], + "angles_trig": [ + 11.548, + 152.72 + ], "ne1d": 370, "ne2d": 856, - "ne3d": 1144, - "quality_histogram": "[0, 0, 0, 1, 4, 6, 18, 28, 41, 51, 76, 117, 140, 147, 147, 148, 99, 70, 43, 8]", - "total_badness": 1817.5662995 + "ne3d": 1136, + "quality_histogram": "[0, 0, 0, 2, 4, 5, 14, 24, 38, 56, 79, 116, 136, 138, 156, 152, 98, 66, 43, 9]", + "total_badness": 1797.1086909 }, { + "angles_tet": [ + 13.485, + 156.97 + ], + "angles_trig": [ + 19.521, + 135.02 + ], "ne1d": 516, "ne2d": 1574, - "ne3d": 2625, - "quality_histogram": "[0, 0, 0, 0, 1, 2, 4, 10, 41, 66, 110, 179, 253, 312, 372, 380, 333, 296, 218, 48]", - "total_badness": 3701.4387818 + "ne3d": 2597, + "quality_histogram": "[0, 0, 0, 0, 0, 4, 3, 6, 25, 48, 90, 173, 227, 322, 389, 382, 338, 326, 216, 48]", + "total_badness": 3604.1017054 }, { + "angles_tet": [ + 15.942, + 153.4 + ], + "angles_trig": [ + 21.493, + 131.22 + ], "ne1d": 722, "ne2d": 2866, - "ne3d": 6605, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 4, 1, 25, 48, 59, 177, 334, 665, 897, 1055, 1130, 1130, 838, 242]", - "total_badness": 8524.0032138 + "ne3d": 6698, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 1, 2, 26, 31, 56, 169, 332, 647, 888, 1046, 1166, 1195, 882, 256]", + "total_badness": 8595.0135342 }, { + "angles_tet": [ + 20.701, + 142.89 + ], + "angles_trig": [ + 22.443, + 124.89 + ], "ne1d": 1862, "ne2d": 19474, - "ne3d": 136180, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 7, 31, 132, 391, 1019, 2826, 6825, 13187, 21357, 28846, 30587, 23490, 7479]", - "total_badness": 166221.42387 + "ne3d": 136616, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 16, 59, 293, 886, 2637, 6509, 13074, 21322, 29014, 31086, 23883, 7836]", + "total_badness": 166167.05414 } ], "lense.in2d": [ { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 84, "ne2d": 436, "ne3d": 0, @@ -728,6 +1520,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 86, "ne2d": 476, "ne3d": 0, @@ -735,6 +1535,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 86, "ne2d": 490, "ne3d": 0, @@ -742,6 +1550,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 84, "ne2d": 436, "ne3d": 0, @@ -749,6 +1565,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 84, "ne2d": 460, "ne3d": 0, @@ -756,6 +1580,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 88, "ne2d": 496, "ne3d": 0, @@ -765,6 +1597,14 @@ ], "lshape3d.geo": [ { + "angles_tet": [ + 35.388, + 125.2 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 44, "ne2d": 28, "ne3d": 18, @@ -772,6 +1612,14 @@ "total_badness": 27.266612058 }, { + "angles_tet": [ + 30.0, + 120.0 + ], + "angles_trig": [ + 26.565, + 90.0 + ], "ne1d": 36, "ne2d": 20, "ne3d": 12, @@ -779,6 +1627,14 @@ "total_badness": 18.961481515 }, { + "angles_tet": [ + 30.0, + 120.0 + ], + "angles_trig": [ + 26.565, + 90.0 + ], "ne1d": 36, "ne2d": 20, "ne3d": 12, @@ -786,6 +1642,14 @@ "total_badness": 18.961481515 }, { + "angles_tet": [ + 35.388, + 125.2 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 44, "ne2d": 28, "ne3d": 18, @@ -793,98 +1657,202 @@ "total_badness": 27.266612058 }, { + "angles_tet": [ + 31.641, + 125.43 + ], + "angles_trig": [ + 32.108, + 97.676 + ], "ne1d": 80, "ne2d": 76, "ne3d": 88, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 10, 9, 21, 23, 7, 6, 1, 4]", - "total_badness": 121.1271847 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 6, 24, 21, 11, 5, 1, 5]", + "total_badness": 119.51330947 }, { + "angles_tet": [ + 25.888, + 130.74 + ], + "angles_trig": [ + 26.255, + 106.78 + ], "ne1d": 122, "ne2d": 204, "ne3d": 326, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 11, 17, 43, 51, 53, 55, 51, 33, 6]", - "total_badness": 427.73309234 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 12, 19, 39, 41, 73, 58, 41, 29, 11]", + "total_badness": 425.73888937 } ], "manyholes.geo": [ { + "angles_tet": [ + 14.385, + 155.18 + ], + "angles_trig": [ + 13.429, + 141.4 + ], "ne1d": 5886, "ne2d": 48052, - "ne3d": 179262, - "quality_histogram": "[0, 0, 0, 0, 7, 34, 52, 190, 559, 1394, 3332, 7622, 12534, 20021, 27619, 30066, 29961, 25045, 16810, 4016]", - "total_badness": 238415.32571 + "ne3d": 178778, + "quality_histogram": "[0, 0, 0, 0, 0, 5, 15, 82, 302, 823, 2352, 6219, 11001, 18996, 27378, 30679, 31231, 26885, 18302, 4508]", + "total_badness": 234001.02203 }, { + "angles_tet": [ + 12.34, + 149.72 + ], + "angles_trig": [ + 14.887, + 137.87 + ], "ne1d": 2746, "ne2d": 13866, - "ne3d": 29255, - "quality_histogram": "[0, 0, 0, 0, 12, 22, 36, 163, 382, 903, 1510, 2377, 3268, 4375, 4191, 3761, 3120, 2567, 1846, 722]", - "total_badness": 42256.964101 + "ne3d": 29325, + "quality_histogram": "[0, 0, 0, 0, 14, 17, 42, 146, 371, 869, 1440, 2330, 3302, 4289, 4156, 3769, 3286, 2641, 1936, 717]", + "total_badness": 42177.790336 }, { + "angles_tet": [ + 11.183, + 156.56 + ], + "angles_trig": [ + 12.194, + 138.76 + ], "ne1d": 4106, "ne2d": 27994, - "ne3d": 70558, - "quality_histogram": "[0, 0, 0, 2, 32, 84, 194, 406, 841, 1669, 2783, 4416, 6997, 9372, 10151, 10346, 9564, 7474, 4487, 1740]", - "total_badness": 99764.452235 + "ne3d": 70627, + "quality_histogram": "[0, 0, 0, 1, 31, 76, 173, 355, 687, 1481, 2555, 4161, 6718, 9312, 10356, 10578, 9851, 7683, 4827, 1782]", + "total_badness": 98944.029805 } ], "manyholes2.geo": [ { + "angles_tet": [ + 14.171, + 152.51 + ], + "angles_trig": [ + 15.466, + 134.18 + ], "ne1d": 10202, "ne2d": 55380, - "ne3d": 127866, - "quality_histogram": "[0, 0, 0, 0, 5, 32, 101, 306, 842, 2081, 4519, 7983, 11838, 17786, 18634, 18254, 16922, 14537, 10444, 3582]", - "total_badness": 176665.61274 + "ne3d": 128050, + "quality_histogram": "[0, 0, 0, 0, 3, 31, 92, 255, 781, 1986, 4473, 7684, 11685, 17377, 18570, 18322, 17145, 15100, 10854, 3692]", + "total_badness": 176139.44449 } ], "matrix.geo": [ { + "angles_tet": [ + 8.793, + 169.51 + ], + "angles_trig": [ + 9.0081, + 159.2 + ], "ne1d": 174, "ne2d": 1198, - "ne3d": 5246, - "quality_histogram": "[0, 0, 39, 136, 119, 93, 134, 174, 148, 224, 329, 399, 532, 581, 603, 563, 474, 398, 241, 59]", - "total_badness": 9567.4544817 + "ne3d": 5195, + "quality_histogram": "[0, 0, 35, 130, 120, 83, 123, 149, 142, 185, 326, 347, 519, 643, 613, 574, 501, 419, 220, 66]", + "total_badness": 9312.8788458 }, { + "angles_tet": [ + 9.3063, + 168.95 + ], + "angles_trig": [ + 7.9174, + 161.29 + ], "ne1d": 106, "ne2d": 610, - "ne3d": 1936, - "quality_histogram": "[0, 1, 11, 66, 104, 143, 140, 142, 192, 179, 201, 199, 161, 135, 74, 57, 51, 46, 29, 5]", - "total_badness": 4606.0709672 + "ne3d": 1925, + "quality_histogram": "[0, 1, 8, 53, 94, 131, 144, 153, 184, 150, 232, 199, 160, 126, 83, 56, 60, 52, 33, 6]", + "total_badness": 4460.6379185 }, { + "angles_tet": [ + 6.3111, + 166.92 + ], + "angles_trig": [ + 9.9928, + 159.03 + ], "ne1d": 132, "ne2d": 830, - "ne3d": 2751, - "quality_histogram": "[0, 0, 4, 57, 63, 116, 124, 163, 226, 230, 333, 307, 270, 240, 206, 164, 105, 82, 43, 18]", - "total_badness": 5616.8677502 + "ne3d": 2764, + "quality_histogram": "[0, 0, 6, 34, 73, 104, 121, 141, 207, 263, 336, 307, 292, 221, 216, 173, 115, 95, 40, 20]", + "total_badness": 5528.4346023 }, { + "angles_tet": [ + 8.8485, + 169.45 + ], + "angles_trig": [ + 8.8831, + 160.37 + ], "ne1d": 174, "ne2d": 1198, - "ne3d": 5176, - "quality_histogram": "[0, 0, 31, 113, 115, 69, 111, 172, 123, 209, 285, 339, 485, 597, 595, 628, 503, 468, 254, 79]", - "total_badness": 9086.4626755 + "ne3d": 5125, + "quality_histogram": "[0, 0, 24, 114, 114, 73, 115, 136, 123, 180, 303, 344, 482, 597, 605, 617, 543, 441, 233, 81]", + "total_badness": 8942.8952661 }, { + "angles_tet": [ + 12.758, + 144.88 + ], + "angles_trig": [ + 15.825, + 143.02 + ], "ne1d": 248, "ne2d": 2324, - "ne3d": 16341, - "quality_histogram": "[0, 0, 0, 0, 0, 7, 23, 64, 122, 219, 336, 666, 982, 1584, 2204, 2586, 2786, 2581, 1637, 544]", - "total_badness": 21749.164857 + "ne3d": 16197, + "quality_histogram": "[0, 0, 0, 0, 0, 5, 22, 53, 115, 169, 301, 650, 904, 1483, 2057, 2572, 2763, 2706, 1807, 590]", + "total_badness": 21350.026437 }, { + "angles_tet": [ + 18.203, + 145.24 + ], + "angles_trig": [ + 17.821, + 128.91 + ], "ne1d": 418, "ne2d": 5968, - "ne3d": 100573, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 6, 18, 78, 192, 438, 1216, 2786, 6112, 10628, 15970, 20785, 21682, 15766, 4896]", - "total_badness": 124376.56219 + "ne3d": 101069, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 6, 8, 49, 101, 356, 1010, 2560, 5576, 10199, 16122, 20707, 22180, 16876, 5319]", + "total_badness": 124148.28491 } ], "ortho.geo": [ { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -892,6 +1860,14 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -899,6 +1875,14 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -906,6 +1890,14 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 35.264, + 125.26 + ], + "angles_trig": [ + 35.264, + 90.0 + ], "ne1d": 24, "ne2d": 12, "ne3d": 6, @@ -913,302 +1905,630 @@ "total_badness": 9.1401272869 }, { + "angles_tet": [ + 27.31, + 136.31 + ], + "angles_trig": [ + 32.958, + 102.54 + ], "ne1d": 48, "ne2d": 36, "ne3d": 57, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 8, 9, 8, 14, 5, 3, 1, 0]", - "total_badness": 83.060809673 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 5, 2, 9, 11, 10, 12, 4, 1, 2, 0]", + "total_badness": 83.838340747 }, { + "angles_tet": [ + 26.39, + 132.21 + ], + "angles_trig": [ + 26.945, + 100.27 + ], "ne1d": 72, "ne2d": 116, - "ne3d": 180, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 11, 12, 24, 35, 36, 29, 16, 9]", - "total_badness": 231.52239849 + "ne3d": 179, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 9, 9, 26, 31, 39, 31, 13, 12]", + "total_badness": 229.03446012 } ], "part1.stl": [ { + "angles_tet": [ + 13.213, + 147.22 + ], + "angles_trig": [ + 19.94, + 128.03 + ], "ne1d": 170, "ne2d": 448, "ne3d": 1260, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 4, 6, 18, 26, 49, 88, 123, 148, 183, 193, 167, 145, 87, 23]", - "total_badness": 1772.4232339 + "quality_histogram": "[0, 0, 0, 0, 0, 2, 2, 9, 17, 21, 37, 69, 106, 152, 209, 198, 165, 149, 98, 26]", + "total_badness": 1750.899754 }, { + "angles_tet": [ + 12.231, + 157.41 + ], + "angles_trig": [ + 12.077, + 146.08 + ], "ne1d": 134, "ne2d": 288, - "ne3d": 528, - "quality_histogram": "[0, 0, 0, 1, 3, 3, 5, 6, 14, 33, 36, 50, 63, 70, 69, 69, 55, 27, 20, 4]", - "total_badness": 830.65240856 + "ne3d": 527, + "quality_histogram": "[0, 0, 0, 2, 4, 1, 5, 6, 12, 28, 41, 42, 57, 73, 71, 55, 60, 43, 25, 2]", + "total_badness": 821.06101889 }, { + "angles_tet": [ + 21.121, + 139.87 + ], + "angles_trig": [ + 24.396, + 116.29 + ], "ne1d": 194, "ne2d": 594, - "ne3d": 1710, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 10, 15, 40, 73, 127, 207, 260, 276, 284, 223, 153, 40]", - "total_badness": 2293.663372 + "ne3d": 1699, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 5, 17, 32, 53, 137, 190, 257, 263, 303, 245, 156, 40]", + "total_badness": 2254.3558031 }, { + "angles_tet": [ + 25.805, + 141.2 + ], + "angles_trig": [ + 25.911, + 119.75 + ], "ne1d": 266, "ne2d": 986, - "ne3d": 4084, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 0, 3, 7, 32, 69, 144, 306, 518, 709, 824, 785, 548, 138]", - "total_badness": 5147.3961968 + "ne3d": 4110, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 12, 34, 53, 157, 293, 528, 685, 844, 803, 570, 128]", + "total_badness": 5173.2430553 }, { + "angles_tet": [ + 23.304, + 138.08 + ], + "angles_trig": [ + 24.552, + 127.25 + ], "ne1d": 674, "ne2d": 6854, - "ne3d": 82879, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 3, 24, 61, 236, 636, 1697, 4041, 8182, 13143, 17498, 18865, 14126, 4366]", - "total_badness": 101181.66513 + "ne3d": 82752, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 3, 17, 121, 418, 1371, 3648, 7603, 12815, 17667, 19635, 14903, 4550]", + "total_badness": 100228.92096 } ], "period.geo": [ { + "angles_tet": [ + 11.121, + 150.16 + ], + "angles_trig": [ + 18.741, + 133.14 + ], "ne1d": 344, "ne2d": 1136, - "ne3d": 3291, - "quality_histogram": "[0, 0, 0, 0, 1, 6, 24, 38, 73, 142, 237, 280, 363, 430, 473, 394, 337, 293, 163, 37]", - "total_badness": 4941.6426523 + "ne3d": 3271, + "quality_histogram": "[0, 0, 0, 0, 2, 4, 14, 25, 57, 98, 181, 263, 348, 435, 470, 451, 410, 296, 170, 47]", + "total_badness": 4769.4409222 }, { + "angles_tet": [ + 9.1864, + 168.11 + ], + "angles_trig": [ + 12.295, + 146.03 + ], "ne1d": 160, "ne2d": 286, - "ne3d": 642, - "quality_histogram": "[0, 0, 4, 7, 11, 22, 28, 28, 40, 61, 66, 58, 59, 55, 53, 53, 40, 36, 16, 5]", - "total_badness": 1235.2259283 + "ne3d": 611, + "quality_histogram": "[0, 0, 1, 6, 8, 15, 20, 23, 35, 58, 66, 65, 63, 50, 48, 52, 42, 40, 15, 4]", + "total_badness": 1118.3047788 }, { + "angles_tet": [ + 8.6839, + 164.46 + ], + "angles_trig": [ + 11.423, + 149.93 + ], "ne1d": 232, "ne2d": 598, - "ne3d": 1654, - "quality_histogram": "[5, 18, 43, 57, 47, 59, 62, 79, 117, 120, 126, 148, 134, 159, 134, 113, 117, 66, 39, 11]", - "total_badness": 3928.2006441 + "ne3d": 1637, + "quality_histogram": "[0, 0, 1, 12, 24, 43, 73, 80, 119, 138, 142, 156, 149, 167, 143, 128, 99, 87, 59, 17]", + "total_badness": 3031.5898155 }, { + "angles_tet": [ + 11.121, + 150.16 + ], + "angles_trig": [ + 19.105, + 134.29 + ], "ne1d": 344, "ne2d": 1136, - "ne3d": 3221, - "quality_histogram": "[0, 0, 0, 0, 0, 3, 20, 24, 54, 111, 178, 268, 317, 453, 436, 450, 365, 311, 187, 44]", - "total_badness": 4704.9518805 + "ne3d": 3242, + "quality_histogram": "[0, 0, 0, 0, 2, 4, 12, 26, 47, 83, 167, 224, 320, 431, 478, 450, 428, 327, 190, 53]", + "total_badness": 4663.1458352 }, { + "angles_tet": [ + 20.377, + 144.13 + ], + "angles_trig": [ + 23.234, + 122.41 + ], "ne1d": 480, "ne2d": 2256, - "ne3d": 11709, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 2, 9, 15, 51, 115, 243, 547, 966, 1489, 2032, 2273, 2081, 1459, 426]", - "total_badness": 14941.96653 + "ne3d": 11567, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 5, 27, 92, 220, 494, 890, 1473, 1992, 2352, 2055, 1523, 443]", + "total_badness": 14638.419715 }, { + "angles_tet": [ + 21.556, + 145.28 + ], + "angles_trig": [ + 22.722, + 129.08 + ], "ne1d": 820, "ne2d": 6226, - "ne3d": 68532, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 4, 18, 76, 261, 684, 1675, 3888, 7222, 11072, 14234, 14852, 11076, 3469]", - "total_badness": 84325.408672 + "ne3d": 68692, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 11, 49, 188, 509, 1541, 3637, 6903, 11015, 14325, 15183, 11641, 3690]", + "total_badness": 84016.131742 } ], "plane.stl": [ { + "angles_tet": [ + 0.81532, + 175.03 + ], + "angles_trig": [ + 1.1286, + 172.51 + ], "ne1d": 890, "ne2d": 2626, - "ne3d": 8421, - "quality_histogram": "[6, 18, 26, 29, 58, 43, 65, 85, 138, 214, 343, 464, 720, 908, 1097, 1315, 1209, 968, 575, 140]", - "total_badness": 12967.318277 + "ne3d": 8335, + "quality_histogram": "[5, 19, 27, 26, 52, 45, 46, 61, 108, 192, 262, 419, 666, 871, 1144, 1269, 1297, 1065, 599, 162]", + "total_badness": 12602.083232 }, { + "angles_tet": [ + 1.0855, + 174.05 + ], + "angles_trig": [ + 3.4703, + 170.0 + ], "ne1d": 570, "ne2d": 1202, - "ne3d": 1774, - "quality_histogram": "[8, 27, 47, 59, 51, 69, 95, 141, 155, 166, 171, 148, 140, 137, 118, 85, 69, 60, 22, 6]", - "total_badness": 4640.8658317 + "ne3d": 1771, + "quality_histogram": "[4, 27, 50, 46, 60, 72, 104, 134, 154, 166, 179, 154, 136, 133, 117, 82, 63, 58, 28, 4]", + "total_badness": 4553.9625805 }, { + "angles_tet": [ + 1.1034, + 172.02 + ], + "angles_trig": [ + 2.4229, + 163.66 + ], "ne1d": 724, "ne2d": 1730, - "ne3d": 3248, - "quality_histogram": "[6, 18, 34, 44, 44, 41, 60, 72, 119, 162, 214, 264, 370, 387, 415, 400, 299, 174, 99, 26]", - "total_badness": 6101.8771518 + "ne3d": 3232, + "quality_histogram": "[7, 17, 31, 43, 47, 39, 55, 72, 132, 154, 200, 242, 357, 412, 395, 396, 310, 192, 104, 27]", + "total_badness": 6043.769795 }, { + "angles_tet": [ + 1.2088, + 169.94 + ], + "angles_trig": [ + 3.0435, + 165.56 + ], "ne1d": 956, "ne2d": 2828, - "ne3d": 8439, - "quality_histogram": "[3, 11, 37, 49, 40, 52, 58, 66, 92, 139, 212, 389, 524, 821, 1168, 1367, 1403, 1167, 678, 163]", - "total_badness": 12501.380591 + "ne3d": 8500, + "quality_histogram": "[3, 11, 34, 52, 41, 58, 52, 57, 82, 123, 197, 355, 535, 826, 1173, 1364, 1429, 1186, 733, 189]", + "total_badness": 12503.755575 }, { + "angles_tet": [ + 1.1599, + 169.09 + ], + "angles_trig": [ + 1.0016, + 160.52 + ], "ne1d": 1554, "ne2d": 6372, - "ne3d": 31592, - "quality_histogram": "[4, 7, 14, 6, 20, 51, 59, 69, 107, 192, 374, 768, 1364, 2471, 3945, 5450, 6033, 5767, 3797, 1094]", - "total_badness": 41134.059548 + "ne3d": 31631, + "quality_histogram": "[5, 6, 12, 5, 23, 49, 55, 63, 90, 195, 292, 620, 1288, 2354, 3827, 5338, 6210, 5933, 4102, 1164]", + "total_badness": 40835.800195 }, { + "angles_tet": [ + 1.2237, + 165.99 + ], + "angles_trig": [ + 1.2553, + 156.34 + ], "ne1d": 2992, "ne2d": 23322, - "ne3d": 281009, - "quality_histogram": "[4, 10, 12, 10, 7, 26, 35, 86, 167, 454, 1176, 2879, 6743, 15159, 28763, 45456, 58769, 61389, 45901, 13963]", - "total_badness": 346296.38075 + "ne3d": 281422, + "quality_histogram": "[4, 10, 11, 11, 6, 23, 30, 63, 88, 249, 721, 2109, 5601, 13574, 27696, 44361, 59840, 63935, 48318, 14772]", + "total_badness": 343943.53192 } ], "revolution.geo": [ { + "angles_tet": [ + 17.336, + 146.85 + ], + "angles_trig": [ + 16.849, + 130.09 + ], "ne1d": 320, "ne2d": 3110, - "ne3d": 8443, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 12, 45, 144, 318, 519, 804, 967, 1078, 1145, 1112, 987, 738, 454, 119]", - "total_badness": 12356.528396 + "ne3d": 8398, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 22, 96, 199, 467, 694, 965, 1097, 1181, 1184, 1082, 796, 502, 111]", + "total_badness": 12004.074776 }, { + "angles_tet": [ + 12.502, + 149.07 + ], + "angles_trig": [ + 14.625, + 130.94 + ], "ne1d": 160, "ne2d": 822, "ne3d": 1279, - "quality_histogram": "[0, 0, 0, 0, 2, 14, 52, 81, 100, 116, 148, 146, 167, 114, 92, 74, 92, 44, 25, 12]", - "total_badness": 2305.3064983 + "quality_histogram": "[0, 0, 0, 0, 1, 11, 56, 78, 98, 130, 133, 136, 157, 128, 92, 92, 69, 56, 31, 11]", + "total_badness": 2299.3708145 }, { + "angles_tet": [ + 17.575, + 145.02 + ], + "angles_trig": [ + 17.256, + 134.83 + ], "ne1d": 240, "ne2d": 1830, - "ne3d": 3870, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 5, 29, 108, 195, 310, 445, 521, 478, 473, 425, 351, 292, 195, 41]", - "total_badness": 5884.7598106 + "ne3d": 3825, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 22, 69, 157, 287, 410, 484, 531, 496, 420, 382, 322, 195, 48]", + "total_badness": 5690.739258 }, { + "angles_tet": [ + 19.517, + 143.57 + ], + "angles_trig": [ + 18.327, + 126.95 + ], "ne1d": 320, "ne2d": 3110, - "ne3d": 8269, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 0, 24, 69, 199, 438, 654, 876, 1057, 1127, 1199, 1061, 888, 548, 128]", - "total_badness": 11704.49421 + "ne3d": 8263, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 10, 47, 141, 349, 615, 835, 1021, 1147, 1245, 1168, 915, 608, 159]", + "total_badness": 11488.676872 }, { + "angles_tet": [ + 19.038, + 141.18 + ], + "angles_trig": [ + 22.38, + 132.94 + ], "ne1d": 480, "ne2d": 6864, - "ne3d": 33003, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 5, 20, 80, 243, 674, 1446, 2651, 4133, 5647, 6385, 6118, 4423, 1178]", - "total_badness": 41802.827145 + "ne3d": 33200, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 49, 189, 564, 1246, 2565, 4051, 5685, 6699, 6242, 4579, 1327]", + "total_badness": 41726.178564 }, { + "angles_tet": [ + 21.86, + 143.83 + ], + "angles_trig": [ + 19.775, + 122.3 + ], "ne1d": 800, "ne2d": 17934, - "ne3d": 201498, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 2, 44, 148, 603, 1656, 4364, 10078, 19992, 31915, 42284, 45543, 34094, 10774]", - "total_badness": 246262.93603 + "ne3d": 201271, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 4, 14, 92, 365, 1251, 3589, 9010, 18989, 30988, 42530, 46577, 36326, 11536]", + "total_badness": 244182.38794 } ], "screw.step": [ { + "angles_tet": [ + 15.997, + 157.41 + ], + "angles_trig": [ + 15.767, + 140.59 + ], "ne1d": 400, "ne2d": 1432, - "ne3d": 2402, - "quality_histogram": "[0, 0, 0, 0, 0, 4, 21, 78, 107, 181, 201, 246, 254, 284, 278, 249, 221, 161, 101, 16]", - "total_badness": 3838.1456915 + "ne3d": 2403, + "quality_histogram": "[0, 0, 0, 0, 0, 5, 19, 74, 106, 152, 190, 256, 294, 268, 270, 272, 203, 174, 100, 20]", + "total_badness": 3811.8338111 }, { + "angles_tet": [ + 16.773, + 143.17 + ], + "angles_trig": [ + 17.839, + 128.36 + ], "ne1d": 530, "ne2d": 2718, - "ne3d": 8015, - "quality_histogram": "[0, 0, 0, 0, 1, 2, 5, 17, 43, 88, 192, 275, 495, 749, 1086, 1287, 1380, 1267, 866, 262]", - "total_badness": 10583.964534 + "ne3d": 7973, + "quality_histogram": "[0, 0, 0, 0, 1, 2, 5, 17, 41, 84, 145, 239, 436, 718, 1044, 1331, 1390, 1331, 932, 257]", + "total_badness": 10431.298999 }, { + "angles_tet": [ + 16.801, + 151.58 + ], + "angles_trig": [ + 14.994, + 127.34 + ], "ne1d": 668, "ne2d": 5002, - "ne3d": 31735, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 1, 5, 28, 45, 134, 357, 793, 1795, 3287, 5145, 6774, 6789, 4992, 1588]", - "total_badness": 39141.53875 + "ne3d": 31806, + "quality_histogram": "[0, 0, 0, 0, 0, 2, 0, 4, 14, 32, 119, 295, 705, 1638, 3204, 5122, 6933, 7051, 5138, 1549]", + "total_badness": 39034.593795 } ], "sculpture.geo": [ { + "angles_tet": [ + 17.362, + 152.2 + ], + "angles_trig": [ + 25.459, + 115.78 + ], "ne1d": 192, "ne2d": 414, - "ne3d": 475, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 2, 5, 17, 18, 32, 62, 64, 97, 98, 41, 25, 11, 2]", - "total_badness": 692.44104062 + "ne3d": 476, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 2, 5, 16, 21, 32, 60, 64, 94, 100, 42, 25, 12, 2]", + "total_badness": 693.83910484 }, { + "angles_tet": [ + 28.072, + 137.6 + ], + "angles_trig": [ + 27.015, + 109.61 + ], "ne1d": 102, "ne2d": 146, - "ne3d": 141, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 5, 11, 19, 19, 36, 29, 17, 2]", - "total_badness": 178.07603683 + "ne3d": 142, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 6, 11, 19, 18, 35, 29, 17, 2]", + "total_badness": 181.04521663 }, { + "angles_tet": [ + 23.253, + 139.76 + ], + "angles_trig": [ + 28.457, + 103.35 + ], "ne1d": 144, "ne2d": 250, - "ne3d": 263, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 6, 7, 14, 24, 29, 53, 46, 49, 24, 7]", - "total_badness": 343.8094424 + "ne3d": 264, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 5, 9, 13, 27, 29, 52, 47, 46, 25, 7]", + "total_badness": 345.68732003 }, { + "angles_tet": [ + 17.362, + 152.2 + ], + "angles_trig": [ + 25.459, + 115.78 + ], "ne1d": 192, "ne2d": 414, - "ne3d": 475, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 2, 5, 17, 18, 32, 62, 64, 97, 98, 41, 25, 11, 2]", - "total_badness": 692.44104062 + "ne3d": 476, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 2, 5, 16, 21, 32, 60, 64, 94, 100, 42, 25, 12, 2]", + "total_badness": 693.83910484 }, { + "angles_tet": [ + 16.484, + 145.52 + ], + "angles_trig": [ + 21.309, + 127.3 + ], "ne1d": 288, "ne2d": 962, - "ne3d": 1326, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 6, 24, 53, 87, 122, 149, 125, 142, 117, 141, 144, 119, 80, 15]", - "total_badness": 2054.7475159 + "ne3d": 1319, + "quality_histogram": "[0, 0, 0, 0, 1, 3, 7, 27, 52, 83, 117, 136, 128, 139, 114, 142, 145, 125, 81, 19]", + "total_badness": 2041.3028811 }, { + "angles_tet": [ + 14.743, + 147.57 + ], + "angles_trig": [ + 16.998, + 119.06 + ], "ne1d": 480, "ne2d": 2394, - "ne3d": 6791, - "quality_histogram": "[0, 0, 0, 0, 2, 3, 12, 10, 30, 33, 80, 135, 286, 503, 747, 1080, 1312, 1266, 984, 308]", - "total_badness": 8649.5978251 + "ne3d": 6698, + "quality_histogram": "[0, 0, 0, 0, 1, 3, 9, 12, 16, 29, 59, 119, 253, 447, 729, 1079, 1336, 1333, 957, 316]", + "total_badness": 8454.7581852 } ], "shaft.geo": [ { + "angles_tet": [ + 3.2907, + 174.32 + ], + "angles_trig": [ + 7.5056, + 160.11 + ], "ne1d": 708, "ne2d": 1722, - "ne3d": 2757, - "quality_histogram": "[22, 11, 27, 30, 41, 40, 46, 62, 79, 140, 264, 373, 303, 274, 231, 291, 233, 179, 86, 25]", - "total_badness": 6328.6329226 + "ne3d": 2745, + "quality_histogram": "[2, 7, 21, 33, 32, 42, 46, 55, 73, 125, 264, 386, 303, 265, 234, 293, 240, 183, 107, 34]", + "total_badness": 4906.7001812 }, { + "angles_tet": [ + 16.307, + 153.33 + ], + "angles_trig": [ + 17.101, + 114.97 + ], "ne1d": 410, "ne2d": 606, - "ne3d": 933, - "quality_histogram": "[0, 0, 0, 0, 0, 1, 4, 1, 17, 25, 47, 58, 90, 116, 155, 146, 124, 96, 36, 17]", - "total_badness": 1336.5110795 + "ne3d": 875, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 0, 0, 13, 21, 24, 40, 66, 86, 122, 134, 140, 119, 87, 22]", + "total_badness": 1190.1250091 }, { + "angles_tet": [ + 4.7033, + 172.82 + ], + "angles_trig": [ + 7.6359, + 158.38 + ], "ne1d": 510, "ne2d": 1004, - "ne3d": 2048, - "quality_histogram": "[11, 74, 88, 69, 81, 94, 99, 125, 99, 122, 96, 133, 133, 165, 190, 186, 163, 67, 45, 8]", - "total_badness": 5937.4200337 + "ne3d": 1988, + "quality_histogram": "[0, 18, 67, 62, 94, 98, 88, 137, 111, 106, 105, 142, 130, 182, 178, 175, 174, 70, 46, 5]", + "total_badness": 4736.9626467 }, { + "angles_tet": [ + 10.862, + 162.85 + ], + "angles_trig": [ + 12.477, + 150.85 + ], "ne1d": 708, "ne2d": 1722, - "ne3d": 2733, - "quality_histogram": "[6, 8, 10, 17, 29, 39, 34, 40, 80, 132, 254, 397, 302, 295, 238, 297, 250, 192, 88, 25]", - "total_badness": 4814.5951096 + "ne3d": 2728, + "quality_histogram": "[0, 0, 1, 15, 20, 21, 32, 50, 72, 135, 266, 400, 329, 266, 248, 274, 258, 201, 100, 40]", + "total_badness": 4448.4830214 }, { + "angles_tet": [ + 19.192, + 146.58 + ], + "angles_trig": [ + 19.637, + 120.23 + ], "ne1d": 1138, "ne2d": 4220, - "ne3d": 11242, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 1, 27, 78, 178, 382, 607, 934, 1459, 1772, 2147, 1927, 1325, 403]", - "total_badness": 14539.392197 + "ne3d": 11308, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 3, 31, 72, 187, 328, 554, 979, 1446, 1850, 2217, 1952, 1280, 409]", + "total_badness": 14596.421815 }, { + "angles_tet": [ + 25.341, + 142.09 + ], + "angles_trig": [ + 22.461, + 120.19 + ], "ne1d": 1792, "ne2d": 10600, - "ne3d": 63895, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 18, 53, 198, 529, 1486, 3387, 6482, 10124, 13426, 13922, 10754, 3514]", - "total_badness": 78232.724768 + "ne3d": 63826, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 2, 22, 128, 438, 1274, 3069, 6212, 10027, 13507, 14338, 11060, 3749]", + "total_badness": 77687.754158 } ], "sphere.geo": [ { + "angles_tet": [ + 42.957, + 93.227 + ], + "angles_trig": [ + 20.575, + 79.713 + ], "ne1d": 0, "ne2d": 126, "ne3d": 126, @@ -1216,6 +2536,14 @@ "total_badness": 237.42979301 }, { + "angles_tet": [ + 46.583, + 91.583 + ], + "angles_trig": [ + 31.308, + 74.346 + ], "ne1d": 0, "ne2d": 56, "ne3d": 56, @@ -1223,6 +2551,14 @@ "total_badness": 68.826138928 }, { + "angles_tet": [ + 51.677, + 84.991 + ], + "angles_trig": [ + 28.501, + 75.749 + ], "ne1d": 0, "ne2d": 72, "ne3d": 72, @@ -1230,6 +2566,14 @@ "total_badness": 97.572347502 }, { + "angles_tet": [ + 42.957, + 93.227 + ], + "angles_trig": [ + 20.575, + 79.713 + ], "ne1d": 0, "ne2d": 126, "ne3d": 126, @@ -1237,66 +2581,138 @@ "total_badness": 237.42979301 }, { + "angles_tet": [ + 23.979, + 130.28 + ], + "angles_trig": [ + 21.654, + 112.69 + ], "ne1d": 0, "ne2d": 258, - "ne3d": 366, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 6, 22, 32, 55, 47, 62, 28, 39, 31, 22, 15, 6]", - "total_badness": 562.00749621 + "ne3d": 365, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 2, 22, 37, 56, 50, 43, 51, 29, 34, 23, 12, 6]", + "total_badness": 556.26115599 }, { + "angles_tet": [ + 25.093, + 140.27 + ], + "angles_trig": [ + 24.971, + 118.43 + ], "ne1d": 0, "ne2d": 660, - "ne3d": 2329, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 6, 10, 28, 76, 158, 282, 415, 502, 433, 327, 91]", - "total_badness": 2913.3426209 + "ne3d": 2290, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 6, 21, 55, 155, 246, 393, 499, 453, 343, 116]", + "total_badness": 2832.4661091 } ], "sphereincube.geo": [ { - "ne1d": 46, - "ne2d": 202, - "ne3d": 490, - "quality_histogram": "[0, 0, 8, 59, 42, 29, 53, 45, 55, 46, 33, 14, 16, 11, 15, 12, 12, 24, 11, 5]", - "total_badness": 1429.7083119 - }, - { - "ne1d": 24, - "ne2d": 60, - "ne3d": 166, - "quality_histogram": "[0, 0, 5, 12, 14, 15, 31, 10, 2, 1, 3, 2, 7, 9, 13, 13, 15, 9, 4, 1]", - "total_badness": 454.94795255 - }, - { - "ne1d": 30, - "ne2d": 116, - "ne3d": 345, - "quality_histogram": "[0, 0, 5, 24, 43, 41, 26, 26, 38, 32, 20, 18, 24, 14, 8, 9, 5, 7, 4, 1]", - "total_badness": 988.81847916 - }, - { + "angles_tet": [ + 10.046, + 167.71 + ], + "angles_trig": [ + 10.478, + 156.64 + ], "ne1d": 46, "ne2d": 202, "ne3d": 498, - "quality_histogram": "[0, 0, 8, 41, 27, 29, 50, 44, 55, 58, 44, 25, 20, 15, 14, 15, 13, 24, 11, 5]", - "total_badness": 1326.92489 + "quality_histogram": "[0, 0, 7, 50, 29, 31, 49, 49, 65, 50, 41, 19, 23, 9, 12, 11, 12, 24, 12, 5]", + "total_badness": 1375.9200797 }, { + "angles_tet": [ + 8.6025, + 151.32 + ], + "angles_trig": [ + 10.358, + 143.19 + ], + "ne1d": 24, + "ne2d": 60, + "ne3d": 161, + "quality_histogram": "[0, 0, 5, 12, 14, 14, 30, 9, 2, 0, 0, 0, 6, 9, 4, 12, 22, 9, 13, 0]", + "total_badness": 435.55968129 + }, + { + "angles_tet": [ + 8.1664, + 165.58 + ], + "angles_trig": [ + 9.1515, + 158.53 + ], + "ne1d": 30, + "ne2d": 116, + "ne3d": 348, + "quality_histogram": "[0, 0, 1, 16, 29, 41, 29, 24, 36, 35, 26, 29, 26, 17, 8, 10, 9, 9, 2, 1]", + "total_badness": 911.10169994 + }, + { + "angles_tet": [ + 8.6352, + 167.63 + ], + "angles_trig": [ + 11.28, + 149.71 + ], + "ne1d": 46, + "ne2d": 202, + "ne3d": 502, + "quality_histogram": "[0, 0, 5, 26, 21, 19, 43, 51, 66, 60, 50, 36, 31, 12, 14, 14, 13, 25, 11, 5]", + "total_badness": 1226.3202497 + }, + { + "angles_tet": [ + 14.196, + 141.03 + ], + "angles_trig": [ + 15.659, + 128.46 + ], "ne1d": 74, "ne2d": 418, - "ne3d": 1788, - "quality_histogram": "[0, 0, 0, 0, 0, 6, 6, 21, 28, 38, 73, 98, 167, 213, 251, 273, 258, 200, 112, 44]", - "total_badness": 2540.547751 + "ne3d": 1742, + "quality_histogram": "[0, 0, 0, 0, 0, 5, 5, 10, 28, 29, 59, 81, 143, 233, 273, 268, 238, 191, 137, 42]", + "total_badness": 2433.1633041 }, { + "angles_tet": [ + 25.05, + 140.17 + ], + "angles_trig": [ + 21.933, + 130.25 + ], "ne1d": 122, "ne2d": 1082, - "ne3d": 14039, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 5, 31, 105, 218, 465, 893, 1497, 2202, 2857, 2912, 2179, 674]", - "total_badness": 17464.78638 + "ne3d": 13947, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 3, 23, 94, 203, 398, 804, 1329, 2220, 2883, 2980, 2254, 756]", + "total_badness": 17220.84127 } ], "square.in2d": [ { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 35, "ne2d": 121, "ne3d": 0, @@ -1304,6 +2720,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 30, "ne2d": 98, "ne3d": 0, @@ -1311,6 +2735,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 30, "ne2d": 96, "ne3d": 0, @@ -1318,6 +2750,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 35, "ne2d": 121, "ne3d": 0, @@ -1325,6 +2765,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 44, "ne2d": 190, "ne3d": 0, @@ -1332,6 +2780,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 58, "ne2d": 396, "ne3d": 0, @@ -1341,6 +2797,14 @@ ], "squarecircle.in2d": [ { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 158, "ne3d": 0, @@ -1348,6 +2812,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 130, "ne3d": 0, @@ -1355,6 +2827,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 140, "ne3d": 0, @@ -1362,6 +2842,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 158, "ne3d": 0, @@ -1369,6 +2857,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 45, "ne2d": 313, "ne3d": 0, @@ -1376,6 +2872,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 81, "ne2d": 843, "ne3d": 0, @@ -1385,6 +2889,14 @@ ], "squarehole.in2d": [ { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 134, "ne3d": 0, @@ -1392,6 +2904,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 108, "ne3d": 0, @@ -1399,6 +2919,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 118, "ne3d": 0, @@ -1406,6 +2934,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 32, "ne2d": 134, "ne3d": 0, @@ -1413,6 +2949,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 45, "ne2d": 253, "ne3d": 0, @@ -1420,6 +2964,14 @@ "total_badness": 0.0 }, { + "angles_tet": [ + 0.0, + 0.0 + ], + "angles_trig": [ + 0.0, + 0.0 + ], "ne1d": 81, "ne2d": 709, "ne3d": 0, @@ -1429,101 +2981,213 @@ ], "torus.geo": [ { + "angles_tet": [ + 16.897, + 152.81 + ], + "angles_trig": [ + 19.689, + 126.09 + ], "ne1d": 0, "ne2d": 2534, - "ne3d": 5745, - "quality_histogram": "[0, 0, 0, 0, 0, 4, 19, 59, 148, 286, 440, 581, 679, 796, 742, 668, 583, 418, 238, 84]", - "total_badness": 8709.4458795 + "ne3d": 5711, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 26, 89, 200, 400, 544, 654, 766, 832, 716, 619, 495, 279, 88]", + "total_badness": 8374.2016452 }, { + "angles_tet": [ + 1.412, + 177.12 + ], + "angles_trig": [ + 4.4579, + 167.41 + ], "ne1d": 0, "ne2d": 692, - "ne3d": 3181, - "quality_histogram": "[166, 714, 477, 367, 312, 232, 199, 167, 108, 100, 92, 66, 48, 39, 30, 27, 18, 13, 6, 0]", - "total_badness": 24641.250872 + "ne3d": 3048, + "quality_histogram": "[104, 610, 485, 376, 328, 230, 202, 151, 107, 115, 94, 79, 57, 38, 28, 16, 16, 7, 4, 1]", + "total_badness": 21483.759565 }, { + "angles_tet": [ + 18.241, + 146.38 + ], + "angles_trig": [ + 20.167, + 120.49 + ], "ne1d": 0, "ne2d": 1446, - "ne3d": 2743, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 3, 14, 62, 135, 247, 356, 403, 430, 384, 298, 200, 152, 59]", - "total_badness": 3928.1549928 + "ne3d": 2754, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 2, 2, 14, 49, 134, 224, 374, 409, 417, 381, 338, 205, 156, 49]", + "total_badness": 3924.0113949 }, { + "angles_tet": [ + 17.882, + 148.83 + ], + "angles_trig": [ + 19.93, + 125.41 + ], "ne1d": 0, "ne2d": 2534, - "ne3d": 5584, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 27, 78, 171, 346, 509, 649, 760, 771, 771, 646, 472, 283, 100]", - "total_badness": 8111.5941443 + "ne3d": 5617, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 1, 7, 32, 143, 292, 430, 647, 732, 843, 806, 683, 551, 344, 106]", + "total_badness": 7961.5278101 }, { + "angles_tet": [ + 22.544, + 142.87 + ], + "angles_trig": [ + 22.773, + 121.69 + ], "ne1d": 0, "ne2d": 5894, - "ne3d": 25294, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 9, 32, 149, 417, 947, 1723, 2990, 4145, 5146, 5002, 3604, 1129]", - "total_badness": 31642.969488 + "ne3d": 25233, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 12, 47, 132, 403, 862, 1701, 2827, 4136, 4957, 5179, 3813, 1164]", + "total_badness": 31444.677204 }, { + "angles_tet": [ + 23.144, + 144.46 + ], + "angles_trig": [ + 22.932, + 121.88 + ], "ne1d": 0, "ne2d": 16296, - "ne3d": 175351, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 7, 36, 115, 401, 1106, 3230, 8059, 16480, 27460, 37219, 40628, 30958, 9652]", - "total_badness": 213157.95506 + "ne3d": 175509, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 8, 57, 283, 907, 2701, 7294, 15838, 27050, 37138, 41309, 32367, 10556]", + "total_badness": 212108.41175 } ], "trafo.geo": [ { + "angles_tet": [ + 3.9276, + 174.44 + ], + "angles_trig": [ + 14.916, + 132.02 + ], "ne1d": 690, "ne2d": 1684, - "ne3d": 5231, - "quality_histogram": "[0, 2, 2, 2, 8, 24, 37, 50, 114, 203, 267, 363, 472, 583, 649, 706, 623, 527, 462, 137]", - "total_badness": 7683.599832 + "ne3d": 5188, + "quality_histogram": "[0, 3, 1, 1, 2, 11, 32, 48, 112, 189, 270, 369, 456, 565, 675, 703, 613, 543, 453, 142]", + "total_badness": 7545.0612948 }, { + "angles_tet": [ + 8.1301, + 160.14 + ], + "angles_trig": [ + 7.7605, + 156.22 + ], "ne1d": 390, "ne2d": 522, - "ne3d": 1353, - "quality_histogram": "[0, 0, 3, 17, 15, 42, 75, 123, 130, 146, 161, 124, 147, 105, 84, 88, 47, 33, 11, 2]", - "total_badness": 2768.022266 + "ne3d": 1352, + "quality_histogram": "[0, 0, 3, 12, 12, 38, 79, 115, 124, 150, 169, 129, 140, 109, 82, 85, 56, 36, 11, 2]", + "total_badness": 2721.6169239 }, { + "angles_tet": [ + 7.8932, + 164.55 + ], + "angles_trig": [ + 14.15, + 148.05 + ], "ne1d": 512, "ne2d": 874, - "ne3d": 2397, - "quality_histogram": "[0, 0, 1, 3, 9, 23, 41, 72, 132, 142, 188, 204, 304, 389, 343, 237, 138, 97, 48, 26]", - "total_badness": 3983.5650135 + "ne3d": 2381, + "quality_histogram": "[0, 0, 0, 3, 9, 15, 41, 69, 122, 140, 198, 211, 303, 380, 350, 236, 136, 97, 46, 25]", + "total_badness": 3929.771603 }, { + "angles_tet": [ + 9.8264, + 163.31 + ], + "angles_trig": [ + 14.916, + 132.02 + ], "ne1d": 690, "ne2d": 1684, - "ne3d": 5147, - "quality_histogram": "[0, 0, 0, 1, 3, 12, 26, 40, 106, 188, 272, 357, 422, 561, 671, 714, 608, 558, 474, 134]", - "total_badness": 7408.6135626 + "ne3d": 5097, + "quality_histogram": "[0, 0, 0, 1, 0, 3, 22, 36, 103, 191, 264, 340, 427, 567, 670, 712, 608, 544, 468, 141]", + "total_badness": 7293.2350014 }, { + "angles_tet": [ + 16.895, + 147.06 + ], + "angles_trig": [ + 17.568, + 126.69 + ], "ne1d": 1050, "ne2d": 3812, - "ne3d": 18010, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 4, 29, 42, 57, 198, 540, 1405, 2251, 2392, 2790, 2784, 2612, 2242, 664]", - "total_badness": 23560.24016 + "ne3d": 17978, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 3, 16, 34, 64, 178, 563, 1427, 2209, 2293, 2685, 2720, 2714, 2365, 707]", + "total_badness": 23439.888638 }, { + "angles_tet": [ + 14.338, + 149.41 + ], + "angles_trig": [ + 19.234, + 129.78 + ], "ne1d": 1722, "ne2d": 10042, - "ne3d": 84690, - "quality_histogram": "[0, 0, 0, 0, 2, 3, 54, 1424, 754, 408, 795, 1316, 2637, 5766, 9155, 13453, 16224, 16583, 12169, 3947]", - "total_badness": 108937.41902 + "ne3d": 84837, + "quality_histogram": "[0, 0, 0, 0, 0, 3, 55, 1433, 719, 373, 690, 1186, 2485, 5464, 8945, 13165, 16437, 16971, 12818, 4093]", + "total_badness": 108579.70964 } ], "twobricks.geo": [ { + "angles_tet": [ + 22.934, + 142.89 + ], + "angles_trig": [ + 18.806, + 142.29 + ], "ne1d": 72, "ne2d": 50, "ne3d": 41, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 1, 7, 3, 15, 4, 4, 0, 0, 0, 0]", - "total_badness": 68.929979132 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 8, 2, 16, 3, 4, 0, 0, 0, 0]", + "total_badness": 68.897088924 }, { + "angles_tet": [ + 34.114, + 126.16 + ], + "angles_trig": [ + 29.435, + 120.21 + ], "ne1d": 56, "ne2d": 34, "ne3d": 22, @@ -1531,6 +3195,14 @@ "total_badness": 35.050418036 }, { + "angles_tet": [ + 34.449, + 125.92 + ], + "angles_trig": [ + 29.606, + 120.18 + ], "ne1d": 56, "ne2d": 34, "ne3d": 22, @@ -1538,36 +3210,76 @@ "total_badness": 35.041320265 }, { + "angles_tet": [ + 22.934, + 142.89 + ], + "angles_trig": [ + 18.806, + 142.29 + ], "ne1d": 72, "ne2d": 50, "ne3d": 41, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 1, 7, 3, 15, 4, 4, 0, 0, 0, 0]", - "total_badness": 68.929979132 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 8, 2, 16, 3, 4, 0, 0, 0, 0]", + "total_badness": 68.897088924 }, { + "angles_tet": [ + 24.085, + 131.06 + ], + "angles_trig": [ + 27.682, + 109.51 + ], "ne1d": 116, "ne2d": 134, - "ne3d": 177, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 12, 10, 18, 38, 22, 27, 22, 18, 7]", - "total_badness": 234.47359 + "ne3d": 176, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 11, 13, 17, 37, 23, 30, 17, 17, 7]", + "total_badness": 234.86129156 }, { + "angles_tet": [ + 26.468, + 134.05 + ], + "angles_trig": [ + 27.418, + 109.77 + ], "ne1d": 186, "ne2d": 346, - "ne3d": 603, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 10, 25, 42, 66, 89, 101, 110, 93, 56, 10]", - "total_badness": 792.88605666 + "ne3d": 595, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 23, 40, 55, 95, 101, 105, 99, 60, 8]", + "total_badness": 777.63275425 } ], "twocubes.geo": [ { + "angles_tet": [ + 22.934, + 142.89 + ], + "angles_trig": [ + 18.806, + 142.29 + ], "ne1d": 72, "ne2d": 50, "ne3d": 41, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 1, 7, 3, 15, 4, 4, 0, 0, 0, 0]", - "total_badness": 68.929979132 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 8, 2, 16, 3, 4, 0, 0, 0, 0]", + "total_badness": 68.897088924 }, { + "angles_tet": [ + 34.114, + 126.16 + ], + "angles_trig": [ + 29.435, + 120.21 + ], "ne1d": 56, "ne2d": 34, "ne3d": 22, @@ -1575,6 +3287,14 @@ "total_badness": 35.050418036 }, { + "angles_tet": [ + 34.449, + 125.92 + ], + "angles_trig": [ + 29.606, + 120.18 + ], "ne1d": 56, "ne2d": 34, "ne3d": 22, @@ -1582,69 +3302,141 @@ "total_badness": 35.041320265 }, { + "angles_tet": [ + 22.934, + 142.89 + ], + "angles_trig": [ + 18.806, + 142.29 + ], "ne1d": 72, "ne2d": 50, "ne3d": 41, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 1, 7, 3, 15, 4, 4, 0, 0, 0, 0]", - "total_badness": 68.929979132 + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 8, 2, 16, 3, 4, 0, 0, 0, 0]", + "total_badness": 68.897088924 }, { + "angles_tet": [ + 24.085, + 131.06 + ], + "angles_trig": [ + 27.682, + 109.51 + ], "ne1d": 116, "ne2d": 134, - "ne3d": 177, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 12, 10, 18, 38, 22, 27, 22, 18, 7]", - "total_badness": 234.47359 + "ne3d": 176, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 11, 13, 17, 37, 23, 30, 17, 17, 7]", + "total_badness": 234.86129156 }, { + "angles_tet": [ + 26.468, + 134.05 + ], + "angles_trig": [ + 27.418, + 109.77 + ], "ne1d": 186, "ne2d": 346, - "ne3d": 603, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 10, 25, 42, 66, 89, 101, 110, 93, 56, 10]", - "total_badness": 792.88605666 + "ne3d": 595, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 23, 40, 55, 95, 101, 105, 99, 60, 8]", + "total_badness": 777.63275425 } ], "twocyl.geo": [ { + "angles_tet": [ + 15.341, + 148.49 + ], + "angles_trig": [ + 18.029, + 127.96 + ], "ne1d": 144, "ne2d": 408, - "ne3d": 576, - "quality_histogram": "[0, 0, 0, 0, 0, 2, 12, 19, 19, 17, 36, 50, 59, 82, 90, 73, 69, 34, 13, 1]", - "total_badness": 901.75131743 + "ne3d": 560, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 11, 18, 21, 13, 40, 49, 64, 78, 94, 74, 53, 33, 10, 1]", + "total_badness": 877.73286526 }, { + "angles_tet": [ + 14.489, + 157.7 + ], + "angles_trig": [ + 26.565, + 125.14 + ], "ne1d": 68, "ne2d": 100, - "ne3d": 209, - "quality_histogram": "[0, 0, 0, 1, 3, 6, 11, 2, 8, 5, 15, 18, 12, 28, 28, 27, 24, 17, 3, 1]", - "total_badness": 357.15447323 + "ne3d": 189, + "quality_histogram": "[0, 0, 0, 0, 1, 2, 1, 0, 7, 6, 5, 10, 18, 32, 32, 24, 25, 18, 8, 0]", + "total_badness": 281.96557687 }, { + "angles_tet": [ + 7.1224, + 165.69 + ], + "angles_trig": [ + 11.214, + 147.28 + ], "ne1d": 102, "ne2d": 238, - "ne3d": 548, - "quality_histogram": "[5, 24, 23, 35, 33, 46, 49, 52, 63, 39, 19, 20, 19, 22, 19, 24, 40, 14, 2, 0]", - "total_badness": 1932.6124156 + "ne3d": 538, + "quality_histogram": "[0, 1, 13, 22, 29, 50, 62, 58, 63, 34, 36, 16, 23, 32, 21, 20, 36, 18, 4, 0]", + "total_badness": 1411.6824583 }, { + "angles_tet": [ + 19.827, + 141.68 + ], + "angles_trig": [ + 18.029, + 127.96 + ], "ne1d": 144, "ne2d": 408, - "ne3d": 576, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 4, 12, 10, 12, 24, 41, 69, 88, 108, 88, 65, 40, 13, 2]", - "total_badness": 853.37034747 + "ne3d": 550, + "quality_histogram": "[0, 0, 0, 0, 0, 1, 5, 11, 14, 10, 37, 58, 71, 75, 92, 80, 53, 34, 8, 1]", + "total_badness": 839.5988737 }, { + "angles_tet": [ + 19.806, + 141.75 + ], + "angles_trig": [ + 22.382, + 115.67 + ], "ne1d": 214, "ne2d": 910, - "ne3d": 1921, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 1, 9, 33, 75, 117, 230, 320, 358, 348, 243, 159, 28]", - "total_badness": 2544.8927759 + "ne3d": 1906, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 1, 2, 14, 28, 73, 129, 185, 278, 363, 378, 262, 155, 38]", + "total_badness": 2512.8115918 }, { + "angles_tet": [ + 26.173, + 141.08 + ], + "angles_trig": [ + 26.564, + 123.51 + ], "ne1d": 350, "ne2d": 2374, - "ne3d": 13509, - "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 2, 11, 29, 98, 286, 655, 1353, 2161, 2913, 3068, 2220, 713]", - "total_badness": 16499.785789 + "ne3d": 13532, + "quality_histogram": "[0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 23, 84, 243, 598, 1273, 2166, 2872, 3118, 2387, 764]", + "total_badness": 16428.083882 } ] } \ No newline at end of file diff --git a/tests/pytest/test_tutorials.py b/tests/pytest/test_tutorials.py index 1dca6cd0..8f653cce 100644 --- a/tests/pytest/test_tutorials.py +++ b/tests/pytest/test_tutorials.py @@ -14,13 +14,23 @@ except ImportError: SetMessageImportance(0) +def round(x, digits=11): + try: + return float(("{:."+str(digits)+"g}").format(x)) + except: #list + return [float(("{:."+str(digits)+"g}").format(y)) for y in x] + + def getData(mesh, mp): out = {} out['ne1d'] = len(mesh.Elements1D()) out['ne2d'] = len(mesh.Elements2D()) out['ne3d'] = len(mesh.Elements3D()) # round badness to avoid fluctuations in last digits - out["total_badness"] = float("{:.11g}".format(mesh.CalcTotalBadness(mp))) + out["total_badness"] = round(mesh.CalcTotalBadness(mp)) + angles = mesh.CalcMinMaxAngle() + out["angles_trig"] = round(angles["trig"], 5) + out["angles_tet"] = round(angles["tet"], 5) out["quality_histogram"] = str(list(mesh.GetQualityHistogram())) return out @@ -31,6 +41,8 @@ def checkData(mesh, mp, ref): assert ref['ne3d'] == data['ne3d'] assert json.loads(ref['quality_histogram']) == pytest.approx(json.loads(data['quality_histogram']), abs=1, rel=0.4) assert ref['total_badness'] == pytest.approx(data['total_badness'], rel=1e-5) + assert ref['angles_trig'] == pytest.approx(data['angles_trig'], rel=1e-5) + assert ref['angles_tet'] == pytest.approx(data['angles_tet'], rel=1e-5) # get tutorials def getFiles(fileEnding):