Benchmark wxIMAGE_QUALITY_BOX_AVERAGE too for completeness
Check the speed of wxImage::Scale() using this algorithm too. As expected, it's between normal and high quality when upscaling and exactly the same as high quality when shrinking (because it is actually the algorithm used for shrinking for wxIMAGE_QUALITY_HIGH).
This commit is contained in:
parent
e25b47ee32
commit
4e05ee9c5a
@ -79,6 +79,14 @@ BENCHMARK_FUNC(EnlargeNormal)
|
|||||||
wxIMAGE_QUALITY_NORMAL).IsOk();
|
wxIMAGE_QUALITY_NORMAL).IsOk();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BENCHMARK_FUNC(EnlargeBoxAverage)
|
||||||
|
{
|
||||||
|
const wxImage& image = GetTestImage();
|
||||||
|
const double factor = Bench::GetNumericParameter(150) / 100.;
|
||||||
|
return image.Scale(factor*image.GetWidth(), factor*image.GetHeight(),
|
||||||
|
wxIMAGE_QUALITY_BOX_AVERAGE).IsOk();
|
||||||
|
}
|
||||||
|
|
||||||
BENCHMARK_FUNC(EnlargeHighQuality)
|
BENCHMARK_FUNC(EnlargeHighQuality)
|
||||||
{
|
{
|
||||||
const wxImage& image = GetTestImage();
|
const wxImage& image = GetTestImage();
|
||||||
@ -95,6 +103,14 @@ BENCHMARK_FUNC(ShrinkNormal)
|
|||||||
wxIMAGE_QUALITY_NORMAL).IsOk();
|
wxIMAGE_QUALITY_NORMAL).IsOk();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BENCHMARK_FUNC(ShrinkBoxAverage)
|
||||||
|
{
|
||||||
|
const wxImage& image = GetTestImage();
|
||||||
|
const double factor = Bench::GetNumericParameter(50) / 100.;
|
||||||
|
return image.Scale(factor*image.GetWidth(), factor*image.GetHeight(),
|
||||||
|
wxIMAGE_QUALITY_BOX_AVERAGE).IsOk();
|
||||||
|
}
|
||||||
|
|
||||||
BENCHMARK_FUNC(ShrinkHighQuality)
|
BENCHMARK_FUNC(ShrinkHighQuality)
|
||||||
{
|
{
|
||||||
const wxImage& image = GetTestImage();
|
const wxImage& image = GetTestImage();
|
||||||
|
Loading…
Reference in New Issue
Block a user