0

When I use QField in the field, I sometimes want to replace the line or polygon that is associated with a feature. For example, I have a layer for small ponds, and each feature has a polygon that is the shape of the pond. Sometimes the polygon is just wrong, and I want to walk the boundary of the pond and digitize points and replace the entire polygon of that feature.

I can't figure out how to do that. I can delete the feature and create a new one, but then I have to re-enter all the attributes for that pond. The name and other attributes are all OK, I just want to update the polygon. I can edit the vertices of the existing polygon, but they are all wrong, I want to replace the entire shape, and do that by walking around and digitizing points, not by drawing a shape on the screen.

Is there a way to do that in QField? Thanks.

QGIS 3.30.1 QFIeld 2.8.1

2 Answers 2

0

There is currently no option to replace only the shape of an existing polygon using the tracking function in QField. However I have found a work-around option: Instead of tracking automatically and adding vertex points in a fix predefined interval, you are able to do this manually.

  1. Delete unnecessary vertices

To modify the shape of your polygon, you can delete all the unnecessary vertices (except for 3, to maintain a valid geometry). This can be done with the vertex tool.

  1. Activate positioning

Activate positioning and physically navigate to the starting point of your "manual tacking" (in your case one corner of the pond)

  1. Move existing vertex to current position

Select your polygon layer, open the vertex tool and use the arrows to navigate to the vertex you want to move. Now tap the button 'Fixate the cursor to your current position' enter image description here. The selected vertex is now moved to your current position. Accept the modification with the green tick. Physically walk to the next position where you would like to set a vertex and repeat this process.

  1. Create new vertices

Once you have moved all of the faulty positioned vertices, you can add new vertices along your way by fixating the cursor to your current position anytime you want to set a new vertex point.

This requires a bit more time than automatic tracking would do, but it should do the job of modifying only the shape of your polygon and maintaining the other attributes.

0

Nuenueke's answer of editing the existing geometry is one possible workaround. With that technique I generally delete all the vertices except one, move that one to the start location, and then add vertices.

Another workaround is to add a new feature, and digitize the new shape in that feature. The only attribute you need to enter for this new feature is the name or other identification, so you know what it is. Then, in post processing (in QGIS back at the office), use the Geometry Paster plugin to copy the new geometry to the old feature. Then you can delete the new feature.

The Geometry Paster plugin allows you to copy the geometry (without other attributes) from one feature to another.

This technique works well for me when I am doing my own field work and post processing. When collaborating with others, where one person is doing field work and a different person is doing the post processing, you need to establish clear conventions for how the new feature will be named, and the field work person needs to be careful to enter any attributes in the old feature rather than the new one. If you mix the attributes between new and old features you can sort this out in post processing using manual copy and paste of attributes but it takes more time and there may be confusion about which set of attributes is correct.

This technique requires post processing in QGIS, which is not ideal. But I have found it less cumbersome than modifying the existing geometry in QField. A side benefit is that you can compare the old and new geometries as you digitize in the field.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.