I am looking for a way to join objects based on the proximity of their origins/geometry, if such a thing is even possible.
What I want to do is join each of the cones to the sphere that is directly behind it. If necessary I could have the origins of both of them overlapping. I need to do this because the spheres have a specific name and the cones are all imported as a single part that is then separated. When I do this, the number associated to each part changes randomly each time so I can't use it to batch rename the objects as far as I know. I am currently joining them manually and deleting the spheres to transfer their names to the cones but I was wondering if there's a way to automate this
My initial attempt was using a geometry node setup on the sphere to changes its mesh into that of the cones (while all the cones are still a single object) and then using an intersect boolean with the cube that overlaps it so that only the cone in front of it is left. However this won't actually work for what I want because the geometry is much, much heavier that the simple cones in the example and there is a lot more of them, so the computer can't really keep up. So I think the cones need to be separated first.
TL;DR Is there a way to merge objects based on how close their origins are or if their geometry overlaps? e.g. Selected sphere is merged with all objects whose origin is in X=0 and Z=0 but not any others.
Alternatively, a way to copy the geometry of the cones to a sphere, while they are still a single object, but only copying the geometry of the cone that is within a boundary, like the associated cube.