1SIMARRANGE(1) General Commands Manual SIMARRANGE(1)
2
3
4
6 simarrange - STL 2D plate packer with collision simulation
7
9 simarrange [-x WIDTH] [-y HEIGHT] [-c] [-m] [-s SPACING] [-r ROTSTEP]
10 [-p POSSTEP] [-n PATH+N] [-o OUTDIR] [-d] [-j THREADS] [-q]
11
13 Simarrange is a program that simulates collisions between STL meshes in
14 2D in order to generate tightly packed sets of parts. It takes a
15 directory of STL files as input and outputs STL files with combined
16 plates of parts. The parts are assumed to be in the correct printable
17 orientation already.
18
20 -x --width
21 x dimension of build plate in mm, default 200, must be a positive
22 integer
23
24 -y --height
25 y dimension of build plate in mm, default 200, must be a positive
26 integer
27
28 -c --circle
29 build plate is circular, with diameter given by -x
30
31 -m --middle
32 place first part in the middle of the plate, and pack around it
33 (slower)
34
35 -s --spacing
36 minimal spacing between parts, in mm, default 1, must be a posi‐
37 tive integer
38
39 -r --rotstep
40 rotational granularity of search space in degrees, default 10
41 (reduce for tighter, slower packing)
42
43 -p --posstep
44 positional granularity of search space in mm, default 5 (reduce
45 for tighter, slower packing)
46
47 -n --repeat PATH+N
48 add N copies of the file at PATH (or if path is a directory, of
49 the files in that directory) to the plate job
50
51 -o --outputdir
52 output directory, default "."
53
54 -d --dryrun
55 only do a dry run, computing placement but not producing any out‐
56 put file
57
58 -j --threads
59 how many threads to use. Default is as many as possible, set to 1
60 for single-threaded operation
61
62 -q --quiet
63 output as little noise as possible on stdout
64
65 -l --limit
66 stop after this many plates are filled
67
69 simarrange -x 200 -y 150 -o output input
70 Convert all files from the directory "input" into plates of size
71 200x150mm and save to directory "output", creating it if necessary
72
73 simarrange -x 179 -c input
74 Convert all files from the directory "input" into circular plates
75 of 170mm diameter and save to directory "output", creating it if
76 necessary
77
78 simarrange -s 10 input
79 Convert all files from the directory "input" into plates of size
80 200x200mm with 10mm spacing between parts
81
82 simarrange -m input
83 Convert all files from the directory "input" into plates of size
84 200x200mm, packing from the middle
85
86 simarrange -n input+10 -n input2+10
87 Convert all files from the directories "input" and "input2" into
88 plates of size 200x200mm, with 10 copies of each object
89
90 simarrange -x60 -y60 -s3 blah -p 2
91 Convert all files from the directory "blah" into plates of size
92 60x60mm with 3mm spacing between parts and 2mm search grid
93
94 simarrange file1.stl file1.stl file2.stl file2.stl file2.stl file2.stl
95 Place two copies of file1.stl and four copies of file2.stl into
96 plates of size 200x200mm
97
98 simarrange input file1.stl file1.stl file2.stl file2.stl file2.stl
99 file2.stl
100 Place all STL files in the directory "input" as well as two copies
101 of file1.stl and four copies of file2.stl into plates of size
102 200x200mm
103
105 Copyright (c) 2013 Kliment Yanev
106
107 Simarrange is free software: you can redistribute it and/or modify it
108 under the terms of the GNU Affero General Public License as published
109 by the Free Software Foundation, either version 3 of the License, or
110 (at your option) any later version.
111
112 This program is distributed in the hope that it will be useful, but
113 WITHOUT ANY WARRANTY; without even the implied warranty of MER‐
114 CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
115 General Public License for more details.
116
117 You should have received a copy of the GNU Affero General Public
118 License along with this program. If not, see
119 <http://www.gnu.org/licenses/>.
120
121
122
123User Commands 19/10/2013 SIMARRANGE(1)