1. A computer-aided design apparatus for the design of three-dimensional objects to be fabricated, the apparatus comprising: at least one processor and a non-transitory computer usable medium having computer program instructions embodied therein, the computer readable program instructions executable by the processor so as to provide: a base generator operable to generate a topology for a design of a three-dimensional object by generating a plurality of different generations of bases, wherein each generation of bases comprises a plurality of bases and each base comprises a local coordinate system, and wherein the bases in the second and any subsequent generation are arranged in a plurality of groups such that each respective group is located in the local coordinate system of a different base in a preceding generation; and a data generator operable to generate and store base data defining bases generated by the base generator and connection data defining, for each base, at least one adjacent base in the same group, a base in the consecutive preceding group of the same generation, and a base in the consecutive following group of the same generation.