This paper presents a procedure for modelling aggregates such as piles that consist of arbitrary components. The method generates an aggregate of components that need to be accumulated, and an aggregate shape represents the surface of the target aggregate. The number of components and their positions and orientations are controlled by five parameters. The components, the aggregate shape and the parameters are the inputs for the method which involves placement and refinement steps. In the placement step, the orientation and initial position of a component are determined by a non-periodic placement such that each component overlaps its neighbours. In the refinement step, to construct a pile structure, the position of each component is adjusted by reducing the overlap.