I have a specific application to create a large scale PCB(3' x 2'). The machine and software are going to route traces for LED's and few other connectors on the board. The requirement is to either a) using system fonts, create a template for the letters for the sign as a reference or b) import a graphic as a reference for the LED layout. Then, place the "LED's" wherever the client wants to place them for his purposes. There needs to be one basic 20 pin header connector that is routed to each letter(string of LED's).
I already have a software written in RB to control 4 steppers, you tell it positions and the driver sends the motors to the positions. I was thinking a about a design to route traces in a similar program, so that the LED's could be dragged around and placed, with manual routing back to the connectors. The art for the LED's is doable, and their own coordinates could be used for tracing the pads. The traces between LED's could start out as lines, but I am stuck at how to create coordinates on either side of the lines(traces) so that a PCB trace could be generated with variable trace widths set by the user. I thought by some small chance there is something in existance to borrow from to see how to generte coordinates on either side of a line.
The other option considered is importing the graphic as a bitmap into Eagle, exporting Gcode to run it on Mach3, which is the standard practice. Eagle and Mach3 are intimidating to the non-cnc customer who is buying the machine and software, so I wanted to see if I could build one app that is proprietary to his needs that could be simple to use. Is this even slightly possible? I know VB can be ported, so this is the closest forum to RB.
So what you want is a program that takes a shape and does a rules based layout of LED's to form an LED "sign"? It needs to have auto-route of traces built in and then a form of PCB routing? Not sure how much time you have but this does not sound trivial. It's a long ways from having a piece of software that moves a motor a given number of steps to a position, to a functional CNC PCB router.
It might be better to try and integrate the proper packages but honestly there is still the challenge of shielding the user from doing PCB parts placement and running the auto-router.