def test_transform(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)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationTranslateItem('', 100, 200)), Qgis.AnnotationItemEditOperationResult.Success) self.assertEqual(item.geometry().asWkt(), 'LineString (112 213, 114 213, 114 215)')
def test_apply_delete_node_edit(self): item = QgsAnnotationLineItem( QgsLineString([ QgsPoint(12, 13), QgsPoint(14, 13), QgsPoint(14, 15), QgsPoint(16, 17) ])) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 14 13, 14 15, 16 17)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationDeleteNode( '', QgsVertexId(0, 0, 1), QgsPoint(14, 13))), Qgis.AnnotationItemEditOperationResult.Success) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 14 15, 16 17)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationDeleteNode( '', QgsVertexId(0, 0, 0), QgsPoint(12, 13))), Qgis.AnnotationItemEditOperationResult.Success) self.assertEqual(item.geometry().asWkt(), 'LineString (14 15, 16 17)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationDeleteNode( '', QgsVertexId(0, 0, 3), QgsPoint(14, 15))), Qgis.AnnotationItemEditOperationResult.Invalid) self.assertEqual(item.geometry().asWkt(), 'LineString (14 15, 16 17)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationDeleteNode( '', QgsVertexId(0, 0, 1), QgsPoint(16, 17))), Qgis.AnnotationItemEditOperationResult.ItemCleared) self.assertEqual(item.geometry().asWkt(), 'LineString EMPTY')
def test_apply_move_node_edit(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)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationMoveNode('', QgsVertexId(0, 0, 1), QgsPoint(14, 13), QgsPoint(17, 18))), Qgis.AnnotationItemEditOperationResult.Success) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 17 18, 14 15)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationMoveNode('', QgsVertexId(0, 0, 2), QgsPoint(14, 15), QgsPoint(19, 20))), Qgis.AnnotationItemEditOperationResult.Success) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 17 18, 19 20)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationMoveNode('', QgsVertexId(0, 0, 3), QgsPoint(14, 15), QgsPoint(19, 20))), Qgis.AnnotationItemEditOperationResult.Invalid) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 17 18, 19 20)')
def test_apply_add_node_edit(self): item = QgsAnnotationLineItem( QgsLineString([ QgsPoint(12, 13), QgsPoint(14, 13), QgsPoint(14, 15), QgsPoint(16, 17) ])) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 14 13, 14 15, 16 17)') self.assertEqual( item.applyEdit( QgsAnnotationItemEditOperationAddNode('', QgsPoint(15, 16))), Qgis.AnnotationItemEditOperationResult.Success) self.assertEqual(item.geometry().asWkt(), 'LineString (12 13, 14 13, 14 15, 15 16, 16 17)')