Hi, I have developed CAD software before, what you describe requires an implementation of the Bin Packing Algorithm. That would find the best possible layout for optimal material utilization without overlapping.
I would like to know if the input would be in CAD format, vector based or just simple images. Also, are the shapes regular or irregular? Regardless, the program would display the resulting layout in a graphical way as well as all the numeric data, stats, percentages resulting from the algorithm.
The program would be developed using C++ or C#, depending on requirements. Let me know if you are interested in my solution!