I am wondering, is it possible to pack the circles on 3D surface using using VB.net within the specified are on surface ? ( Like curve boundry on surface)
If you ‘Google’ the topic, you should find a lot of information this - perhaps even an algorithm or two. But Rhino does not have a build-in function that will do this…
Another option is to implement the Kangaroo2 library by @DanielPiker. It is quite terrific for packing circles on all sorts of surfaces. You could do this either using Grasshopper or by implementing the KangarooSolver.dll straight in your VB code (at least in theory).