Improve testing paths.

This commit is contained in:
Roman Telezhynskyi 2022-11-11 17:57:34 +02:00
parent 3379fca082
commit 5a3669e42b
10 changed files with 231 additions and 56 deletions

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<pattern>
<!--Pattern created with Valentina v0.6.2.0 (https://valentinaproject.bitbucket.io/).-->
<version>0.7.12</version>
<!--Pattern created with Valentina v0.7.52.0 (https://smart-pattern.com.ua/).-->
<version>0.9.2</version>
<unit>cm</unit>
<description>Men's Trousers circa 1830-1870</description>
<notes/>
@ -15,7 +15,7 @@
<line alignment="0" bold="false" italic="false" sfIncrement="0" text="%mFileName%.%mExt%"/>
<line alignment="0" bold="false" italic="true" sfIncrement="0" text="%date%"/>
</patternLabel>
<measurements>marie_issue_#548.vit</measurements>
<measurements path="marie_issue_#548.vit"/>
<increments>
<increment description="Original pattern outseam is 112. &#10;Use CM_HEIGHT for height formulas&#10;" formula="leg_waist_side_to_floor/112" name="#CM_HEIGHT"/>
<increment description="Original pattern's hip circumference is 102.&#10;Use CM_WIDTH for circumference, arc, or width formulas." formula="hip_circ/102" name="#CM_WIDTH"/>
@ -207,21 +207,21 @@
<point id="201" idObject="95" inUse="false" mx="0.987301" my="-2.53475" type="modeling"/>
<point id="202" idObject="81" inUse="false" mx="0.655497" my="-0.983501" type="modeling"/>
<point id="212" idObject="3" inUse="false" mx="-1.64399" my="-1.11279" type="modeling"/>
<point id="214" idObject="80" inUse="true" mx="-1.57043" my="-1.46574" showLabel="true" type="modeling"/>
<point id="215" idObject="94" inUse="true" mx="-0.954275" my="-0.880717" showLabel="true" type="modeling"/>
<point id="216" idObject="90" inUse="true" mx="-0.675292" my="0.147116" showLabel="true" type="modeling"/>
<point id="217" idObject="95" inUse="true" mx="0.279125" my="-0.543001" showLabel="true" type="modeling"/>
<point id="218" idObject="81" inUse="true" mx="0.655497" my="-0.983501" showLabel="true" type="modeling"/>
<point id="219" idObject="3" inUse="true" mx="-1.64399" my="-1.11279" showLabel="true" type="modeling"/>
<point id="221" idObject="80" inUse="true" mx="-1.57043" my="-1.46574" showLabel="true" type="modeling"/>
<point id="222" idObject="94" inUse="true" mx="-0.954275" my="-0.880717" showLabel="true" type="modeling"/>
<point id="223" idObject="90" inUse="true" mx="-0.675292" my="0.147116" showLabel="true" type="modeling"/>
<point id="224" idObject="95" inUse="true" mx="0.279125" my="-0.543001" showLabel="true" type="modeling"/>
<point id="225" idObject="81" inUse="true" mx="0.655497" my="-0.983501" showLabel="true" type="modeling"/>
<point id="226" idObject="3" inUse="true" mx="-1.64399" my="-1.11279" showLabel="true" type="modeling"/>
<point id="214" idObject="80" inUse="false" mx="-1.57043" my="-1.46574" showLabel="true" type="modeling"/>
<point id="215" idObject="94" inUse="false" mx="-0.954275" my="-0.880717" showLabel="true" type="modeling"/>
<point id="216" idObject="90" inUse="false" mx="-0.675292" my="0.147116" showLabel="true" type="modeling"/>
<point id="217" idObject="95" inUse="false" mx="0.279125" my="-0.543001" showLabel="true" type="modeling"/>
<point id="218" idObject="81" inUse="false" mx="0.655497" my="-0.983501" showLabel="true" type="modeling"/>
<point id="219" idObject="3" inUse="false" mx="-1.64399" my="-1.11279" showLabel="true" type="modeling"/>
<point id="221" idObject="80" inUse="false" mx="-1.57043" my="-1.46574" showLabel="true" type="modeling"/>
<point id="222" idObject="94" inUse="false" mx="-0.954275" my="-0.880717" showLabel="true" type="modeling"/>
<point id="223" idObject="90" inUse="false" mx="-0.675292" my="0.147116" showLabel="true" type="modeling"/>
<point id="224" idObject="95" inUse="false" mx="0.279125" my="-0.543001" showLabel="true" type="modeling"/>
<point id="225" idObject="81" inUse="false" mx="0.655497" my="-0.983501" showLabel="true" type="modeling"/>
<point id="226" idObject="3" inUse="false" mx="-1.64399" my="-1.11279" showLabel="true" type="modeling"/>
</modeling>
<details>
<detail closed="1" forbidFlipping="true" forceFlipping="false" hideMainPath="false" id="213" inLayout="true" mx="0" my="0" name="Back" seamAllowance="true" united="false" version="2" width="0.3">
<detail closed="1" forbidFlipping="true" forceFlipping="false" hideMainPath="false" id="213" mx="0" my="0" name="Back case 1" seamAllowance="true" sewLineOnDrawing="false" uuid="{b9876b4f-4064-4583-8d9e-510d3be19f51}" version="2" width="0.3">
<data annotation="" foldPosition="" fontSize="102" height="3.66776" letter="" mx="-20.0743" my="468.066" onFold="false" orientation="" quantity="1" rotation="0" rotationWay="" tilt="" visible="false" width="7.55684">
<line alignment="4" bold="true" italic="false" sfIncrement="2" text="%pName%"/>
</data>
@ -236,7 +236,7 @@
<node idObject="212" type="NodePoint"/>
</nodes>
</detail>
<detail forbidFlipping="true" forceFlipping="false" hideMainPath="false" id="220" inLayout="true" mx="21.7242" my="0.323277" name="Back" seamAllowance="true" united="false" version="2" width="1">
<detail forbidFlipping="true" forceFlipping="false" hideMainPath="false" id="220" mx="21.7242" my="0.323277" name="Back case 2" seamAllowance="true" sewLineOnDrawing="false" uuid="{55c8aff5-3bdc-4885-aeaf-b402f122e8b3}" version="2" width="1">
<data annotation="" foldPosition="" fontSize="102" height="3.66776" letter="" mx="-20.0743" my="468.066" onFold="false" orientation="" quantity="1" rotation="0" rotationWay="" tilt="" visible="false" width="7.55684">
<line alignment="4" bold="true" italic="false" sfIncrement="2" text="%pName%"/>
</data>
@ -251,7 +251,7 @@
<node idObject="219" type="NodePoint"/>
</nodes>
</detail>
<detail forbidFlipping="true" forceFlipping="false" hideMainPath="false" id="227" inLayout="true" mx="7.69399" my="15.0001" name="Back" seamAllowance="true" united="false" version="2" width="2">
<detail forbidFlipping="true" forceFlipping="false" hideMainPath="false" id="227" mx="7.69399" my="15.0001" name="Back case 3" seamAllowance="true" sewLineOnDrawing="false" uuid="{29977cac-1198-46e5-b723-72b060c9ce35}" version="2" width="2">
<data annotation="" foldPosition="" fontSize="102" height="3.66776" letter="" mx="-20.0743" my="468.066" onFold="false" orientation="" quantity="1" rotation="0" rotationWay="" tilt="" visible="false" width="7.55684">
<line alignment="4" bold="true" italic="false" sfIncrement="2" text="%pName%"/>
</data>

View File

@ -565,13 +565,13 @@ auto VGObject::IsPointOnLineSegment(const QPointF &t, const QPointF &p1, const Q
// Here we deal with more like cigar shape.
// Front and rear easy to check
if (VFuzzyComparePoints(p1, t) || VFuzzyComparePoints(p2, t))
if (VFuzzyComparePoints(p1, t, accuracy) || VFuzzyComparePoints(p2, t, accuracy))
{
return true;
}
// Check if we have a segment. On previous step we already confirmed that we don't have intersection
if (VFuzzyComparePoints(p1, p2))
if (VFuzzyComparePoints(p1, p2, accuracy))
{
return false;
}

View File

@ -59,6 +59,42 @@
#include "../vpatterndb/vpiecenode.h"
#include "../vpatterndb/vpassmark.h"
namespace
{
auto FillPath(const QVector<QPointF> &path, qreal accuracy) -> QVector<QPointF>
{
QVector<QPointF> pathFilled;
pathFilled.reserve(path.size());
for (int i=0; i < path.size()-1; ++i)
{
pathFilled.append(path.at(i));
QLineF line(path.at(i), path.at(i+1));
if (line.length() > accuracy)
{
qreal len = accuracy;
do
{
QLineF l = line;
l.setLength(len);
pathFilled.append(l.p2());
len += accuracy;
}
while(line.length() > len);
}
else
{
int a = 1;
}
}
pathFilled.append(ConstLast(path));
return pathFilled;
}
} // namespace
//---------------------------------------------------------------------------------------------------------------------
AbstractTest::AbstractTest(QObject *parent) :
QObject(parent)
@ -212,6 +248,38 @@ void AbstractTest::PassmarkShapeFromJson(const QString &json, QVector<QLineF> &s
}
}
//---------------------------------------------------------------------------------------------------------------------
void AbstractTest::ComparePaths(const QVector<QPointF> &actual, const QVector<QPointF> &expected)
{
QVERIFY2(actual.size() >= 2, "Not enough points");
QVERIFY2(expected.size() >= 2, "Not enough points");
const qreal accuracy = accuracyPointOnLine*2;
QVector<QPointF> actualFilled = FillPath(actual, accuracy);
bool onLine = false;
QSet<int> usedEdges;
for (auto p : actualFilled)
{
for(int i = 0; i < expected.size()-1; ++i)
{
if (VGObject::IsPointOnLineSegment(p, expected.at(i), expected.at(i+1)))
{
usedEdges.insert(i+1);
onLine = true;
}
}
if (not onLine)
{
QFAIL("Paths are not the same. Point is not on edge.");
}
onLine = false;
}
QVERIFY2(expected.size() - 1 == usedEdges.size(), "Paths are not the same. Not all edges were used.");
}
//---------------------------------------------------------------------------------------------------------------------
void AbstractTest::ComparePathsDistance(const QVector<QPointF> &ekv, const QVector<QPointF> &ekvOrig) const
{

View File

@ -86,6 +86,7 @@ public:
void PassmarkShapeFromJson(const QString &json, QVector<QLineF> &shape);
protected:
static void ComparePaths(const QVector<QPointF> &actual, const QVector<QPointF> &expected);
void ComparePathsDistance(const QVector<QPointF> &ekv, const QVector<QPointF> &ekvOrig) const;
void ComparePointsDistance(const QPointF &result, const QPointF &expected, qreal testAccuracy) const;
void CompareLinesDistance(const QVector<QLineF> &result, const QVector<QLineF> &expected) const;

View File

@ -112,8 +112,18 @@
},
{
"type": "QPointF",
"x": -69.2871712942862,
"y": 156.06512913942984
"x": -71.33016037970899,
"y": 144.14769280779646
},
{
"type": "QPointF",
"x": 234.13513056084665,
"y": 91.78221436084601
},
{
"type": "QPointF",
"x": 234.13513056084665,
"y": 91.7822143608459
},
{
"type": "QPointF",

View File

@ -1,489 +1,583 @@
{
"vector": [
{
"turnPoint": true,
"type": "VSAPoint",
"x": 247.3228346456693,
"y": 1797.4790551181104
},
{
"turnPoint": true,
"type": "VSAPoint",
"x": 294.56692913385825,
"y": 1526.744484718234
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 294.56692913385825,
"y": 1526.744484718234
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 297.78826667615306,
"y": 1526.2556756427075
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 318.5060975402612,
"y": 1521.9403017050831
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 338.4399491985108,
"y": 1516.5913193530896
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 357.5961791656124,
"y": 1510.2268226147403
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 375.98114495627635,
"y": 1502.86490551805
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 393.6012040852129,
"y": 1494.5236620910327
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 410.4627140671324,
"y": 1485.221186361704
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 426.5720324167454,
"y": 1474.975572358077
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 441.9355166487622,
"y": 1463.804914108167
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 456.5595242778931,
"y": 1451.7273056399881
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 470.4504128188486,
"y": 1438.7608409815548
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 483.6145397863388,
"y": 1424.9236141608817
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 496.05826269507435,
"y": 1410.2337192059833
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 507.78793905976556,
"y": 1394.7092501448735
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 518.8099263951228,
"y": 1378.3683010055674
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 529.1305822158562,
"y": 1361.2289658160792
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 538.7562640366766,
"y": 1343.309338604423
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 547.6933293722939,
"y": 1324.6275133986137
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 555.9481357374189,
"y": 1305.2015842266655
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 563.5270406467614,
"y": 1285.0496451165927
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 570.4364016150325,
"y": 1264.1897900964104
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 574.1606905548133,
"y": 1251.340769819358
},
{
"turnPoint": true,
"type": "VSAPoint",
"x": 574.1606905548133,
"y": 1251.340769819358
},
{
"turnPoint": true,
"type": "VSAPoint",
"x": 1043.6462437609543,
"y": 1420.9221966584219
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1043.6462437609543,
"y": 1420.9221966584219
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1035.2312855037069,
"y": 1459.225877577704
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1027.0331905074174,
"y": 1504.129744460739
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1020.7375941575093,
"y": 1547.6425282999794
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1016.2716040932994,
"y": 1589.777525721534
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1013.5623279541039,
"y": 1630.5480333515106
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1012.5368733792393,
"y": 1669.9673478160166
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1013.1223480080217,
"y": 1708.0487657411604
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1015.2458594797675,
"y": 1744.80558375305
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1018.8345154337933,
"y": 1780.2510984777941
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1023.815423509415,
"y": 1814.3986065414997
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1030.1156913459495,
"y": 1847.2614045702749
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1037.6624265827127,
"y": 1878.8527891902281
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1046.382736859021,
"y": 1909.1860570274675
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1056.2037298141906,
"y": 1938.2745047081007
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1060.8693996697996,
"y": 1950.5615890831032
"x": 1060.78342188316,
"y": 1950.3388175409807
},
{
"turnPoint": true,
"type": "VSAPoint",
"x": 1060.8693996697996,
"y": 1950.5615890831032
"x": 1060.78342188316,
"y": 1950.3388175409807
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1060.8693996697996,
"y": 1950.5615890831032
"x": 1060.78342188316,
"y": 1950.3388175409807
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1067.0525130875385,
"y": 1966.131428858236
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1078.8561943183804,
"y": 1992.7701261039808
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1091.5418811460327,
"y": 2018.2038930714439
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1105.0366812098123,
"y": 2042.4460263867327
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1119.267702149035,
"y": 2065.5098226759555
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1134.1620516030175,
"y": 2087.4085785652205
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1149.6468372110758,
"y": 2108.155590680636
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1165.6491666125266,
"y": 2127.7641556483086
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1182.0961474466858,
"y": 2146.247570094348
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1198.9148873528698,
"y": 2163.619130644861
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1216.0324939703955,
"y": 2179.892133925956
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1233.3760749385788,
"y": 2195.0798765637414
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1250.872737896736,
"y": 2209.195655184325
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1268.4495904841838,
"y": 2222.2527664138142
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1277.244094488189,
"y": 2228.3451968503937
},
{
"turnPoint": true,
"type": "VSAPoint",
"x": 1277.244094488189,
"y": 2228.3451968503937
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1277.244094488189,
"y": 2228.3451968503937
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1271.9588830384628,
"y": 2262.447990091445
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1261.101448249924,
"y": 2345.9028330125902
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1250.4163709563645,
"y": 2443.039988555569
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1240.4778420043203,
"y": 2548.729684381468
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1231.860052240328,
"y": 2657.842148151375
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1225.1371925109243,
"y": 2765.2476075263785
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1220.8834536626455,
"y": 2865.816290167567
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1219.767482875249,
"y": 2933.1761050465484
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1220.030758030581,
"y": 2973.52370224905
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1220.551181102362,
"y": 2991.8097637795277
},
{
"turnPoint": true,
"type": "VSAPoint",
"x": 1220.551181102362,
"y": 2991.8097637795277
},
{
"curvePoint": true,
"turnPoint": true,
"type": "VSAPoint",
"x": 1220.551181102362,
"y": 2991.8097637795277
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1222.491963893705,
"y": 3041.378156244142
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1228.9297849855586,
"y": 3149.325295405348
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1242.2166449681567,
"y": 3324.7922499621873
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1257.0381248037838,
"y": 3509.2002740192374
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1265.9313376604825,
"y": 3631.4531243807824
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1272.8825040106944,
"y": 3749.9949053775285
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1276.089799507623,
"y": 3834.436912931008
},
{
"angle": 6,
"curvePoint": true,
"type": "VSAPoint",
"x": 1277.1503873849765,
"y": 3888.191689968952
},
{
"curvePoint": true,
"saAfter": 90.70866141732284,
"turnPoint": true,
"type": "VSAPoint",
"x": 1277.244094488189,
"y": 3914.0144881889764
},
{
"saAfter": 90.70866141732284,
"turnPoint": true,
"type": "VSAPoint",
"x": 1277.244094488189,
"y": 3914.0144881889764
@ -491,12 +585,14 @@
{
"saAfter": 0,
"saBefore": 90.70866141732284,
"turnPoint": true,
"type": "VSAPoint",
"x": 218.9763779527559,
"y": 3914.0144881889764
},
{
"saBefore": 0,
"turnPoint": true,
"type": "VSAPoint",
"x": 218.9763779527559,
"y": 1797.4790551181104

View File

@ -67,23 +67,23 @@
},
{
"type": "QPointF",
"x": 469.54733984197816,
"y": 1412.2930283139299
"x": 469.7108255124939,
"y": 1412.1211833970249
},
{
"type": "QPointF",
"x": 481.41282344527315,
"y": 1398.2857485794134
"x": 481.5023818549732,
"y": 1398.889071550954
},
{
"type": "QPointF",
"x": 492.5547151481526,
"y": 1383.8143086488699
"x": 491.68673124443325,
"y": 1383.8140348486497
},
{
"type": "QPointF",
"x": 502.7806762003831,
"y": 1368.354315381568
"x": 503.00597472305526,
"y": 1367.980166009198
},
{
"type": "QPointF",
@ -302,8 +302,8 @@
},
{
"type": "QPointF",
"x": 1239.7744748167386,
"y": 2866.372200302109
"x": 1239.7642099434847,
"y": 2866.614886752182
},
{
"type": "QPointF",
@ -312,8 +312,8 @@
},
{
"type": "QPointF",
"x": 1238.9261603693603,
"y": 2973.119458224285
"x": 1238.9279935276843,
"y": 2973.4003944697574
},
{
"type": "QPointF",
@ -362,12 +362,12 @@
},
{
"type": "QPointF",
"x": 218.40944881889754,
"x": 218.09480314960638,
"y": 4004.723149606299
},
{
"type": "QPointF",
"x": 218.40944881889763,
"x": 218.0948031496063,
"y": 1778.581417322835
},
{

View File

@ -314,7 +314,7 @@ void TST_VAbstractPiece::EquidistantRemoveLoop() const
CastTo(VAbstractPiece::Equidistant(points, width, QString()), ekv);
// Begin comparison
ComparePathsDistance(ekv, ekvOrig);
ComparePaths(ekv, ekvOrig);
}
//---------------------------------------------------------------------------------------------------------------------
@ -331,7 +331,7 @@ void TST_VAbstractPiece::LayoutAllowanceRemoveLoop_data()
QTest::newRow(title) << inputPoints << width << outputPoints;
};
// See file src/app/share/collection/test/smart_pattern_#58.val (private collection)
// See file valentina_private_collection/bugs/smart_pattern_#58/smart_pattern_#58.val
ASSERT_TEST_CASE("Loop in layout allowance",
QStringLiteral("://smart_pattern_#58/input.json"),
QStringLiteral("://smart_pattern_#58/output.json"),
@ -367,7 +367,7 @@ void TST_VAbstractPiece::LayoutAllowanceRemoveLoop() const
CastTo(VAbstractPiece::Equidistant(points, width, QString()), ekv);
// Begin comparison
ComparePathsDistance(ekv, ekvOrig);
ComparePaths(ekv, ekvOrig);
}
//---------------------------------------------------------------------------------------------------------------------
@ -459,7 +459,7 @@ void TST_VAbstractPiece::RawPathRemoveLoop() const
QVector<QPointF> res;
CastTo(VAbstractPiece::CheckLoops(path), res);
ComparePathsDistance(res, expect);
ComparePaths(res, expect);
}
//---------------------------------------------------------------------------------------------------------------------
@ -732,7 +732,7 @@ void TST_VAbstractPiece::PathRemoveLoop() const
QFETCH(QVector<QPointF>, expect);
QVector<QPointF> res = VAbstractPiece::CheckLoops(path);
ComparePathsDistance(res, expect);
ComparePaths(res, expect);
}
//---------------------------------------------------------------------------------------------------------------------
@ -918,7 +918,7 @@ void TST_VAbstractPiece::PathLoopsCase() const
QFETCH(QVector<QPointF>, expect);
const QVector<QPointF> res = VAbstractPiece::CheckLoops(path);
ComparePathsDistance(res, expect);
ComparePaths(res, expect);
}
//---------------------------------------------------------------------------------------------------------------------
@ -1034,7 +1034,7 @@ void TST_VAbstractPiece::BrokenDetailEquidistant() const
CastTo(VAbstractPiece::Equidistant(points, width, QString()), ekv);// Take result
// Begin comparison
ComparePathsDistance(ekv, ekvOrig);
ComparePaths(ekv, ekvOrig);
}
//---------------------------------------------------------------------------------------------------------------------
@ -1147,7 +1147,7 @@ void TST_VAbstractPiece::EquidistantAngleType() const
CastTo(VAbstractPiece::Equidistant(points, width, QString()), ekv);// Take result
// Begin comparison
ComparePathsDistance(ekv, ekvOrig);
ComparePaths(ekv, ekvOrig);
}
//---------------------------------------------------------------------------------------------------------------------
@ -1184,7 +1184,7 @@ void TST_VAbstractPiece::CorrectEquidistantPoints() const
const QVector<QPointF> res = VAbstractPiece::CorrectEquidistantPoints(points, removeFirstAndLast);
// Begin comparison
ComparePathsDistance(res, expect);
ComparePaths(res, expect);
}
//---------------------------------------------------------------------------------------------------------------------
@ -1218,7 +1218,7 @@ void TST_VAbstractPiece::TestCorrectEquidistantPoints() const
QFETCH(QVector<QPointF>, expect);
QVector<QPointF> after = VAbstractPiece::CorrectEquidistantPoints(before);
ComparePathsDistance(after, expect);
ComparePaths(after, expect);
}
//---------------------------------------------------------------------------------------------------------------------
@ -1335,7 +1335,7 @@ void TST_VAbstractPiece::PossibleInfiniteClearLoops() const
QFETCH(QVector<QPointF>, expect);
QVector<QPointF> res = VAbstractPiece::CheckLoops(path);
ComparePathsDistance(res, expect);
ComparePaths(res, expect);
}
//---------------------------------------------------------------------------------------------------------------------

View File

@ -64,7 +64,7 @@ void TST_VLayoutDetail::Case1() const
// Begin comparison
QVector<QPointF> contourPoints;
CastTo(det.GetMappedContourPoints(), contourPoints);
ComparePathsDistance(contourPoints, OutputPointsCase1());
ComparePaths(contourPoints, OutputPointsCase1());
}
//---------------------------------------------------------------------------------------------------------------------
@ -130,7 +130,7 @@ void TST_VLayoutDetail::Case2() const
// Begin comparison
QVector<QPointF> contourPoints;
CastTo(det.GetMappedContourPoints(), contourPoints);
ComparePathsDistance(contourPoints, OutputPointsCase2());
ComparePaths(contourPoints, OutputPointsCase2());
}
//---------------------------------------------------------------------------------------------------------------------

View File

@ -60,7 +60,7 @@ void TST_VPiece::Issue620()
QVector<QPointF> origPoints = AbstractTest::VectorFromJson<QPointF>(QStringLiteral("://Issue_620/output.json"));
// Begin comparison
ComparePathsDistance(pointsEkv, origPoints);
ComparePaths(pointsEkv, origPoints);
}
catch (const VException &e)
{