Пример #1
0
    def testBasic(self):
        item = QgsAnnotationLineItem(
            QgsLineString(
                [QgsPoint(12, 13),
                 QgsPoint(14, 13),
                 QgsPoint(14, 15)]))

        self.assertEqual(item.geometry().asWkt(),
                         'LineString (12 13, 14 13, 14 15)')

        item.setGeometry(
            QgsLineString(
                [QgsPoint(22, 23),
                 QgsPoint(24, 23),
                 QgsPoint(24, 25)]))
        item.setZIndex(11)
        self.assertEqual(item.geometry().asWkt(),
                         'LineString (22 23, 24 23, 24 25)')
        self.assertEqual(item.zIndex(), 11)

        item.setSymbol(
            QgsLineSymbol.createSimple({
                'color': '#ffff00',
                'line_width': '3'
            }))
        self.assertEqual(item.symbol()[0].color(), QColor(255, 255, 0))
Пример #2
0
    def testReadWriteXml(self):
        doc = QDomDocument("testdoc")
        elem = doc.createElement('test')

        item = QgsAnnotationLineItem(
            QgsLineString(
                [QgsPoint(12, 13),
                 QgsPoint(14, 13),
                 QgsPoint(14, 15)]))
        item.setSymbol(
            QgsLineSymbol.createSimple({
                'color': '#ffff00',
                'line_width': '3'
            }))
        item.setZIndex(11)
        item.setUseSymbologyReferenceScale(True)
        item.setSymbologyReferenceScale(5000)

        self.assertTrue(item.writeXml(elem, doc, QgsReadWriteContext()))

        s2 = QgsAnnotationLineItem.create()
        self.assertTrue(s2.readXml(elem, QgsReadWriteContext()))

        self.assertEqual(s2.geometry().asWkt(),
                         'LineString (12 13, 14 13, 14 15)')
        self.assertEqual(s2.symbol()[0].color(), QColor(255, 255, 0))
        self.assertEqual(s2.zIndex(), 11)
        self.assertTrue(s2.useSymbologyReferenceScale())
        self.assertEqual(s2.symbologyReferenceScale(), 5000)
Пример #3
0
    def testClone(self):
        item = QgsAnnotationLineItem(
            QgsLineString(
                [QgsPoint(12, 13),
                 QgsPoint(14, 13),
                 QgsPoint(14, 15)]))
        item.setSymbol(
            QgsLineSymbol.createSimple({
                'color': '#ffff00',
                'line_width': '3'
            }))
        item.setZIndex(11)
        item.setUseSymbologyReferenceScale(True)
        item.setSymbologyReferenceScale(5000)

        item2 = item.clone()
        self.assertEqual(item2.geometry().asWkt(),
                         'LineString (12 13, 14 13, 14 15)')
        self.assertEqual(item2.symbol()[0].color(), QColor(255, 255, 0))
        self.assertEqual(item2.zIndex(), 11)
        self.assertTrue(item2.useSymbologyReferenceScale())
        self.assertEqual(item2.symbologyReferenceScale(), 5000)