-
-
Notifications
You must be signed in to change notification settings - Fork 101
/
Copy pathpartcad.yaml
338 lines (278 loc) · 10.8 KB
/
partcad.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
# This is a declaration of a PartCAD package.
# See https://partcad.org/ and https://github.com/openvmp/partcad for more information.
desc: Examples of parts defined with build123d
url: https://github.com/gumyr/build123d
partcad: ">=0.5.22"
pythonRequirements:
- ocp_vscode
- build123d>=0.7.1
sketches:
examples/clock:
type: build123d
desc: Clock Face (Builder mode)
examples/clock_algebra:
type: build123d
desc: Clock Face (Algebra mode)
examples/python_logo:
type: build123d
desc: This python module creates the Python logo as a Sketch object
show: PythonLogo(10)
examples/shamrock:
type: build123d
desc: Adds a four leaf clover
parts:
examples/benchy:
type: build123d
desc: STL import and edit example (Builder mode)
cwd: examples
examples/boxes_on_faces:
type: build123d
desc: Demo adding features to multiple faces in one operation (Builder mode)
examples/boxes_on_faces_algebra:
type: build123d
desc: Demo adding features to multiple faces in one operation (Algebra mode)
examples/build123d_customizable_logo:
type: build123d
desc: This example creates the build123d customizable logo (Builder mode)
examples/build123d_customizable_logo_algebra:
type: build123d
desc: This example creates the build123d customizable logo (Algebra mode)
examples/build123d_logo:
type: build123d
desc: This example creates the former build123d logo (Builder mode).
examples/build123d_logo_algebra:
type: build123d
desc: This example creates the former build123d logo (Algebra mode).
# `canadian_flag` can't be a PartCAD part as it doesn't have volume, and it can't be a sketch as it's not plain
# examples/canadian_flag:
# type: build123d
# desc: Canadian Flag Blowing in The Wind (Builder mode)
# examples/canadian_flag_algebra:
# type: build123d
# desc: Canadian Flag Blowing in The Wind (Algebra mode)
examples/circuit_board:
type: build123d
desc: This example demonstrates placing holes around a part (Builder mode)
examples/circuit_board_algebra:
type: build123d
desc: This example demonstrates placing holes around a part (Algebra mode)
examples/custom_sketch_objects:
type: build123d
desc: |
This example demonstrates the creation of a Playing Card storage box with
user generated custom BuildSketch objects. Four new BuildSketch objects are
created: Club, Spade, Heart, and Diamond, which are then used to punch
holes into the top of the box's lid. (Builder mode)
examples/custom_sketch_objects_algebra:
type: build123d
desc: |
This example demonstrates the creation of a Playing Card storage box with
user generated custom BuildSketch objects. Four new BuildSketch objects are
created: Club, Spade, Heart, and Diamond, which are then used to punch
holes into the top of the box's lid. (Algebra mode)
examples/din_rail:
type: build123d
desc: |
This example demonstrates multiple vertex filtering techniques including
a fully custom filter. It also shows how a workplane can be replaced
with another in a different orientation for further work. (Builder mode)
parameters:
rail_length:
type: int
desc: Length of the DIN rail
default: 1000
examples/din_rail_algebra:
type: build123d
desc: |
This example demonstrates multiple vertex filtering techniques including
a fully custom filter. It also shows how a workplane can be replaced
with another in a different orientation for further work. (Algebra mode)
parameters:
rail_length:
type: int
desc: Length of the DIN rail
default: 1000
examples/dual_color_3mf:
type: build123d
desc: |
The 3MF mesh format supports multiple colors which can be used on
multi-filament 3D printers. This example creates an tile pattern
with an insert and background in different colors.
examples/extrude:
type: build123d
desc: |
This example demonstrates multiple uses of Extrude cumulating in
the design of a key cap. (Builder mode)
examples/extrude_algebra:
type: build123d
desc: |
This example demonstrates multiple uses of Extrude cumulating in
the design of a key cap. (Algebra mode)
examples/handle:
type: build123d
desc: |
This example demonstrates multisection sweep creating a drawer handle (Builder mode)
examples/handle_algebra:
type: build123d
desc: |
This example demonstrates multisection sweep creating a drawer handle (Algebra mode)
examples/heat_exchanger:
type: build123d
desc: |
This example creates a model of a parametric heat exchanger core (Builder mode)
examples/heat_exchanger_algebra:
type: build123d
desc: |
This example creates a model of a parametric heat exchanger core (Algebra mode)
examples/holes:
type: build123d
desc: This example demonstrates multiple hole types (Builder mode)
examples/holes_algebra:
type: build123d
desc: This example demonstrates multiple hole types (Algebra mode)
examples/intersecting_chamfers:
type: build123d
desc: Intersecting chamfers (Builder mode)
examples/intersecting_chamfers_algebra:
type: build123d
desc: Intersecting chamfers (Algebra mode)
examples/intersecting_pipes:
type: build123d
desc: |
This example demonstrates working on multiple planes created from object
faces and using a Select.LAST selector to return edges to be filleted.
examples/joints:
type: build123d
desc: Experimental Joint development file (Builder mode)
examples/joints_algebra:
type: build123d
desc: Experimental Joint development file (Algebra mode)
examples/key_cap:
type: build123d
url: https://www.cherrymx.de/en/dev.html
desc: |
This example demonstrates the design of a Cherry MX key cap by using
extrude with a taper and extrude until next (Builder mode)
examples/key_cap_algebra:
type: build123d
url: https://www.cherrymx.de/en/dev.html
desc: |
This example demonstrates the design of a Cherry MX key cap by using
extrude with a taper and extrude until next (Algebra mode)
examples/lego:
type: build123d
cwd: docs
desc: |
This example creates a model of a double wide lego block with a
parametric length (pip_count) (Builder mode)
examples/lego_algebra:
type: build123d
cwd: docs
desc: |
This example creates a model of a double wide lego block with a
parametric length (pip_count) (Algebra mode)
examples/loft:
type: build123d
desc: |
This example demonstrates lofting a set of sketches, selecting
the top and bottom by type, and shelling (Builder mode)
examples/loft_algebra:
type: build123d
desc: |
This example demonstrates lofting a set of sketches, selecting
the top and bottom by type, and shelling (Algebra mode)
examples/maker_coin:
type: build123d
desc: |
This example creates the maker coin as defined by Angus on the Maker's Muse
YouTube channel
examples/mixed_algebra_context:
type: build123d
desc: Mix content and algebra api
examples/multiple_workplanes:
type: build123d
desc: Multiple workplanes (Builder mode)
examples/multiple_workplanes_algebra:
type: build123d
desc: Multiple workplanes (Algebra mode)
examples/packed_boxes:
type: build123d
desc: Demo packing a bunch of boxes in 2D
cwd: examples
patch:
"\\Z": "\\nshow_object(packed)"
# "\\Z": "\\nshow_object(test_boxes)"
examples/pegboard_j_hook:
type: build123d
desc: |
This example creates a model of j-shaped pegboard hook commonly used
for organization of tools in garages (Builder mode)
examples/pegboard_j_hook_algebra:
type: build123d
desc: |
This example creates a model of j-shaped pegboard hook commonly used
for organization of tools in garages (Algebra mode)
examples/pillow_block:
type: build123d
desc: This example demonstrates placing holes in a part in a rectangular array (Builder mode)
examples/pillow_block_algebra:
type: build123d
desc: This example demonstrates placing holes in a part in a rectangular array (Algebra mode)
examples/platonic_solids:
type: build123d
desc: This example creates a custom Part object PlatonicSolid
examples/playing_cards:
type: build123d
desc: |
This example demonstrates user generated custom BuildSketch objects.
The script defines five classes: Club, Spade, Heart, Diamond, and PlayingCard
in addition to a two part playing card box which has suit cutouts in the
lid.
examples/projection:
type: build123d
desc: Projection examples (Builder mode)
examples/projection_algebra:
type: build123d
desc: Projection examples (Algebra mode)
# `roller_coaster` can't be a PartCAD part as it doesn't have volume, and it can't be a sketch as it's not plain
# examples/roller_coaster:
# type: build123d
# desc: |
# This example demonstrates building complex 3D lines by "snapping"
# features to existing objects (Builder mode)
# examples/roller_coaster_algebra:
# type: build123d
# desc: |
# This example demonstrates building complex 3D lines by "snapping"
# features to existing objects (Algebra mode)
examples/stud_wall:
type: build123d
desc: |
This example builds stud walls from dimensional lumber as an assembly
with the parts positioned with RigidJoints
examples/tea_cup:
type: build123d
desc: |
This example demonstrates the creation a tea cup, which serves as an example of
constructing complex, non-flat geometrical shapes programmatically (Builder mode)
examples/tea_cup_algebra:
type: build123d
desc: |
This example demonstrates the creation a tea cup, which serves as an example of
constructing complex, non-flat geometrical shapes programmatically (Algebra mode)
examples/vase:
type: build123d
desc: |
This example demonstrates the build123d techniques involving the creation of a vase.
Specifically, it showcases the processes of revolving a sketch, shelling
(creating a hollow object by removing material from its interior), and
selecting edges by position range and type for the application of fillets
(rounding off the edges). (Builder mode)
examples/vase_algebra:
type: build123d
desc: |
This example demonstrates the build123d techniques involving the creation of a vase.
Specifically, it showcases the processes of revolving a sketch, shelling
(creating a hollow object by removing material from its interior), and
selecting edges by position range and type for the application of fillets
(rounding off the edges). (Algebra mode)