summaryrefslogtreecommitdiff
path: root/basegfx/test
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2013-10-29 14:11:45 +0000
committerArmin Le Grand <alg@apache.org>2013-10-29 14:11:45 +0000
commitf15874d8f976f3874bdbcb53429eeefa65c28841 (patch)
treef0e65216e58b2f8dee632209606fe75cfacfdc07 /basegfx/test
parent697d89b1dda760a39cd8e7e28f386dbec1aaff61 (diff)
i123433 Detect pseudo-vertices at svg import, unify svg:d handling, correct svg:d import for relative sub-polygons in svg import; changed default for moveto writes for svg:d in ODF to absolute
Notes
Notes: merged as: 223f6b631c1b087754c0f9051fb55f029f2503ce
Diffstat (limited to 'basegfx/test')
-rw-r--r--basegfx/test/basegfx2d.cxx40
-rw-r--r--basegfx/test/boxclipper.cxx20
-rw-r--r--basegfx/test/clipstate.cxx13
-rw-r--r--basegfx/test/genericclipper.cxx8
4 files changed, 34 insertions, 47 deletions
diff --git a/basegfx/test/basegfx2d.cxx b/basegfx/test/basegfx2d.cxx
index 45c98780832e..b317d7b4e630 100644
--- a/basegfx/test/basegfx2d.cxx
+++ b/basegfx/test/basegfx2d.cxx
@@ -150,23 +150,20 @@ public:
::rtl::OUString aExport;
CPPUNIT_ASSERT_MESSAGE("importing simple rectangle from SVG-D",
- tools::importFromSvgD( aPoly,
- aPath0 ));
- aExport = tools::exportToSvgD( aPoly );
+ tools::importFromSvgD( aPoly, aPath0, false, 0 ));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
const char* sExportString = "m10 10h-20v-20h20z";
CPPUNIT_ASSERT_MESSAGE("exporting rectangle to SVG-D",
!aExport.compareToAscii(sExportString) );
CPPUNIT_ASSERT_MESSAGE("importing simple rectangle from SVG-D (round-trip",
- tools::importFromSvgD( aPoly,
- aExport ));
- aExport = tools::exportToSvgD( aPoly );
+ tools::importFromSvgD( aPoly, aExport, false, 0 ));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
CPPUNIT_ASSERT_MESSAGE("exporting rectangle to SVG-D (round-trip)",
!aExport.compareToAscii(sExportString));
CPPUNIT_ASSERT_MESSAGE("importing simple bezier polygon from SVG-D",
- tools::importFromSvgD( aPoly,
- aPath1 ));
- aExport = tools::exportToSvgD( aPoly );
+ tools::importFromSvgD( aPoly, aPath1, false, 0 ));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
// Adaptions for B2DPolygon bezier change (see #i77162#):
//
@@ -193,11 +190,11 @@ public:
// a 2nd good test is that re-importing of aExport has to create the same
// B2DPolPolygon again:
B2DPolyPolygon aReImport;
- CPPUNIT_ASSERT_MESSAGE("importing simple bezier polygon from SVG-D", tools::importFromSvgD( aReImport, aExport));
+ CPPUNIT_ASSERT_MESSAGE("importing simple bezier polygon from SVG-D", tools::importFromSvgD( aReImport, aExport, false, 0));
CPPUNIT_ASSERT_MESSAGE("re-imported polygon needs to be identical", aReImport == aPoly);
- CPPUNIT_ASSERT_MESSAGE("importing '@' from SVG-D", tools::importFromSvgD( aPoly, aPath2 ));
- aExport = tools::exportToSvgD( aPoly );
+ CPPUNIT_ASSERT_MESSAGE("importing '@' from SVG-D", tools::importFromSvgD( aPoly, aPath2, , false, 0));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
// Adaptions for B2DPolygon bezier change (see #i77162#):
//
@@ -213,22 +210,20 @@ public:
"8 752-224 1128-21 101-31 183-31 245 0 39 9 70 26 93 17 24 39 36 67 36 145 0 279-80 400-240s182-365 182-615c0-2"
"88-107-533-322-734s-487-301-816-301c-395 0-715 124-960 373s-368 569-368 958q0 577.5 357 900c237 216 557 324 95"
"8 325 189-1 389-27 600-77 211-52 378-110 503-174q40.5 105 81 210z";
- CPPUNIT_ASSERT_MESSAGE("re-importing '@' from SVG-D", tools::importFromSvgD( aReImport, aExport));
+ CPPUNIT_ASSERT_MESSAGE("re-importing '@' from SVG-D", tools::importFromSvgD( aReImport, aExport, false, 0));
CPPUNIT_ASSERT_MESSAGE("re-imported '@' needs to be identical", aReImport == aPoly);
CPPUNIT_ASSERT_MESSAGE("exporting '@' to SVG-D", !aExport.compareToAscii(sExportString1));
CPPUNIT_ASSERT_MESSAGE("importing '@' from SVG-D (round-trip",
- tools::importFromSvgD( aPoly,
- aExport ));
- aExport = tools::exportToSvgD( aPoly );
+ tools::importFromSvgD( aPoly, aExport, false, 0 ));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
CPPUNIT_ASSERT_MESSAGE("exporting '@' to SVG-D (round-trip)",
!aExport.compareToAscii(sExportString1));
CPPUNIT_ASSERT_MESSAGE("importing complex polygon from SVG-D",
- tools::importFromSvgD( aPoly,
- aPath3 ));
- aExport = tools::exportToSvgD( aPoly );
+ tools::importFromSvgD( aPoly, aPath3, false, 0 ));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
const char* sExportString2 =
"m1598 125h306v2334h-306v-1105h-1293v1105h-305v-2334h305v973h1293"
"zm2159 1015 78-44 85 235-91 47-91 40-90 34-90 29-89 21-88 16-88 10-88 3-102-4-97"
@@ -253,15 +248,14 @@ public:
CPPUNIT_ASSERT_MESSAGE("exporting complex polygon to SVG-D",
!aExport.compareToAscii(sExportString2));
CPPUNIT_ASSERT_MESSAGE("importing complex polygon from SVG-D (round-trip",
- tools::importFromSvgD( aPoly,
- aExport ));
- aExport = tools::exportToSvgD( aPoly );
+ tools::importFromSvgD( aPoly, aExport, false, 0 ));
+ aExport = tools::exportToSvgD( aPoly, true, true, false );
CPPUNIT_ASSERT_MESSAGE("exporting complex polygon to SVG-D (round-trip)",
!aExport.compareToAscii(sExportString2));
const B2DPolygon aRect(
tools::createPolygonFromRect( B2DRange(0.0,0.0,4000.0,4000.0) ));
- aExport = tools::exportToSvgD( B2DPolyPolygon(aRect), false, false);
+ aExport = tools::exportToSvgD( B2DPolyPolygon(aRect), false, false, false );
const char* sExportStringRect = "M0 0H4000V4000H0Z";
CPPUNIT_ASSERT_MESSAGE("exporting to rectangle svg-d string",
diff --git a/basegfx/test/boxclipper.cxx b/basegfx/test/boxclipper.cxx
index a90a602c08d3..38fd51d1b75c 100644
--- a/basegfx/test/boxclipper.cxx
+++ b/basegfx/test/boxclipper.cxx
@@ -175,7 +175,7 @@ public:
B2DPolyPolygon randomPoly;
tools::importFromSvgD(
randomPoly,
- rtl::OUString::createFromAscii(randomSvg));
+ rtl::OUString::createFromAscii(randomSvg), false, 0);
std::for_each(randomPoly.begin(),
randomPoly.end(),
boost::bind(
@@ -243,16 +243,14 @@ public:
B2DPolyPolygon aTmp1;
CPPUNIT_ASSERT_MESSAGE(sName,
tools::importFromSvgD(
- aTmp1,
- rtl::OUString::createFromAscii(sSvg)));
+ aTmp1, rtl::OUString::createFromAscii(sSvg), false, 0));
const rtl::OUString aSvg=
- tools::exportToSvgD(toTest.solveCrossovers());
+ tools::exportToSvgD(toTest.solveCrossovers(), , true, true, false);
B2DPolyPolygon aTmp2;
CPPUNIT_ASSERT_MESSAGE(sName,
tools::importFromSvgD(
- aTmp2,
- aSvg));
+ aTmp2, aSvg, false, 0));
CPPUNIT_ASSERT_MESSAGE(
sName,
@@ -303,7 +301,7 @@ public:
#if defined(VERBOSE)
fprintf(stderr, "%s - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
- basegfx::tools::exportToSvgD(rPoly),
+ basegfx::tools::exportToSvgD(rPoly, , true, true, false),
RTL_TEXTENCODING_UTF8).getStr() );
#endif
}
@@ -347,15 +345,14 @@ public:
fprintf(stderr, "%s input - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
basegfx::tools::exportToSvgD(
- genericClip),
+ genericClip, , true, true, false),
RTL_TEXTENCODING_UTF8).getStr() );
#endif
const B2DPolyPolygon boxClipResult=rRange.solveCrossovers();
const rtl::OUString boxClipSvg(
basegfx::tools::exportToSvgD(
- normalizePoly(
- boxClipResult)));
+ normalizePoly(boxClipResult)), true, true, false);
#if defined(VERBOSE)
fprintf(stderr, "%s boxclipper - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
@@ -366,8 +363,7 @@ public:
genericClip = tools::solveCrossovers(genericClip);
const rtl::OUString genericClipSvg(
basegfx::tools::exportToSvgD(
- normalizePoly(
- genericClip)));
+ normalizePoly(genericClip)), true, true, false);
#if defined(VERBOSE)
fprintf(stderr, "%s genclipper - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
diff --git a/basegfx/test/clipstate.cxx b/basegfx/test/clipstate.cxx
index 60c6da40f10b..7a3529d8c939 100644
--- a/basegfx/test/clipstate.cxx
+++ b/basegfx/test/clipstate.cxx
@@ -107,23 +107,21 @@ public:
#if defined(VERBOSE)
fprintf(stderr, "%s - svg:d=\"%s\"\n",
sName, rtl::OUStringToOString(
- basegfx::tools::exportToSvgD(toTest.getClipPoly()),
+ basegfx::tools::exportToSvgD(toTest.getClipPoly(), true, true, false),
RTL_TEXTENCODING_UTF8).getStr() );
#endif
B2DPolyPolygon aTmp1;
CPPUNIT_ASSERT_MESSAGE(sName,
tools::importFromSvgD(
- aTmp1,
- rtl::OUString::createFromAscii(sSvg)));
+ aTmp1, rtl::OUString::createFromAscii(sSvg), false, 0));
const rtl::OUString aSvg=
- tools::exportToSvgD(toTest.getClipPoly());
+ tools::exportToSvgD(toTest.getClipPoly(), true, true, false);
B2DPolyPolygon aTmp2;
CPPUNIT_ASSERT_MESSAGE(sName,
tools::importFromSvgD(
- aTmp2,
- aSvg));
+ aTmp2, aSvg, false, 0));
CPPUNIT_ASSERT_MESSAGE(
sName,
@@ -153,8 +151,7 @@ public:
B2DPolyPolygon aTmp1;
tools::importFromSvgD(
- aTmp1,
- rtl::OUString::createFromAscii(unionSvg));
+ aTmp1, rtl::OUString::createFromAscii(unionSvg), false, 0);
aMixedClip.intersectPolyPolygon(aTmp1);
aMixedClip.subtractRange(B2DRange(-20,-150,20,0));
diff --git a/basegfx/test/genericclipper.cxx b/basegfx/test/genericclipper.cxx
index 39e2cd47d836..49abbbd1aa74 100644
--- a/basegfx/test/genericclipper.cxx
+++ b/basegfx/test/genericclipper.cxx
@@ -91,12 +91,12 @@ public:
fprintf(stderr, "%s input LHS - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
basegfx::tools::exportToSvgD(
- aSelfIntersect),
+ aSelfIntersect, true, true, false),
RTL_TEXTENCODING_UTF8).getStr() );
fprintf(stderr, "%s input RHS - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
basegfx::tools::exportToSvgD(
- aRect),
+ aRect, true, true, false),
RTL_TEXTENCODING_UTF8).getStr() );
#endif
@@ -106,14 +106,14 @@ public:
#if defined(VERBOSE)
fprintf(stderr, "%s - svg:d=\"%s\"\n",
pName, rtl::OUStringToOString(
- basegfx::tools::exportToSvgD(aRes),
+ basegfx::tools::exportToSvgD(aRes, true, true, false),
RTL_TEXTENCODING_UTF8).getStr() );
#endif
rtl::OUString aValid=rtl::OUString::createFromAscii(pValidSvgD);
CPPUNIT_ASSERT_MESSAGE(pName,
- basegfx::tools::exportToSvgD(aRes) == aValid);
+ basegfx::tools::exportToSvgD(aRes, true, true, false) == aValid);
}
void validateOr()