Files
Brennen Herbruck 916b91e8d0 Vendor solidcore at solidcore/ with its history (solidcore c0d3cc0124)
solidcore's main at c0d3cc0124, rewritten to one commit per same-author run per
PR (2,800 commits, author credit kept; tree identical). Full original history:
tangency-labs/solidcore archive/full-history.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

git-subtree-dir: solidcore
git-subtree-mainline: 44525da669
git-subtree-split: c440e5f892
2026-11-08 15:18:40 -05:00

1442 lines
22 KiB
JSON
Vendored

{
"cases": [
{
"name": "cov_tiny_v_span_total_cap",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:969 patch narrower than du/dv -> np=1; totalmax rescale nv<q (coverage: nurbs/srf_offset.rs:402,485)",
"inputs": {
"sur": {
"net": [
[
[
-21.14006822002052,
-41.89809912905977,
45.28034191195612,
1.0
],
[
-51.30764559989487,
304.30584051680273,
-40.29332492622434,
1.0
],
[
-53.040129027035185,
600.8922879827304,
-138.75130246740454,
1.0
],
[
-7.962517960513699,
848.3826508289543,
-122.78609599684049,
1.0
],
[
-9.05769730289832,
1239.2222549606447,
-112.85941165510633,
1.0
],
[
-33.21132424715826,
1515.2919866886707,
134.3126827371017,
1.0
]
],
[
[
309.25235383409984,
-12.398343041906385,
142.87653167787602,
1.0
],
[
245.58992167413075,
343.01621508584157,
-63.11721410049712,
1.0
],
[
257.31061000289253,
554.1350685694042,
-57.45545276941969,
1.0
],
[
337.9351630944038,
861.6871655908725,
24.480049098739876,
1.0
],
[
316.66961627114205,
1184.6877051270878,
14.323339712867345,
1.0
],
[
247.53467699679877,
1447.1521403959478,
-88.21238615420204,
1.0
]
],
[
[
621.6479967818143,
-8.688923319671657,
-55.755848886962546,
1.0
],
[
610.2674236209166,
294.38212516449306,
-60.069900940895295,
1.0
],
[
635.3255377826989,
623.8793320475486,
-76.77104678335414,
1.0
],
[
608.9308452310405,
903.0235804573741,
112.54124867202867,
1.0
],
[
627.533434732706,
1174.5525317868223,
144.05245424777462,
1.0
],
[
554.1678933905955,
1490.1747386142272,
77.14227886957481,
1.0
]
],
[
[
858.2381441592606,
-1.3244279429033279,
-138.2378228857687,
1.0
],
[
920.1859027841274,
331.7485039455376,
21.90778208321519,
1.0
],
[
945.0573374197066,
577.6497015417716,
58.588609882097785,
1.0
],
[
911.3243852526022,
909.587424513899,
-13.138400609576085,
1.0
],
[
940.796133661505,
1253.3617314129524,
-7.77049877410666,
1.0
],
[
919.698264656961,
1447.2803313116663,
60.44760639132717,
1.0
]
],
[
[
1217.6554625433203,
59.171512735996096,
96.57743598291447,
1.0
],
[
1174.1514638512979,
286.2949730936053,
50.59581476525645,
1.0
],
[
1142.7075513666707,
595.403434355972,
-99.58548632803664,
1.0
],
[
1154.0514953378079,
847.0745303197573,
80.46989654175623,
1.0
],
[
1155.5208266422421,
1169.7137800436296,
-32.71508906003188,
1.0
],
[
1244.570636895156,
1449.6697561440167,
-15.243779715200711,
1.0
]
]
],
"p": 3,
"q": 3,
"u": [
0.0,
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0,
1.0
],
"v": [
0.0,
0.0,
0.0,
0.0,
0.5,
0.5000001,
1.0,
1.0,
1.0,
1.0
]
},
"d": 0.5,
"pp": 3,
"qq": 3,
"par": 4,
"eps": 1e-09,
"tol": 0.0001
}
},
{
"name": "cov_tiny_v_span_chordlength",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:969 patch narrower than du/dv -> np=1 (coverage: nurbs/srf_offset.rs:402)",
"inputs": {
"sur": {
"net": [
[
[
0.01977596365761497,
0.153353530576605,
0.3192798378357413,
1.0
],
[
0.14559378787940608,
0.9113684258055589,
-0.08470348278830142,
1.0
],
[
-0.05649153386735009,
2.153677130879287,
0.45773120396399125,
1.0
],
[
-0.13963163768355644,
2.870487091396148,
-0.26804313318046424,
1.0
],
[
-0.10666556652765556,
3.9939850921365427,
0.08912350373225564,
1.0
],
[
-0.09490135228058483,
4.801637441354026,
-0.08105349887467206,
1.0
]
],
[
[
0.9477014291578901,
0.02653648948255677,
0.4530979255250953,
1.0
],
[
1.076197462854391,
1.0061965732283114,
0.11759274940912767,
1.0
],
[
1.0704800329798005,
1.821597157289516,
0.39953301005795216,
1.0
],
[
1.1119877962824292,
3.1498052736537905,
0.29787312119656606,
1.0
],
[
0.9569515627565075,
3.9595915329281093,
-0.39646290628967573,
1.0
],
[
1.0537158262742836,
4.824899128647475,
-0.43265238415697516,
1.0
]
],
[
[
1.8835052741784657,
-0.13507872489116104,
-0.1599463477676566,
1.0
],
[
1.8210302415561068,
0.8000933127605426,
-0.34873506772057206,
1.0
],
[
1.8405857472090386,
1.9454439688138283,
-0.4744991133338543,
1.0
],
[
2.1497329509495278,
3.0456275951153913,
-0.35144951466910856,
1.0
],
[
1.900903102622831,
3.938955818421481,
-0.13583656047171755,
1.0
],
[
1.8491368923048779,
5.139574770593846,
0.4931027217047139,
1.0
]
],
[
[
2.9863957836639736,
-0.006466137433492225,
-0.4141153384438344,
1.0
],
[
2.840875046699267,
0.9370543352972007,
-0.2352431082828199,
1.0
],
[
3.1315421512486243,
1.8645754442105726,
-0.47690427895475185,
1.0
],
[
3.180394229149881,
3.01130295801685,
-0.3533974611009093,
1.0
],
[
3.0172689703528457,
3.8108169965688674,
0.028109440938306474,
1.0
],
[
3.191400497087589,
5.145330012115868,
0.19619678590780187,
1.0
]
],
[
[
3.9044460788917448,
-0.05332008329552848,
-0.3329579654656637,
1.0
],
[
4.1087751633608125,
1.0130369589971515,
0.2790548913381772,
1.0
],
[
3.931865998019105,
1.889216669241274,
0.311511246773595,
1.0
],
[
4.193970420236356,
3.141051519498664,
0.3060785847856675,
1.0
],
[
4.127333177330149,
4.0959492081502855,
-0.2732605099684151,
1.0
],
[
4.007055489697402,
4.9422250173419835,
-0.4710198492586346,
1.0
]
]
],
"p": 3,
"q": 3,
"u": [
0.0,
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0,
1.0
],
"v": [
0.0,
0.0,
0.0,
0.0,
0.5,
0.5000001,
1.0,
1.0,
1.0,
1.0
]
},
"d": 0.1,
"pp": 3,
"qq": 3,
"par": 2,
"eps": 1e-09,
"tol": 0.001
}
},
{
"name": "cov_lsq_fewer_samples_than_cpts",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:1115 nnn>mu, mmm>mv (coverage: nurbs/srf_offset.rs:493,496)",
"inputs": {
"sur": {
"net": [
[
[
-0.18882516983117423,
-0.08823258438038808,
-0.009633025469289737,
1.0
],
[
0.07700877668004935,
1.1826060305365351,
-0.002110892889331062,
1.0
],
[
0.17480848051049697,
2.195215223281144,
0.018200025252853327,
1.0
],
[
-0.05414564585525358,
2.888184929198495,
-0.010926166930770882,
1.0
]
],
[
[
0.8786824653677269,
-0.11825065468951079,
0.004962655897512729,
1.0
],
[
1.1601233351536457,
1.1361742109117159,
-0.0008210629495384714,
1.0
],
[
1.0611912171364035,
2.119857497939864,
-0.016608860541984797,
1.0
],
[
1.0642342600819577,
3.1639108550206894,
0.011292115363923601,
1.0
]
],
[
[
2.100056183932183,
-0.008786902162399912,
-0.012859131266497056,
1.0
],
[
2.1156541724081106,
0.933006879945844,
0.012032942755867642,
1.0
],
[
2.188662915592863,
1.9583353980277793,
-0.003944527285291941,
1.0
],
[
2.178718802585957,
3.089919466253686,
-0.013199853601124181,
1.0
]
],
[
[
2.8508153469191457,
-0.1395397198474041,
0.016194083829329572,
1.0
],
[
3.1226007928128783,
0.8584697234975497,
0.013060419141015482,
1.0
],
[
3.192122377378812,
2.062907317094408,
-0.005983699513699885,
1.0
],
[
3.0194640175947116,
2.85239354080378,
-0.019430282473755778,
1.0
]
]
],
"p": 3,
"q": 3,
"u": [
0.0,
0.0,
0.0,
0.0,
1.0,
1.0,
1.0,
1.0
],
"v": [
0.0,
0.0,
0.0,
0.0,
1.0,
1.0,
1.0,
1.0
]
},
"d": 0.1,
"pp": 1,
"qq": 1,
"par": 2,
"eps": 1e-09,
"tol": 1.0
}
},
{
"name": "cov_lsq_fewer_samples_than_cpts_uniform",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:1115 nnn>mu, mmm>mv (coverage: nurbs/srf_offset.rs:493,496)",
"inputs": {
"sur": {
"net": [
[
[
0.18835607089510575,
0.059869867869532245,
0.0005316209419811102,
1.0
],
[
0.17344992202297072,
0.9735237747029942,
0.007434858559788082,
1.0
],
[
0.13046210072608844,
1.8844169349312596,
-0.004963303772690924,
1.0
],
[
-0.08281333893191244,
2.896215757023334,
0.0017287433633192339,
1.0
],
[
-0.09625408189191594,
3.9676050211018175,
-0.007378526469930333,
1.0
]
],
[
[
1.1640068225262226,
-0.05848639041869644,
-0.0008367802705653272,
1.0
],
[
1.03333950881674,
1.161718709816816,
-0.0015874345858186967,
1.0
],
[
1.1670884337370657,
2.0006595764480926,
0.0006364992487186761,
1.0
],
[
1.0094026342348665,
2.807481947162168,
-0.0011975017523011334,
1.0
],
[
0.8732431549088795,
3.801572992730257,
0.005983409009844434,
1.0
]
],
[
[
1.8689386848853795,
-0.010602827015217475,
0.004503865408947558,
1.0
],
[
2.0225902499608854,
0.9303928604195456,
0.0003669742540607368,
1.0
],
[
2.0221767499520986,
2.1137089901461903,
-0.007877811657901435,
1.0
],
[
2.024118453433581,
2.899397728417236,
-0.004461658590704369,
1.0
],
[
2.1089044395021954,
4.003085596716928,
0.0012345877331295242,
1.0
]
],
[
[
3.103997257036007,
0.16499521453192484,
-0.0011350321284512232,
1.0
],
[
3.045011153737784,
1.0022212523404888,
0.00024322944870638796,
1.0
],
[
3.0770924010192915,
1.9809383169059638,
0.0006657087515834181,
1.0
],
[
2.991214527212834,
3.1766004510154002,
0.0039843576436057165,
1.0
],
[
3.1506141927122373,
4.17687223532143,
-0.0048081541176461864,
1.0
]
]
],
"p": 3,
"q": 3,
"u": [
0.0,
0.0,
0.0,
0.0,
1.0,
1.0,
1.0,
1.0
],
"v": [
0.0,
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0,
1.0
]
},
"d": -0.05,
"pp": 1,
"qq": 2,
"par": 1,
"eps": 1e-09,
"tol": 1.0
}
},
{
"name": "cov_revolution_rot_in_u_pp3_qq2",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:809 surface of revolution, pq from dir (coverage: nurbs/srf_offset.rs:293)",
"inputs": {
"sur": {
"net": [
[
[
1.0,
0,
0.0,
1.0
],
[
1.6,
0,
0.9,
1.0
],
[
1.2,
0,
2.1,
1.0
],
[
1.8,
0,
3.0,
1.0
]
],
[
[
0.7071067811865476,
0.7071067811865476,
0.0,
0.7071067811865476
],
[
1.1313708498984762,
1.1313708498984762,
0.6363961030678928,
0.7071067811865476
],
[
0.848528137423857,
0.848528137423857,
1.48492424049175,
0.7071067811865476
],
[
1.2727922061357857,
1.2727922061357857,
2.121320343559643,
0.7071067811865476
]
],
[
[
0,
1.0,
0.0,
1.0
],
[
0,
1.6,
0.9,
1.0
],
[
0,
1.2,
2.1,
1.0
],
[
0,
1.8,
3.0,
1.0
]
]
],
"p": 2,
"q": 2,
"u": [
0,
0,
0,
1,
1,
1
],
"v": [
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0
]
},
"d": 0.2,
"pp": 3,
"qq": 2,
"par": 4,
"eps": 1e-06,
"tol": 0.001
}
},
{
"name": "cov_revolution_rot_in_u_pp2_qq4",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:809 surface of revolution, pq from dir (coverage: nurbs/srf_offset.rs:293)",
"inputs": {
"sur": {
"net": [
[
[
1.0,
0,
0.0,
1.0
],
[
1.6,
0,
0.9,
1.0
],
[
1.2,
0,
2.1,
1.0
],
[
1.8,
0,
3.0,
1.0
]
],
[
[
0.7071067811865476,
0.7071067811865476,
0.0,
0.7071067811865476
],
[
1.1313708498984762,
1.1313708498984762,
0.6363961030678928,
0.7071067811865476
],
[
0.848528137423857,
0.848528137423857,
1.48492424049175,
0.7071067811865476
],
[
1.2727922061357857,
1.2727922061357857,
2.121320343559643,
0.7071067811865476
]
],
[
[
0,
1.0,
0.0,
1.0
],
[
0,
1.6,
0.9,
1.0
],
[
0,
1.2,
2.1,
1.0
],
[
0,
1.8,
3.0,
1.0
]
]
],
"p": 2,
"q": 2,
"u": [
0,
0,
0,
1,
1,
1
],
"v": [
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0
]
},
"d": 0.2,
"pp": 2,
"qq": 4,
"par": 4,
"eps": 1e-06,
"tol": 0.001
}
},
{
"name": "cov_revolution_rot_in_v_pp3_qq2",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:809 surface of revolution, pq from dir (coverage: nurbs/srf_offset.rs:293)",
"inputs": {
"sur": {
"net": [
[
[
1.0,
0,
0.0,
1.0
],
[
0.7071067811865476,
0.7071067811865476,
0.0,
0.7071067811865476
],
[
0,
1.0,
0.0,
1.0
]
],
[
[
1.6,
0,
0.9,
1.0
],
[
1.1313708498984762,
1.1313708498984762,
0.6363961030678928,
0.7071067811865476
],
[
0,
1.6,
0.9,
1.0
]
],
[
[
1.2,
0,
2.1,
1.0
],
[
0.848528137423857,
0.848528137423857,
1.48492424049175,
0.7071067811865476
],
[
0,
1.2,
2.1,
1.0
]
],
[
[
1.8,
0,
3.0,
1.0
],
[
1.2727922061357857,
1.2727922061357857,
2.121320343559643,
0.7071067811865476
],
[
0,
1.8,
3.0,
1.0
]
]
],
"p": 2,
"q": 2,
"u": [
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0
],
"v": [
0,
0,
0,
1,
1,
1
]
},
"d": 0.2,
"pp": 3,
"qq": 2,
"par": 4,
"eps": 1e-06,
"tol": 0.001
}
},
{
"name": "cov_revolution_rot_in_v_pp2_qq4",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:809 surface of revolution, pq from dir (coverage: nurbs/srf_offset.rs:293)",
"inputs": {
"sur": {
"net": [
[
[
1.0,
0,
0.0,
1.0
],
[
0.7071067811865476,
0.7071067811865476,
0.0,
0.7071067811865476
],
[
0,
1.0,
0.0,
1.0
]
],
[
[
1.6,
0,
0.9,
1.0
],
[
1.1313708498984762,
1.1313708498984762,
0.6363961030678928,
0.7071067811865476
],
[
0,
1.6,
0.9,
1.0
]
],
[
[
1.2,
0,
2.1,
1.0
],
[
0.848528137423857,
0.848528137423857,
1.48492424049175,
0.7071067811865476
],
[
0,
1.2,
2.1,
1.0
]
],
[
[
1.8,
0,
3.0,
1.0
],
[
1.2727922061357857,
1.2727922061357857,
2.121320343559643,
0.7071067811865476
],
[
0,
1.8,
3.0,
1.0
]
]
],
"p": 2,
"q": 2,
"u": [
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0
],
"v": [
0,
0,
0,
1,
1,
1
]
},
"d": 0.2,
"pp": 2,
"qq": 4,
"par": 4,
"eps": 1e-06,
"tol": 0.001
}
},
{
"name": "cov_extrusion_tiny_start_derivative_d0.0",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:872 extrusion, unchecked N_SrfEvalPtPtDerivNormalFast failing at the corner (coverage: nurbs/srf_offset.rs:82-177)",
"inputs": {
"sur": {
"net": [
[
[
0,
0,
0,
1.0
],
[
0.0,
0.0,
2.0,
1.0
]
],
[
[
1e-13,
0.0,
0,
1.0
],
[
1e-13,
0.0,
2.0,
1.0
]
],
[
[
1.5,
0.8,
0,
1.0
],
[
1.5,
0.8,
2.0,
1.0
]
],
[
[
2.5,
-0.4,
0,
1.0
],
[
2.5,
-0.4,
2.0,
1.0
]
],
[
[
3.5,
0.3,
0,
1.0
],
[
3.5,
0.3,
2.0,
1.0
]
]
],
"p": 3,
"q": 1,
"u": [
0.0,
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0,
1.0
],
"v": [
0,
0,
1,
1
]
},
"d": 0.0,
"pp": 3,
"qq": 3,
"par": 4,
"eps": 1e-06,
"tol": 0.001
}
},
{
"name": "cov_extrusion_small_start_derivative_d0",
"upstream_ref": "source/SMLib/src/NL_SrfOffset.cpp:872 extrusion, unchecked normal (coverage: nurbs/srf_offset.rs:82-177)",
"inputs": {
"sur": {
"net": [
[
[
0,
0,
0,
1.0
],
[
0.0,
0.0,
2.0,
1.0
]
],
[
[
1e-11,
0.0,
0,
1.0
],
[
1e-11,
0.0,
2.0,
1.0
]
],
[
[
1.5,
0.8,
0,
1.0
],
[
1.5,
0.8,
2.0,
1.0
]
],
[
[
2.5,
-0.4,
0,
1.0
],
[
2.5,
-0.4,
2.0,
1.0
]
],
[
[
3.5,
0.3,
0,
1.0
],
[
3.5,
0.3,
2.0,
1.0
]
]
],
"p": 3,
"q": 1,
"u": [
0.0,
0.0,
0.0,
0.0,
0.5,
1.0,
1.0,
1.0,
1.0
],
"v": [
0,
0,
1,
1
]
},
"d": 0.0,
"pp": 3,
"qq": 3,
"par": 2,
"eps": 1e-06,
"tol": 0.001
}
}
]
}