I have been trying for 2 days to join points representing addresses (in Paris region) to the closest polygon (parcel of land).
The problems:
- The parcels of land are contiguous, sometimes a point related to the next parcel could actually be closer to the next parcel's centerpoint/vertice midpoint than to its own
- There are sometimes several points (addresses) by land parcel
- Some points are located quite close to the vertice of "their" parcel, sometimes further away (depending also on the street width) so it is difficult to use a buffer strategy (plus the buffers would overlap over each other since land parcels are adjacent)
- I tried
"NNJoin"
but it doesn't move forward at all (I have a large database) and I am not sure how to specifiy how many points I want to select - I tried
"Join attributes by nearest"
but some dots are equally distant to the polygon and then all included, which is ok but the distance problem means it sometimes include some dots it shouldn't include - I tried a space matrix with vertices extracted from the polygons, but it froze...
- My guess is that ideally, I should establish a kind of perpendicular projection of the parcels on the street side only, that would stop at the median line of the street. This way I would be sure not to include the points of adjacent parcels or parcels on the other side of the street. But I have no idea if and how to do this... Otherwise, my less ideal solution would be to use
"Join attributes by nearest"
, specify 3 or 4 as maximum possible addresses and a maximum distance of 1 or 2 m, and hope to get the majority of points without too many of the neighbouring points. Not so great as you see...
Below is a screenshot + what I envision with the median line of the streets and the perpendicular projection.
Now I have tried to use Voronoi (the SAGA one the other ones seem to take a lot of time) around the Pole of Inaccessibility of the land parcels, but the result is a kind of disaster.
I think I am onto something though, @Bruce Xiaolong Liu is already developing a plugin for Voronoi for polygons: Calculating Voronoi Diagrams for polygons I didn't manage to install it, but maybe I can find some workaround to achieve something a bit similar. I first thought about applying Voronoi to extracted vertices from the polygons, then combining each polygon from the same parcel into one larger polygon, but it seems a bit complicated. I will see if I find something else.
Another idea: replacing the polygons with points, then using the simple region growing tool by SAGA. But I am not an advanced user and unsure how to do it.