A method of designing an electric circuit includes generating a part of
the design, determining a virtual shape based on the part, and using the
virtual shape to generate a design for an additional part. Design
elements of the additional part, such as its size, location, or
orientation for example, may be determined with the virtual shape. The
method may also generate multiple virtual shapes based on the part, and
may use one or more of the multiple virtual shapes to generate the next
part. The method may be repeated to generate additional parts of the
design using virtual shapes.