summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authorTamás Zolnai <tamas.zolnai@collabora.com>2017-02-13 22:54:12 +0100
committerTamás Zolnai <tamas.zolnai@collabora.com>2017-02-14 12:52:25 +0000
commitbd96cbacb47e91dd1c75f06a5b1bbe6785f0ebbd (patch)
treedbb954647024bfdea5d7228a99022a11715a79aa /chart2
parentf8fc4cac291ae98e043edf7b7f636489b78e655c (diff)
ChartDumpTest: Test pie charts
Change-Id: I936c24c4b1d6854fcfec86dc2642ef57a241b8ea Reviewed-on: https://gerrit.libreoffice.org/34225 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Diffstat (limited to 'chart2')
-rwxr-xr-xchart2/qa/extras/chart2dump/chart2dump.cxx76
-rwxr-xr-xchart2/qa/extras/chart2dump/data/donut_chart.odsbin0 -> 24229 bytes
-rwxr-xr-xchart2/qa/extras/chart2dump/data/exploded_pie_chart.odsbin0 -> 26508 bytes
-rwxr-xr-xchart2/qa/extras/chart2dump/data/normal_pie_chart.odsbin0 -> 26315 bytes
-rwxr-xr-xchart2/qa/extras/chart2dump/data/pie_chart_many_slices.odsbin0 -> 16351 bytes
-rwxr-xr-xchart2/qa/extras/chart2dump/data/rotated_pie_chart.odsbin0 -> 26745 bytes
-rwxr-xr-xchart2/qa/extras/chart2dump/reference/piecharttest/donut_chart.txt194
-rwxr-xr-xchart2/qa/extras/chart2dump/reference/piecharttest/exploded_pie_chart.txt50
-rwxr-xr-xchart2/qa/extras/chart2dump/reference/piecharttest/normal_pie_chart.txt50
-rwxr-xr-xchart2/qa/extras/chart2dump/reference/piecharttest/pie_chart_many_slices.txt275
-rwxr-xr-xchart2/qa/extras/chart2dump/reference/piecharttest/rotated_pie_chart.txt50
11 files changed, 695 insertions, 0 deletions
diff --git a/chart2/qa/extras/chart2dump/chart2dump.cxx b/chart2/qa/extras/chart2dump/chart2dump.cxx
index 3ebea8029607..5d8c4ca350d5 100755
--- a/chart2/qa/extras/chart2dump/chart2dump.cxx
+++ b/chart2/qa/extras/chart2dump/chart2dump.cxx
@@ -860,6 +860,82 @@ DECLARE_DUMP_TEST(ChartWallTest, Chart2DumpTest, false)
}
}
+DECLARE_DUMP_TEST(PieChartTest, Chart2DumpTest, false)
+{
+ const std::vector<OUString> aTestFiles =
+ {
+ "normal_pie_chart.ods",
+ "rotated_pie_chart.ods",
+ "exploded_pie_chart.ods",
+ "donut_chart.ods",
+ "pie_chart_many_slices.ods"
+ };
+
+ for (const OUString& sTestFile : aTestFiles)
+ {
+ setTestFileName(sTestFile);
+ load(getTestFileDirName(), getTestFileName());
+ uno::Reference< chart::XChartDocument > xChartDoc(getChartDocFromSheet(0, mxComponent), UNO_QUERY_THROW);
+ uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(xChartDoc, uno::UNO_QUERY);
+ uno::Reference<drawing::XDrawPage> xDrawPage = xDrawPageSupplier->getDrawPage();
+ uno::Reference<drawing::XShapes> xShapes(xDrawPage->getByIndex(0), uno::UNO_QUERY);
+ CPPUNIT_ASSERT(xShapes.is());
+
+ uno::Reference< chart2::XChartDocument > xChartDoc2(xChartDoc, UNO_QUERY_THROW);
+ Reference<chart2::XChartType> xChartType = getChartTypeFromDoc(xChartDoc2, 0);
+ CPPUNIT_ASSERT(xChartType.is());
+
+ std::vector<std::vector<double> > aDataSeriesYValues = getDataSeriesYValuesFromChartType(xChartType);
+ size_t nSeriesCount = aDataSeriesYValues.size();
+ CPPUNIT_DUMP_ASSERT_NUMBERS_EQUAL(nSeriesCount);
+
+ for (size_t nSeries = 0; nSeries < nSeriesCount; ++nSeries)
+ {
+ uno::Reference<drawing::XShape> xSeriesSlices = getShapeByName(xShapes, "CID/D=0:CS=0:CT=0:Series=" + OUString::number(nSeries));
+ if (!xSeriesSlices.is())
+ break; // Normal pie chart displays only one series
+ CPPUNIT_DUMP_ASSERT_NOTE("Series " + OUString::number(nSeries) + " slices");
+
+ // Check slice count in the series
+ uno::Reference<container::XIndexAccess> xIndexAccess(xSeriesSlices, UNO_QUERY_THROW);
+ sal_Int32 nSlicesCountInSeries = xIndexAccess->getCount();
+ CPPUNIT_DUMP_ASSERT_NUMBERS_EQUAL(nSlicesCountInSeries);
+
+ // Check slices properties
+ for (sal_Int32 nSlice = 0; nSlice < nSlicesCountInSeries; ++nSlice)
+ {
+ uno::Reference<drawing::XShape> xSlice(xIndexAccess->getByIndex(nSlice), UNO_QUERY_THROW);
+ uno::Reference<container::XNamed> xNamedShape(xIndexAccess->getByIndex(nSlice), uno::UNO_QUERY);
+ CPPUNIT_DUMP_ASSERT_NOTE(xNamedShape->getName());
+
+ // Check size and position
+ awt::Point aSlicePosition = xSlice->getPosition();
+ CPPUNIT_DUMP_ASSERT_DOUBLES_EQUAL(aSlicePosition.X, INT_EPS);
+ CPPUNIT_DUMP_ASSERT_DOUBLES_EQUAL(aSlicePosition.Y, INT_EPS);
+ awt::Size aSliceSize = xSlice->getSize();
+ CPPUNIT_DUMP_ASSERT_DOUBLES_EQUAL(aSliceSize.Height, INT_EPS);
+ CPPUNIT_DUMP_ASSERT_DOUBLES_EQUAL(aSliceSize.Width, INT_EPS);
+
+ // Check transformation
+ Reference< beans::XPropertySet > xPropSet(xSlice, UNO_QUERY_THROW);
+ CPPUNIT_ASSERT(xPropSet.is());
+ drawing::HomogenMatrix3 aSliceTransformation;
+ xPropSet->getPropertyValue("Transformation") >>= aSliceTransformation;
+ CPPUNIT_DUMP_ASSERT_TRANSFORMATIONS_EQUAL(aSliceTransformation);
+
+ // Check slice fill style and color
+ drawing::FillStyle aSliceFillStyle;
+ xPropSet->getPropertyValue(UNO_NAME_FILLSTYLE) >>= aSliceFillStyle;
+ CPPUNIT_DUMP_ASSERT_NUMBERS_EQUAL(static_cast<sal_Int32>(aSliceFillStyle));
+ util::Color aSliceFillColor = 0;
+ xPropSet->getPropertyValue(UNO_NAME_FILLCOLOR) >>= aSliceFillColor;
+ CPPUNIT_DUMP_ASSERT_NUMBERS_EQUAL(static_cast<sal_Int32>(aSliceFillColor));
+ }
+ }
+ }
+}
+
+
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/qa/extras/chart2dump/data/donut_chart.ods b/chart2/qa/extras/chart2dump/data/donut_chart.ods
new file mode 100755
index 000000000000..1cd911909e93
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/data/donut_chart.ods
Binary files differ
diff --git a/chart2/qa/extras/chart2dump/data/exploded_pie_chart.ods b/chart2/qa/extras/chart2dump/data/exploded_pie_chart.ods
new file mode 100755
index 000000000000..cb3209edd3a9
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/data/exploded_pie_chart.ods
Binary files differ
diff --git a/chart2/qa/extras/chart2dump/data/normal_pie_chart.ods b/chart2/qa/extras/chart2dump/data/normal_pie_chart.ods
new file mode 100755
index 000000000000..3f412582774e
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/data/normal_pie_chart.ods
Binary files differ
diff --git a/chart2/qa/extras/chart2dump/data/pie_chart_many_slices.ods b/chart2/qa/extras/chart2dump/data/pie_chart_many_slices.ods
new file mode 100755
index 000000000000..2cc2e8b7bb09
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/data/pie_chart_many_slices.ods
Binary files differ
diff --git a/chart2/qa/extras/chart2dump/data/rotated_pie_chart.ods b/chart2/qa/extras/chart2dump/data/rotated_pie_chart.ods
new file mode 100755
index 000000000000..cb8974cbceec
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/data/rotated_pie_chart.ods
Binary files differ
diff --git a/chart2/qa/extras/chart2dump/reference/piecharttest/donut_chart.txt b/chart2/qa/extras/chart2dump/reference/piecharttest/donut_chart.txt
new file mode 100755
index 000000000000..13b95d9a56e4
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/reference/piecharttest/donut_chart.txt
@@ -0,0 +1,194 @@
+// nSeriesCount
+4
+/// Series 0 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,8663,1995,8860,1359/D=0:CS=0:CT=0:Series=0:Point=0
+// aSlicePosition.X
+6088
+// aSlicePosition.Y
+1846
+// aSliceSize.Height
+2118
+// aSliceSize.Width
+4554
+// aSliceTransformation
+4554;0;6088;0;2118;1846;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,4613,6462,4000,6721/D=0:CS=0:CT=0:Series=0:Point=1
+// aSlicePosition.X
+4353
+// aSlicePosition.Y
+2250
+// aSliceSize.Height
+6248
+// aSliceSize.Width
+4304
+// aSliceTransformation
+4304;0;4353;0;6248;2250;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=73,10741,6468,11354,6727/D=0:CS=0:CT=0:Series=0:Point=2
+// aSlicePosition.X
+8909
+// aSlicePosition.Y
+3851
+// aSliceSize.Height
+4688
+// aSliceSize.Width
+2543
+// aSliceTransformation
+2543;0;8909;0;4688;3851;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
+/// Series 1 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=0
+// aSlicePosition.X
+6601
+// aSlicePosition.Y
+2511
+// aSliceSize.Height
+1755
+// aSliceSize.Width
+3448
+// aSliceTransformation
+3448;0;6601;0;1755;2511;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=1
+// aSlicePosition.X
+5018
+// aSlicePosition.Y
+2739
+// aSliceSize.Height
+4690
+// aSliceSize.Width
+1852
+// aSliceTransformation
+1852;0;5018;0;4690;2739;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=1:Point=2
+// aSlicePosition.X
+6270
+// aSlicePosition.Y
+3964
+// aSliceSize.Height
+3868
+// aSliceSize.Width
+4069
+// aSliceTransformation
+4069;0;6270;0;3868;3964;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
+/// Series 2 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=0
+// aSlicePosition.X
+7688
+// aSlicePosition.Y
+3176
+// aSliceSize.Height
+1392
+// aSliceSize.Width
+1769
+// aSliceTransformation
+1769;0;7688;0;1392;3176;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=1
+// aSlicePosition.X
+5683
+// aSlicePosition.Y
+3176
+// aSliceSize.Height
+3971
+// aSliceSize.Width
+2009
+// aSliceTransformation
+2009;0;5683;0;3971;3176;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=2:Point=2
+// aSlicePosition.X
+7393
+// aSlicePosition.Y
+4266
+// aSliceSize.Height
+2901
+// aSliceSize.Width
+2281
+// aSliceTransformation
+2281;0;7393;0;2901;4266;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
+/// Series 3 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=0
+// aSlicePosition.X
+7713
+// aSlicePosition.Y
+3843
+// aSliceSize.Height
+1027
+// aSliceSize.Width
+1151
+// aSliceTransformation
+1151;0;7713;0;1027;3843;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=1
+// aSlicePosition.X
+6348
+// aSlicePosition.Y
+3841
+// aSliceSize.Height
+1934
+// aSliceSize.Width
+1400
+// aSliceTransformation
+1400;0;6348;0;1934;3841;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick/D=0:CS=0:CT=0:Series=3:Point=2
+// aSlicePosition.X
+6493
+// aSlicePosition.Y
+4568
+// aSliceSize.Height
+1934
+// aSliceSize.Width
+2516
+// aSliceTransformation
+2516;0;6493;0;1934;4568;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
diff --git a/chart2/qa/extras/chart2dump/reference/piecharttest/exploded_pie_chart.txt b/chart2/qa/extras/chart2dump/reference/piecharttest/exploded_pie_chart.txt
new file mode 100755
index 000000000000..ab9309f01d6d
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/reference/piecharttest/exploded_pie_chart.txt
@@ -0,0 +1,50 @@
+// nSeriesCount
+4
+/// Series 0 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=35,7610,2955,7541,739/D=0:CS=0:CT=0:Series=0:Point=0
+// aSlicePosition.X
+6018
+// aSlicePosition.Y
+2178
+// aSliceSize.Height
+2218
+// aSliceSize.Width
+3177
+// aSliceTransformation
+3177;0;6018;0;2218;2178;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=13,6027,6651,4375,8130/D=0:CS=0:CT=0:Series=0:Point=1
+// aSlicePosition.X
+5246
+// aSlicePosition.Y
+3867
+// aSliceSize.Height
+3714
+// aSliceSize.Width
+3525
+// aSliceTransformation
+3525;0;5246;0;3714;3867;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,9891,5324,12103,5476/D=0:CS=0:CT=0:Series=0:Point=2
+// aSlicePosition.X
+7679
+// aSlicePosition.Y
+3576
+// aSliceSize.Height
+3387
+// aSliceSize.Width
+2217
+// aSliceTransformation
+2217;0;7679;0;3387;3576;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
diff --git a/chart2/qa/extras/chart2dump/reference/piecharttest/normal_pie_chart.txt b/chart2/qa/extras/chart2dump/reference/piecharttest/normal_pie_chart.txt
new file mode 100755
index 000000000000..ba7f688eb677
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/reference/piecharttest/normal_pie_chart.txt
@@ -0,0 +1,50 @@
+// nSeriesCount
+4
+/// Series 0 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,5295,2852,2911,532/D=0:CS=0:CT=0:Series=0:Point=0
+// aSlicePosition.X
+4353
+// aSlicePosition.Y
+1846
+// aSliceSize.Height
+3416
+// aSliceSize.Width
+3326
+// aSliceTransformation
+3326;0;4353;0;3416;1846;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,7437,8489,7196,11806/D=0:CS=0:CT=0:Series=0:Point=1
+// aSlicePosition.X
+4354
+// aSlicePosition.Y
+5172
+// aSliceSize.Height
+3326
+// aSliceSize.Width
+6601
+// aSliceTransformation
+6601;0;4354;0;3326;5172;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,10224,3031,12770,891/D=0:CS=0:CT=0:Series=0:Point=2
+// aSlicePosition.X
+7678
+// aSlicePosition.Y
+1846
+// aSliceSize.Height
+3896
+// aSliceSize.Width
+3327
+// aSliceTransformation
+3327;0;7678;0;3896;1846;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
diff --git a/chart2/qa/extras/chart2dump/reference/piecharttest/pie_chart_many_slices.txt b/chart2/qa/extras/chart2dump/reference/piecharttest/pie_chart_many_slices.txt
new file mode 100755
index 000000000000..dab8f12323ce
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/reference/piecharttest/pie_chart_many_slices.txt
@@ -0,0 +1,275 @@
+// nSeriesCount
+1
+/// Series 0 slices
+// nSlicesCountInSeries
+18
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,10493,3869,10469,-234/D=0:CS=0:CT=0:Series=0:Point=0
+// aSlicePosition.X
+10469
+// aSlicePosition.Y
+3869
+// aSliceSize.Height
+4104
+// aSliceSize.Width
+49
+// aSliceTransformation
+49;0;10469;0;4104;3869;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=82,10415,3870,10312,-232/D=0:CS=0:CT=0:Series=0:Point=1
+// aSlicePosition.X
+10275
+// aSlicePosition.Y
+505
+// aSliceSize.Height
+4103
+// aSliceSize.Width
+158
+// aSliceTransformation
+158;0;10275;0;4103;505;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,10292,3875,10067,-222/D=0:CS=0:CT=0:Series=0:Point=2
+// aSlicePosition.X
+10224
+// aSlicePosition.Y
+3872
+// aSliceSize.Height
+4101
+// aSliceSize.Width
+294
+// aSliceTransformation
+294;0;10224;0;4101;3872;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,10137,3886,9756,-199/D=0:CS=0:CT=0:Series=0:Point=3
+// aSlicePosition.X
+10050
+// aSlicePosition.Y
+3879
+// aSliceSize.Height
+4094
+// aSliceSize.Width
+468
+// aSliceTransformation
+468;0;10050;0;4094;3879;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+5741852
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,9891,3917,9265,-138/D=0:CS=0:CT=0:Series=0:Point=4
+// aSlicePosition.X
+9734
+// aSlicePosition.Y
+3895
+// aSliceSize.Height
+4078
+// aSliceSize.Width
+784
+// aSliceTransformation
+784;0;9734;0;4078;3895;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+8257569
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,9605,3971,8693,-29/D=0:CS=0:CT=0:Series=0:Point=5
+// aSlicePosition.X
+9478
+// aSlicePosition.Y
+3944
+// aSliceSize.Height
+4029
+// aSliceSize.Width
+1040
+// aSliceTransformation
+1040;0;9478;0;4029;3944;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+8637183
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,9330,4044,8143,116/D=0:CS=0:CT=0:Series=0:Point=6
+// aSlicePosition.X
+9184
+// aSlicePosition.Y
+4002
+// aSliceSize.Height
+3971
+// aSliceSize.Width
+1334
+// aSliceTransformation
+1334;0;9184;0;3971;4002;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+3227652
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,9020,4152,7522,331/D=0:CS=0:CT=0:Series=0:Point=7
+// aSlicePosition.X
+8858
+// aSlicePosition.Y
+4091
+// aSliceSize.Height
+3882
+// aSliceSize.Width
+1660
+// aSliceTransformation
+1660;0;8858;0;3882;4091;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+11456256
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,8680,4303,6842,633/D=0:CS=0:CT=0:Series=0:Point=8
+// aSlicePosition.X
+8506
+// aSlicePosition.Y
+4219
+// aSliceSize.Height
+3754
+// aSliceSize.Width
+2012
+// aSliceTransformation
+2012;0;8506;0;3754;4219;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+4923247
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,8262,4544,6007,1115/D=0:CS=0:CT=0:Series=0:Point=9
+// aSlicePosition.X
+8030
+// aSlicePosition.Y
+4395
+// aSliceSize.Height
+3578
+// aSliceSize.Width
+2488
+// aSliceTransformation
+2488;0;8030;0;3578;4395;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16749838
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,7649,5037,4781,2102/D=0:CS=0:CT=0:Series=0:Point=10
+// aSlicePosition.X
+7311
+// aSlicePosition.Y
+4708
+// aSliceSize.Height
+3265
+// aSliceSize.Width
+3207
+// aSliceTransformation
+3207;0;7311;0;3265;4708;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+12910603
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,6794,6247,3071,4521/D=0:CS=0:CT=0:Series=0:Point=11
+// aSlicePosition.X
+6490
+// aSlicePosition.Y
+5411
+// aSliceSize.Height
+2562
+// aSliceSize.Width
+4028
+// aSliceTransformation
+4028;0;6490;0;2562;5411;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+34001
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,6468,8641,2419,9310/D=0:CS=0:CT=0:Series=0:Point=12
+// aSlicePosition.X
+6414
+// aSlicePosition.Y
+7182
+// aSliceSize.Height
+2834
+// aSliceSize.Width
+4104
+// aSliceTransformation
+4104;0;6414;0;2834;7182;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,8059,11259,5601,14545/D=0:CS=0:CT=0:Series=0:Point=13
+// aSlicePosition.X
+6959
+// aSlicePosition.Y
+7973
+// aSliceSize.Height
+3991
+// aSliceSize.Width
+3559
+// aSliceTransformation
+3559;0;6959;0;3991;7973;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,11725,11895,12932,15817/D=0:CS=0:CT=0:Series=0:Point=14
+// aSlicePosition.X
+9562
+// aSlicePosition.Y
+7973
+// aSliceSize.Height
+4104
+// aSliceSize.Width
+3990
+// aSliceTransformation
+3990;0;9562;0;4104;7973;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,14540,8786,18563,9599/D=0:CS=0:CT=0:Series=0:Point=15
+// aSlicePosition.X
+10518
+// aSlicePosition.Y
+6606
+// aSliceSize.Height
+4129
+// aSliceSize.Width
+4104
+// aSliceTransformation
+4104;0;10518;0;4129;6606;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+5741852
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,13116,4796,15715,1619/D=0:CS=0:CT=0:Series=0:Point=16
+// aSlicePosition.X
+10518
+// aSlicePosition.Y
+3909
+// aSliceSize.Height
+4064
+// aSliceSize.Width
+3869
+// aSliceTransformation
+3869;0;10518;0;4064;3909;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+8257569
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=49,10805,3879,11092,-214/D=0:CS=0:CT=0:Series=0:Point=17
+// aSlicePosition.X
+10658
+// aSlicePosition.Y
+1862
+// aSliceSize.Height
+4104
+// aSliceSize.Width
+573
+// aSliceTransformation
+573;0;10658;0;4104;1862;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+8637183
diff --git a/chart2/qa/extras/chart2dump/reference/piecharttest/rotated_pie_chart.txt b/chart2/qa/extras/chart2dump/reference/piecharttest/rotated_pie_chart.txt
new file mode 100755
index 000000000000..099db995e265
--- /dev/null
+++ b/chart2/qa/extras/chart2dump/reference/piecharttest/rotated_pie_chart.txt
@@ -0,0 +1,50 @@
+// nSeriesCount
+4
+/// Series 0 slices
+// nSlicesCountInSeries
+3
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,11004,5159,14330,5146/D=0:CS=0:CT=0:Series=0:Point=0
+// aSlicePosition.X
+7679
+// aSlicePosition.Y
+2779
+// aSliceSize.Height
+4767
+// aSliceSize.Width
+3326
+// aSliceTransformation
+3326;0;7679;0;4767;2779;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+17798
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,5548,7725,3417,10279/D=0:CS=0:CT=0:Series=0:Point=1
+// aSlicePosition.X
+4353
+// aSlicePosition.Y
+3306
+// aSliceSize.Height
+5192
+// aSliceSize.Width
+5654
+// aSliceTransformation
+5654;0;4353;0;5192;3306;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16728590
+/// CID/MultiClick:DragMethod=PieSegmentDraging:DragParameter=0,7334,1863,6990,-1444/D=0:CS=0:CT=0:Series=0:Point=2
+// aSlicePosition.X
+4925
+// aSlicePosition.Y
+1846
+// aSliceSize.Height
+3326
+// aSliceSize.Width
+5064
+// aSliceTransformation
+5064;0;4925;0;3326;1846;0;0;1
+// static_cast<sal_Int32>(aSliceFillStyle)
+1
+// static_cast<sal_Int32>(aSliceFillColor)
+16765728