I am trying to find a way to export unique points from a pointlayer in QGIS. Using the tool ‘Extract vertices’, I generated corner points from polygons in the input layer (first image). I now only need one point per polygon to remain in the pointlayer. The ‘Extract vertices’ tool conveniently generates a column in the attribute table containing the vertex_part_ring value, portraying from what vertex the point is originated from (second image). I am looking for a way to (automatically) export one point from a shared vertex_part_ring series.

Below is the polygon the points are originated from. (Sample project)

Origin polygon

Below is a screen capture of the attribute table as a result of the extract vertices tool. The column ‘vertex_part_ring’ gives the origin of the point. I need to keep only one point from each origin series.

Extract vertices result

  • 1
    One point per polygon, or one point per ring?
    – Erik
    Apr 13, 2021 at 9:19
  • It's not clear if the points even need to be on the ring boundaries. If not, it would probably be easier to polygonize them then make centroids.
    – Gabriel
    Apr 13, 2021 at 12:53
  • @Erik I would like to keep one point per ring
    – Jonathan
    Apr 13, 2021 at 13:59
  • 1
    @GabrielC. I need to keep one point per ring boundary.
    – Jonathan
    Apr 13, 2021 at 14:01
  • Is your input polygon layer singlepart or multipart?
    – Stu Smith
    Apr 13, 2021 at 14:54

1 Answer 1


You could use the Extract by expression tool on your vertex layer with the following expression:

"vertex_part_index" = 1 AND "vertex_part_ring" <> 0

This will extract all rings' first vertex except for the main polygon perimeter.

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.