示例#1
0
    def testScaleSafe(self):
        """ test scaleSafe method """

        view = QgsLayoutView()
        view.fitInView(QRectF(0, 0, 10, 10))
        scale = view.transform().m11()
        view.scaleSafe(2)
        self.assertAlmostEqual(view.transform().m11(), 2)
        view.scaleSafe(4)
        self.assertAlmostEqual(view.transform().m11(), 8)

        # try to zoom in heaps
        view.scaleSafe(99999999)
        # assume we have hit the limit
        scale = view.transform().m11()
        view.scaleSafe(2)
        self.assertAlmostEqual(view.transform().m11(), scale)

        view.setTransform(QTransform.fromScale(1, 1))
        self.assertAlmostEqual(view.transform().m11(), 1)
        # test zooming out
        view.scaleSafe(0.5)
        self.assertAlmostEqual(view.transform().m11(), 0.5)
        view.scaleSafe(0.1)
        self.assertAlmostEqual(view.transform().m11(), 0.05)

        # try zooming out heaps
        view.scaleSafe(0.000000001)
        # assume we have hit the limit
        scale = view.transform().m11()
        view.scaleSafe(0.5)
        self.assertAlmostEqual(view.transform().m11(), scale)
示例#2
0
    def testScaleSafe(self):
        """ test scaleSafe method """

        view = QgsLayoutView()
        view.fitInView(QRectF(0, 0, 10, 10))
        scale = view.transform().m11()
        view.scaleSafe(2)
        self.assertAlmostEqual(view.transform().m11(), 2)
        view.scaleSafe(4)
        self.assertAlmostEqual(view.transform().m11(), 8)

        # try to zoom in heaps
        view.scaleSafe(99999999)
        # assume we have hit the limit
        scale = view.transform().m11()
        view.scaleSafe(2)
        self.assertAlmostEqual(view.transform().m11(), scale)

        view.setTransform(QTransform.fromScale(1, 1))
        self.assertAlmostEqual(view.transform().m11(), 1)
        # test zooming out
        view.scaleSafe(0.5)
        self.assertAlmostEqual(view.transform().m11(), 0.5)
        view.scaleSafe(0.1)
        self.assertAlmostEqual(view.transform().m11(), 0.05)

        # try zooming out heaps
        view.scaleSafe(0.000000001)
        # assume we have hit the limit
        scale = view.transform().m11()
        view.scaleSafe(0.5)
        self.assertAlmostEqual(view.transform().m11(), scale)
示例#3
0
 def testLayoutScalePixels(self):
     p = QgsProject()
     l = QgsLayout(p)
     l.setUnits(QgsUnitTypes.LayoutPixels)
     view = QgsLayoutView()
     view.setCurrentLayout(l)
     view.setZoomLevel(1)
     # should be no transform, since 100% with pixel units should be pixel-pixel
     self.assertEqual(view.transform().m11(), 1)
     view.setZoomLevel(0.5)
     self.assertEqual(view.transform().m11(), 0.5)
示例#4
0
 def testLayoutScalePixels(self):
     p = QgsProject()
     l = QgsLayout(p)
     l.setUnits(QgsUnitTypes.LayoutPixels)
     view = QgsLayoutView()
     view.setCurrentLayout(l)
     view.setZoomLevel(1)
     # should be no transform, since 100% with pixel units should be pixel-pixel
     self.assertEqual(view.transform().m11(), 1)
     view.setZoomLevel(0.5)
     self.assertEqual(view.transform().m11(), 0.5)