This is an explanation of the input file for the SelfAssembly Source Code. This file format is an extension of the wavefronts .obj, and can often be loaded for visualization using a obj importer, e.g. by Blender.

#An anchor point
a -0.01807947704241955 -0.01702368225515613 0.24 

#A vertex
v 0.06527471380796886 0.02266439858167367 0.006667571549708001

#A block. Starts with a line g <name>. If <name> contains the substring “fix”, the block is fixed respectively part of the support. If it contains the substring “dis” the block is disabled.
g block_0

#The hook resp. point of chain attachment to the block. The first 3 numbers are the coordinates. The forth is the index of the face that is closest to the hook position, and the fifth is the index of the triangle of that face which is closest to the hook position.
h 0.08621257684109961 0.01756447406330613 0.02149516001029081 5 0

#A face (polygon) in block_0 defined by vertex indices As in .obj, the vertex indices start at 1, not 0.
f 2 1 5 6

Additionally a second file is needed which encodes a list of pair of blocks that are in contact,  respectively a interface:

#interface between block 0 and block 40
i 0 40

The parameters are stored in a human editable .txt file. The parameters are documented in the source code src/AnalyzerParameter.h