apsora commited on
Commit
5b1ae6a
·
verified ·
1 Parent(s): b7c755d

Upload guidelines_final.json

Browse files
Files changed (1) hide show
  1. guidelines_final.json +930 -0
guidelines_final.json ADDED
@@ -0,0 +1,930 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "guideline_id": "D001",
3
+ "category": "DFM",
4
+ "topic": "Wall Thickness",
5
+
6
+ "evaluation_criteria": [
7
+ "Verify nominal wall thickness follows recommended range for process (injection molding: 1.0–3.0 mm; die casting: 2.0–4.0 mm; machining: ≥1.0 mm).",
8
+ "Verify thickness transitions do not exceed a 30–50% sudden change to avoid sink/warp.",
9
+ "Verify ribs and bosses follow wall-thickness ratio rules (ribs ≤ 0.6 × nominal wall).",
10
+ "Verify uniformity across adjacent regions (variation ≤ ±10%).",
11
+ "Verify long unsupported walls meet stiffness requirement given thickness and height."
12
+ ],
13
+
14
+ "user_questions": [
15
+ "What is the process for this part? (injection_molding, die_casting, machining)",
16
+ "What is the nominal wall thickness in the primary regions (mm)?",
17
+ "What is the maximum wall-thickness variation between adjacent areas (mm)?",
18
+ "What is the rib or boss thickness relative to the nominal wall (mm)?",
19
+ "What is the maximum unsupported wall height (mm)?"
20
+ ],
21
+
22
+ "expected_answers": [
23
+ "Injection molding requires 1.0–3.0 mm; die casting 2.0–4.0 mm; machining ≥1.0 mm.",
24
+ "Nominal wall thickness must be within the allowed range for the chosen process.",
25
+ "Thickness variation must be ≤ ±10% of nominal wall thickness.",
26
+ "Rib/boss thickness must be ≤ 0.6 × nominal wall thickness.",
27
+ "Unsupported wall must satisfy stiffness rule: thickness ≥ (height / 20)."
28
+ ],
29
+
30
+ "pass_fail_logic": {
31
+ "process_wall_range_check": "FAIL if nominal_wall not within allowed_range_for_process.",
32
+ "thickness_uniformity_check": "FAIL if variation > (0.1 × nominal_wall).",
33
+ "rib_boss_ratio_check": "FAIL if rib_or_boss_thickness > (0.6 × nominal_wall).",
34
+ "transition_change_check": "FAIL if sudden_thickness_change > 0.5 × nominal_wall.",
35
+ "stiffness_check": "FAIL if nominal_wall < (unsupported_height / 20)."
36
+ },
37
+
38
+ "image_features_needed": [
39
+ "Extract wall regions and compute thickness.",
40
+ "Identify ribs and bosses and measure relative thickness.",
41
+ "Detect wall transitions between adjacent surfaces.",
42
+ "Segment unsupported wall spans and measure height/length.",
43
+ "Detect process-related geometry (ejection features signify molding)."
44
+ ]
45
+ }
46
+
47
+ {
48
+ "guideline_id": "D002",
49
+ "category": "DFM",
50
+ "topic": "Draft Angle",
51
+
52
+ "evaluation_criteria": [
53
+ "Verify minimum draft angle meets process requirements (injection molding: interior ≥1°, exterior ≥0.5°; die casting: ≥2°; sheet metal: ≥0° unless formed).",
54
+ "Verify deep features (depth/thickness > 4×) include additional draft (add +0.5° to +1°).",
55
+ "Verify textured surfaces include texture-compensation draft (add +1° per 0.025 mm texture depth).",
56
+ "Verify no negative draft exists unless explicitly required, as it indicates an undercut.",
57
+ "Verify draft direction aligns consistently with the parting line."
58
+ ],
59
+
60
+ "user_questions": [
61
+ "What manufacturing process is used? (injection_molding, die_casting, sheet_metal, machining)",
62
+ "What is the measured draft angle on the primary vertical interior walls (°)?",
63
+ "What is the measured draft angle on exterior vertical walls (°)?",
64
+ "What is the depth of the feature with the smallest draft angle (mm)?",
65
+ "Is the surface textured? If yes, provide texture depth (mm)."
66
+ ],
67
+
68
+ "expected_answers": [
69
+ "Injection molding requires: interior ≥1°, exterior ≥0.5°; die casting requires ≥2°; sheet metal requires ≥0° unless formed.",
70
+ "Interior draft must meet or exceed the required minimum for the chosen process.",
71
+ "Exterior draft must meet or exceed the required minimum for the chosen process.",
72
+ "Deep features must add +0.5° to +1° of draft when depth/thickness > 4×.",
73
+ "Textured surfaces must add +1° of draft per 0.025 mm texture depth."
74
+ ],
75
+
76
+ "pass_fail_logic": {
77
+ "interior_draft_check": "FAIL if process='injection_molding' AND interior_draft < 1.0.",
78
+ "exterior_draft_check": "FAIL if process='injection_molding' AND exterior_draft < 0.5.",
79
+ "die_cast_draft_check": "FAIL if process='die_casting' AND (interior_draft < 2.0 OR exterior_draft < 2.0).",
80
+ "deep_feature_check": "FAIL if (feature_depth/nominal_wall > 4) AND draft < (base_required_draft + 0.5).",
81
+ "texture_compensation_check": "FAIL if draft < (base_required_draft + texture_depth/0.025)."
82
+ },
83
+
84
+ "image_features_needed": [
85
+ "Detect vertical faces aligned with pull direction.",
86
+ "Compute draft angle relative to parting line.",
87
+ "Identify interior vs exterior surfaces.",
88
+ "Measure feature depth vs thickness to detect deep cores.",
89
+ "Detect textured regions and estimate texture depth if visible."
90
+ ]
91
+ }
92
+
93
+ {
94
+ "guideline_id": "D003",
95
+ "category": "DFM",
96
+ "topic": "Fillet Radius",
97
+
98
+ "evaluation_criteria": [
99
+ "Verify internal fillets meet minimum radius requirements for process (injection molding ≥ 0.5 × wall thickness; die casting ≥ 1.0 mm; machining ≥ tool radius).",
100
+ "Verify external fillets follow recommended minimum (≥ 0.25 × wall thickness).",
101
+ "Verify no sharp internal corners exist (sharp corners cause stress concentration and flow hesitation).",
102
+ "Verify intersecting rib/fillet blends follow recommended geometry (rib-root fillet ≥ 0.25 × rib thickness).",
103
+ "Verify fillet transitions are smooth and do not violate mold release or tool path constraints."
104
+ ],
105
+
106
+ "user_questions": [
107
+ "What is the manufacturing process? (injection_molding, die_casting, machining)",
108
+ "What is the wall thickness near the fillet location (mm)?",
109
+ "What is the internal fillet radius (mm)?",
110
+ "What is the external fillet radius (mm)?",
111
+ "What is the fillet radius at rib roots (mm)?"
112
+ ],
113
+
114
+ "expected_answers": [
115
+ "Injection molding internal fillet radius must be ≥ 0.5 × wall thickness.",
116
+ "External fillet radius must be ≥ 0.25 × wall thickness.",
117
+ "Machining fillet radius must be ≥ 1× tool radius used for internal corners.",
118
+ "Die casting fillet radius must be ≥ 1.0 mm for all internal corners.",
119
+ "Rib-root fillet radius must be ≥ 0.25 × rib thickness."
120
+ ],
121
+
122
+ "pass_fail_logic": {
123
+ "internal_fillet_check": "FAIL if process='injection_molding' AND internal_radius < (0.5 × wall).",
124
+ "external_fillet_check": "FAIL if external_radius < (0.25 × wall).",
125
+ "machining_tool_check": "FAIL if process='machining' AND internal_radius < tool_radius.",
126
+ "die_cast_fillet_check": "FAIL if process='die_casting' AND internal_radius < 1.0.",
127
+ "rib_root_check": "FAIL if rib_root_radius < (0.25 × rib_thickness)."
128
+ },
129
+
130
+ "image_features_needed": [
131
+ "Detect internal and external corners.",
132
+ "Extract fillet curvature and measure radius using contour curvature.",
133
+ "Identify ribs and measure rib-root fillet radius.",
134
+ "Segment regions by wall thickness to compute required radius.",
135
+ "Detect sharp corners and classify as non-fillet geometry."
136
+ ]
137
+ }
138
+
139
+ {
140
+ "guideline_id": "D004",
141
+ "category": "DFM",
142
+ "topic": "Rib Design",
143
+
144
+ "evaluation_criteria": [
145
+ "Verify rib thickness does not exceed 0.5 × adjacent wall thickness (to avoid sink marks in molding).",
146
+ "Verify rib height is ≤ 3 × rib thickness (to avoid weak/slender ribs).",
147
+ "Verify rib draft angle ≥ 0.5° per side (injection molding) to allow clean ejection.",
148
+ "Verify rib-root fillet radius ≥ 0.25 × rib thickness.",
149
+ "Verify spacing between ribs ≥ 2 × rib thickness (to maintain uniform flow and cooling)."
150
+ ],
151
+
152
+ "user_questions": [
153
+ "What is the adjacent wall thickness where the rib is attached (mm)?",
154
+ "What is the rib thickness (mm)?",
155
+ "What is the rib height (mm)?",
156
+ "What is the draft angle on the rib side walls (degrees)?",
157
+ "What is the fillet radius at the rib root (mm)?"
158
+ ],
159
+
160
+ "expected_answers": [
161
+ "Rib thickness must be ≤ 0.5 × wall thickness for injection molding.",
162
+ "Rib height must be ≤ 3 × rib thickness.",
163
+ "Draft angle must be ≥ 0.5° per side for ribs.",
164
+ "Rib-root fillet radius must be ≥ 0.25 × rib thickness.",
165
+ "Rib spacing must be ≥ 2 × rib thickness."
166
+ ],
167
+
168
+ "pass_fail_logic": {
169
+ "rib_thickness_check": "FAIL if rib_thickness > (0.5 × wall_thickness).",
170
+ "rib_height_check": "FAIL if rib_height > (3 × rib_thickness).",
171
+ "rib_draft_check": "FAIL if draft_angle < 0.5.",
172
+ "rib_root_fillet_check": "FAIL if fillet_radius < (0.25 × rib_thickness).",
173
+ "rib_spacing_check": "FAIL if spacing < (2 × rib_thickness)."
174
+ },
175
+
176
+ "image_features_needed": [
177
+ "Detect rib geometry (thin vertical wall-like features).",
178
+ "Measure rib thickness and height from side profiles.",
179
+ "Identify root fillets and measure radius via curvature extraction.",
180
+ "Detect rib spacing by identifying repetitive thin features.",
181
+ "Detect draft angle by analyzing rib wall taper relative to mold pull direction."
182
+ ]
183
+ }
184
+
185
+ {
186
+ "guideline_id": "D005",
187
+ "category": "DFM",
188
+ "topic": "Boss Design",
189
+
190
+ "evaluation_criteria": [
191
+ "Verify outer boss diameter is between 2.0 × and 2.5 × the screw/pin diameter (industry standard for molded bosses).",
192
+ "Verify boss wall thickness is ≤ 0.6 × the nominal wall thickness to prevent sink marks.",
193
+ "Verify boss height is ≤ 3 × the outer boss diameter to prevent buckling.",
194
+ "Verify draft angle on boss walls is ≥ 0.5° for clean ejection.",
195
+ "Verify base fillet radius ≥ 0.25 × boss wall thickness for stress reduction."
196
+ ],
197
+
198
+ "user_questions": [
199
+ "What is the screw or pin diameter intended for the boss (mm)?",
200
+ "What is the outer boss diameter (mm)?",
201
+ "What is the nominal part wall thickness (mm)?",
202
+ "What is the boss height (mm)?",
203
+ "What is the draft angle on the boss outer wall (degrees)?",
204
+ "What is the fillet radius at the boss base (mm)?"
205
+ ],
206
+
207
+ "expected_answers": [
208
+ "Outer boss diameter must be between 2.0 × and 2.5 × the screw/pin diameter.",
209
+ "Boss wall thickness must be ≤ 0.6 × nominal wall thickness.",
210
+ "Boss height must be ≤ 3 × outer boss diameter.",
211
+ "Draft angle must be ≥ 0.5° for molded bosses.",
212
+ "Boss base fillet radius must be ≥ 0.25 × boss wall thickness."
213
+ ],
214
+
215
+ "pass_fail_logic": {
216
+ "outer_diameter_check": "FAIL if outer_diameter < (2.0 × screw_diam) OR outer_diameter > (2.5 × screw_diam).",
217
+ "wall_thickness_check": "FAIL if boss_wall_thickness > (0.6 × nominal_wall_thickness).",
218
+ "boss_height_check": "FAIL if boss_height > (3 × outer_diameter).",
219
+ "draft_angle_check": "FAIL if draft_angle < 0.5.",
220
+ "fillet_radius_check": "FAIL if fillet_radius < (0.25 × boss_wall_thickness)."
221
+ },
222
+
223
+ "image_features_needed": [
224
+ "Detect cylindrical features (bosses) in the model.",
225
+ "Measure boss outer diameter and internal core diameter using circular feature extraction.",
226
+ "Measure boss wall thickness via diameter difference.",
227
+ "Determine boss height from vertical extrusion length.",
228
+ "Detect and measure draft angle by analyzing taper of cylindrical walls.",
229
+ "Measure fillet radius at boss base using curvature analysis."
230
+ ]
231
+ }
232
+
233
+ {
234
+ "guideline_id": "D006",
235
+ "category": "DFM",
236
+ "topic": "Material Shrinkage Compensation",
237
+
238
+ "evaluation_criteria": [
239
+ "Verify selected material shrink rate matches the manufacturing process (injection molding, die casting, blow molding).",
240
+ "Verify dimensional compensation added in the CAD model equals material shrink rate × nominal dimension.",
241
+ "Verify shrink direction is aligned with mold flow and part geometry.",
242
+ "Verify thick-to-thin transitions are uniform to prevent differential shrink.",
243
+ "Verify ribs, bosses, and reinforcing features meet shrink-sensitive design rules (uniform wall thickness, proper fillets, supported geometry)."
244
+ ],
245
+
246
+ "user_questions": [
247
+ "What is the material used (e.g., ABS, Nylon 6/6, PP, PBT, HDPE, Aluminum A380)?",
248
+ "What is the material shrink rate (%) recommended by the manufacturer?",
249
+ "What is the nominal dimension requiring shrink compensation (mm)?",
250
+ "Is the shrink direction aligned with the mold flow direction? (yes/no)",
251
+ "Does the part contain thick-to-thin transitions? If yes, provide the thickest and thinnest wall values (mm)."
252
+ ],
253
+
254
+ "expected_answers": [
255
+ "Shrink rate must match the process: Injection molding typical ranges: ABS 0.4–0.7%, Nylon 6/6 1.0–2.0%, PP 1.5–2.5%, PBT 1.2–2.0%, HDPE 1.5–3.0%; Die casting aluminum A380: 0.6%.",
256
+ "CAD dimensional compensation must equal: final_dimension = nominal_dimension × (1 + shrink_rate).",
257
+ "Shrink direction must match mold flow direction defined in the manufacturing plan.",
258
+ "Thick-to-thin wall transitions must maintain a ratio ≤ 1.5:1 to prevent differential shrink.",
259
+ "Ribs, bosses, and similar features must follow shrink-safe rules: rib thickness ≤ 0.6 × wall, boss thickness ≤ 0.6 × wall, fillet radii > 0.25 × wall."
260
+ ],
261
+
262
+ "pass_fail_logic": {
263
+ "material_shrink_rate_check": "FAIL if shrink_rate not in material_shrink_table[material].",
264
+ "dimensional_compensation_check": "FAIL if compensated_dimension != nominal_dimension × (1 + shrink_rate).",
265
+ "shrink_direction_check": "FAIL if shrink_direction != mold_flow_direction.",
266
+ "wall_ratio_check": "FAIL if (thick_wall / thin_wall) > 1.5.",
267
+ "feature_shrink_safety_check": "FAIL if ribs or bosses violate thickness or fillet rules."
268
+ },
269
+
270
+ "image_features_needed": [
271
+ "Measure nominal dimensions to check shrink-compensated geometry.",
272
+ "Detect thick and thin wall regions from sectional analysis.",
273
+ "Identify ribs, bosses, gussets and classify feature types.",
274
+ "Measure wall thickness distribution to detect shrink-risk areas.",
275
+ "Extract mold-flow direction cues (gate orientation, flow channels) when visible."
276
+ ]
277
+ }
278
+
279
+ {
280
+ "guideline_id": "D007",
281
+ "category": "DFM",
282
+ "topic": "Tool Access & Manufacturability",
283
+
284
+ "evaluation_criteria": [
285
+ "Verify all machining or molding tool paths have at least the minimum required approach clearance.",
286
+ "Verify no features require undercut tooling unless explicitly planned (side-actions, lifters, collapsible cores).",
287
+ "Verify minimum cutter diameter or mold pin diameter can physically access the feature.",
288
+ "Verify screw, bolt, or fastener access zones have adequate tool clearance (driver length, diameter).",
289
+ "Verify no enclosed geometry prevents ejection, extraction, or machining tool withdrawal."
290
+ ],
291
+
292
+ "user_questions": [
293
+ "What is the smallest tool (cutter, drill, or mold pin) that will be used to create the feature? Provide diameter in mm.",
294
+ "What is the minimum approach clearance available around the feature (mm)?",
295
+ "Does this geometry require undercuts? If yes, specify type: side-action, lifter, collapsible core, manual insert.",
296
+ "What fastener or assembly tool needs access to this region? Provide driver type (Phillips, Torx, Hex) and required clearance (mm).",
297
+ "Is the feature enclosed or partially enclosed such that tool or ejector withdrawal may be obstructed? (yes/no)"
298
+ ],
299
+
300
+ "expected_answers": [
301
+ "Feature must allow a tool larger than or equal to the minimum cutter/pin diameter: milling ≥ 2 mm, drilling ≥ 1 mm, mold pins ≥ 0.8 mm.",
302
+ "Approach clearance must be ≥ tool_diameter × 1.5 for safe entry (e.g., 2 mm tool → 3 mm clearance).",
303
+ "If an undercut exists, valid methods include: side-action, lifter, collapsible core; otherwise geometry must be redesigned.",
304
+ "Fastener tools require: Phillips/Torx drivers ≥ 40 mm length clearance and ≥ 1.5 × driver diameter radial clearance.",
305
+ "Enclosed geometry must allow withdrawal angle ≥ 2° or have an ejection strategy (pins, sleeves, lifters)."
306
+ ],
307
+
308
+ "pass_fail_logic": {
309
+ "tool_diameter_access_check": "FAIL if feature_width < minimum_tool_diameter.",
310
+ "approach_clearance_check": "FAIL if approach_clearance < (tool_diameter × 1.5).",
311
+ "undercut_check": "FAIL if undercut_present AND undercut_solution NOT IN ['side-action','lifter','collapsible core','manual insert'].",
312
+ "fastener_access_check": "FAIL if driver_clearance < (1.5 × driver_diameter) OR axial_clearance < 40 mm.",
313
+ "withdrawal_obstruction_check": "FAIL if enclosed_geometry == true AND withdrawal_angle < 2° AND no_ejector_strategy == true."
314
+ },
315
+
316
+ "image_features_needed": [
317
+ "Identify narrow channels, pockets, or recesses affecting tool access.",
318
+ "Measure minimum feature width for cutter or pin entry.",
319
+ "Detect potential undercut geometry from shadow or curvature patterns.",
320
+ "Identify driver/tool approach paths to fastener features.",
321
+ "Detect enclosed or partially enclosed volumes limiting tool withdrawal."
322
+ ]
323
+ }
324
+
325
+ {
326
+ "guideline_id": "D008",
327
+ "category": "DFM",
328
+ "topic": "Undercut Avoidance & Parting Line Design",
329
+
330
+ "evaluation_criteria": [
331
+ "Verify part geometry can be released from the mold without requiring undercuts unless intentionally designed.",
332
+ "Verify all faces are manufacturable with a two-plate mold unless additional actions are explicitly planned.",
333
+ "Verify parting line placement results in manufacturable draft on all vertical faces.",
334
+ "Verify no geometry traps steel (internal pockets with no pull direction).",
335
+ "Verify manual inserts, side-actions, or lifters are only used when unavoidable and are located with proper clearance."
336
+ ],
337
+
338
+ "user_questions": [
339
+ "Does the part contain any recessed or hooked geometry that blocks straight-pull release? (yes/no)",
340
+ "What is the draft angle on vertical walls adjacent to the suspected undercut region (degrees)?",
341
+ "Is there a required undercut? If yes, specify the type: side-action, lifter, collapsible core, manual insert.",
342
+ "What is the planned parting line direction and location? Provide the vector or description.",
343
+ "Do any internal pockets or cavities lack a clear pull direction? (yes/no)"
344
+ ],
345
+
346
+ "expected_answers": [
347
+ "Straight-pull manufacturability requires **0 undercuts** for a standard 2-plate mold.",
348
+ "Adjacent vertical walls must have ≥ **1° draft (minimum)**; recommended 2–3° for most plastics.",
349
+ "If an undercut exists, acceptable solutions: ['side-action','lifter','collapsible core','manual insert']; unlisted solutions = NOT acceptable.",
350
+ "Parting line must allow every face to pull in a single direction with required draft.",
351
+ "Internal pockets must have a pull direction OR be opened via a side-action; pockets with **no pull direction** violate manufacturability."
352
+ ],
353
+
354
+ "pass_fail_logic": {
355
+ "undercut_presence_check": "FAIL if undercut == true AND undercut_solution NOT IN ['side-action','lifter','collapsible core','manual insert'].",
356
+ "draft_angle_check": "FAIL if draft_angle < 1.",
357
+ "parting_line_check": "FAIL if any face cannot be drafted along chosen parting line.",
358
+ "steel_trap_check": "FAIL if steel_trap_detected == true.",
359
+ "internal_pocket_check": "FAIL if internal_pocket_without_pull == true."
360
+ },
361
+
362
+ "image_features_needed": [
363
+ "Detect hooked or recessed geometry indicating potential undercuts.",
364
+ "Identify parting line candidates based on geometry silhouette.",
365
+ "Measure draft angles by comparing wall direction to mold pull axis.",
366
+ "Detect steel traps by identifying fully enclosed wall contours.",
367
+ "Isolate internal cavities and determine if they have visible pull direction."
368
+ ]
369
+ }
370
+
371
+ {
372
+ "guideline_id": "D009",
373
+ "category": "DFM",
374
+ "topic": "Minimum Feature Size & Manufacturable Geometry",
375
+
376
+ "evaluation_criteria": [
377
+ "Verify all features meet the minimum manufacturable thickness or diameter for the intended process.",
378
+ "Verify small slots, holes, ribs, and text features do not fall below tooling or machining limits.",
379
+ "Verify depth-to-width ratios for cavities, pockets, or slots are within process limits.",
380
+ "Verify fillet radii at small features meet minimum radius requirements to avoid stress or tooling breakage.",
381
+ "Verify sharp corners or micro-features are replaced with manufacturing-appropriate radii or draft."
382
+ ],
383
+
384
+ "user_questions": [
385
+ "What is the smallest wall thickness or feature width in the part (mm)?",
386
+ "What is the smallest hole or pin diameter used (mm)?",
387
+ "What is the deepest pocket or cavity depth and its minimum width (depth and width in mm)?",
388
+ "What is the minimum fillet radius used in small interior corners (mm)?",
389
+ "Does any geometry include sharp corners, embossed/engraved text, or micro-details? If yes, specify feature size (mm)."
390
+ ],
391
+
392
+ "expected_answers": [
393
+ "Minimum wall thickness must meet process requirements: Injection molding: ABS ≥ 1.2 mm, Nylon ≥ 0.8 mm, PP ≥ 1.0 mm, PC ≥ 1.0 mm; Machining: ≥ 0.5 mm; Die casting: ≥ 1.0–1.5 mm.",
394
+ "Minimum hole diameter must be ≥ tooling limits: molded pin ≥ 0.8 mm, drilled hole ≥ 1.0 mm, machined endmill ≥ 2 mm typical.",
395
+ "Depth-to-width ratio must be ≤ 3:1 for milling and ≤ 2:1 for molding; deeper features require draft or special tooling.",
396
+ "Minimum fillet radius must be ≥ 0.25 mm in interior corners to avoid tool breakage or molded stress concentration.",
397
+ "Sharp corners and text features must follow minimum size rules: text stroke ≥ 0.4 mm (molded), engraving depth ≥ 0.2 mm, no zero-radius corners."
398
+ ],
399
+
400
+ "pass_fail_logic": {
401
+ "minimum_feature_size_check": "FAIL if smallest_feature < min_required_for_process.",
402
+ "hole_diameter_check": "FAIL if hole_diameter < min_tool_diameter.",
403
+ "aspect_ratio_check": "FAIL if (depth / width) > max_allowed_aspect_ratio_for_process.",
404
+ "fillet_radius_check": "FAIL if fillet_radius < 0.25 mm.",
405
+ "sharp_features_check": "FAIL if sharp_corner_detected AND radius == 0 AND no justification provided."
406
+ },
407
+
408
+ "image_features_needed": [
409
+ "Detect the smallest visible features (thin walls, slots, ribs, text).",
410
+ "Measure feature width and thickness using image-based dimension extraction.",
411
+ "Identify small holes or pin-sized features and measure diameters.",
412
+ "Detect deep cavities or pockets requiring aspect ratio evaluation.",
413
+ "Detect sharp corners or insufficient radii in high-stress or micro-detail areas."
414
+ ]
415
+ }
416
+
417
+ {
418
+ "guideline_id": "D010",
419
+ "category": "DFM",
420
+ "topic": "Assembly Direction & Self-Locating Features",
421
+
422
+ "evaluation_criteria": [
423
+ "Verify the assembly direction is linear (single-axis) and does not require rotation, twisting, or multi-axis insertion.",
424
+ "Verify alignment and self-locating features (tabs, chamfers, bosses) support repeatable assembly.",
425
+ "Verify insertion clearance fits standard assembly tolerances (typically 0.1–0.3 mm per side for plastics).",
426
+ "Verify no geometry creates jamming, interference, or binding during linear insertion.",
427
+ "Verify fastener, snap-fit, or press-fit elements are accessible along the same assembly axis."
428
+ ],
429
+
430
+ "user_questions": [
431
+ "What is the intended assembly direction for this part relative to its mating component? (Provide axis such as +Z, -X, etc.)",
432
+ "What is the clearance between mating features during insertion (mm)?",
433
+ "Does the part include self-locating features such as chamfers, tapered bosses, or alignment tabs? If yes, describe them.",
434
+ "Are there any points in the assembly where insertion force significantly increases or binding might occur? (yes/no)",
435
+ "Are fasteners, snaps, or press-fit features aligned with the main assembly direction? (yes/no)"
436
+ ],
437
+
438
+ "expected_answers": [
439
+ "Valid assembly directions include any single linear axis: ['+X','-X','+Y','-Y','+Z','-Z'].",
440
+ "Insertion clearance must be ≥ 0.1 mm (tight fit), 0.2–0.3 mm (standard fit), or >0.3 mm (loose fit).",
441
+ "Self-locating features must include at least one of: chamfer ≥ 0.5 mm, lead-in angle ≥ 10°, tapered boss with 1–2° draft.",
442
+ "Binding locations must be eliminated; acceptable answer: 'No binding points identified'.",
443
+ "Fasteners or snaps must be accessible from the assembly direction; otherwise redesign is required."
444
+ ],
445
+
446
+ "pass_fail_logic": {
447
+ "assembly_axis_check": "FAIL if assembly_direction NOT IN ['+X','-X','+Y','-Y','+Z','-Z'].",
448
+ "insertion_clearance_check": "FAIL if clearance < 0.1 mm.",
449
+ "self_locating_feature_check": "FAIL if no self_locating_features_present.",
450
+ "binding_check": "FAIL if binding_detected == true.",
451
+ "fastener_alignment_check": "FAIL if fasteners_or_snaps_not_accessible_from_assembly_direction == true."
452
+ },
453
+
454
+ "image_features_needed": [
455
+ "Identify assembly mating faces and highlight insertion axis.",
456
+ "Measure clearance gaps between mating surfaces and features.",
457
+ "Detect chamfers, tapers, alignment tabs, and bosses used for self-location.",
458
+ "Identify potential binding points such as misaligned walls or angled surfaces.",
459
+ "Detect orientation and accessibility of fasteners or snap-fit features."
460
+ ]
461
+ }
462
+
463
+ {
464
+ "guideline_id": "G011",
465
+ "category": "GDT",
466
+ "topic": "True Position Tolerance",
467
+
468
+ "evaluation_criteria": [
469
+ "Verify the true position tolerance (diameter zone) is appropriate for the hole/pin size and functional requirement.",
470
+ "Verify the datums referenced in the position callout exist and are stable, orthogonal, and fully constrained.",
471
+ "Verify hole center location deviation does not exceed allowed tolerance zone.",
472
+ "Verify hole orientation is aligned with the datum axis when required.",
473
+ "Verify pattern-of-holes share consistent datum reference and equalized tolerance distribution."
474
+ ],
475
+
476
+ "user_questions": [
477
+ "What is the hole diameter (mm)?",
478
+ "What is the specified true position tolerance (mm or mm at MMC)?",
479
+ "What are the referenced datums in the callout (e.g., A|B|C)?",
480
+ "What is the measured deviation of the hole center from nominal in X and Y (mm)?",
481
+ "Is this hole part of a hole pattern? If yes, how many holes and what spacing tolerance is required?"
482
+ ],
483
+
484
+ "expected_answers": [
485
+ "True position tolerance must follow typical ranges: small holes (≤5 mm): 0.05–0.15 mm; medium (5–12 mm): 0.1–0.25 mm; large (>12 mm): 0.2–0.5 mm.",
486
+ "Position tolerance at MMC increases allowable deviation by the bonus tolerance: tol = specified_tol + (MMC - actual_size).",
487
+ "Datums must include: A (primary planar surface), B (secondary orthogonal surface), C (third orthogonal surface).",
488
+ "Hole center deviation must satisfy: sqrt(dx² + dy²) ≤ tolerance_diameter / 2.",
489
+ "Hole patterns must maintain equal spacing with spacing tolerance ≤ 0.1–0.3 mm depending on functional requirement."
490
+ ],
491
+
492
+ "pass_fail_logic": {
493
+ "tolerance_range_check": "FAIL if position_tolerance < min_allowed_for_size OR > max_allowed_for_size.",
494
+ "datum_validity_check": "FAIL if datums_missing OR datums_non_orthogonal OR datums_unstable.",
495
+ "center_location_check": "FAIL if sqrt(dx*dx + dy*dy) > (tolerance_zone_diameter / 2).",
496
+ "orientation_check": "FAIL if required_orientation AND orientation_error > limit.",
497
+ "pattern_consistency_check": "FAIL if hole_spacing_error > spacing_tolerance."
498
+ },
499
+
500
+ "image_features_needed": [
501
+ "Detect hole centers using edge or centroid analysis.",
502
+ "Measure deviation between nominal and actual center positions.",
503
+ "Identify datum planes and axes visible in the drawing or model.",
504
+ "Measure hole diameter and verify MMC/LMC conditions.",
505
+ "Detect hole patterns and evaluate uniform spacing and alignment."
506
+ ]
507
+ }
508
+
509
+ {
510
+ "guideline_id": "G012",
511
+ "category": "GDT",
512
+ "topic": "Flatness",
513
+
514
+ "evaluation_criteria": [
515
+ "Verify the flatness tolerance is appropriate for the surface size and functional requirement.",
516
+ "Verify the measured surface variation (peak-to-valley) does not exceed the flatness tolerance.",
517
+ "Verify no warping, bowing, or twisting exceeds acceptable deformation levels.",
518
+ "Verify machining, molding, or casting process can realistically produce the specified flatness.",
519
+ "Verify the surface does not rely on external datums; flatness must be self-contained (datum-free tolerance)."
520
+ ],
521
+
522
+ "user_questions": [
523
+ "What is the flatness tolerance specified for this surface (mm)?",
524
+ "What is the measured peak-to-valley deviation across the surface (mm)?",
525
+ "What is the approximate surface size (length × width in mm)?",
526
+ "What is the material and manufacturing process for this part?",
527
+ "Does the surface show any visible warping, twisting, or bowing? (yes/no)"
528
+ ],
529
+
530
+ "expected_answers": [
531
+ "Flatness tolerance should follow typical limits: small surfaces (<50 mm): 0.02–0.05 mm; medium (50–150 mm): 0.05–0.15 mm; large (>150 mm): 0.1–0.3 mm.",
532
+ "Measured surface deviation must satisfy: peak_to_valley ≤ flatness_tolerance.",
533
+ "Larger surfaces require looser flatness: long plates >200 mm generally ≥ 0.1 mm.",
534
+ "Process limits: machining can achieve 0.01–0.05 mm; die casting typically 0.1–0.3 mm; molding 0.1–0.5 mm depending on geometry.",
535
+ "Flatness is free-state: no datums should be referenced in the flatness callout."
536
+ ],
537
+
538
+ "pass_fail_logic": {
539
+ "tolerance_feasibility_check": "FAIL if specified_flatness < minimum_process_capability.",
540
+ "deviation_check": "FAIL if measured_peak_to_valley > flatness_tolerance.",
541
+ "warping_check": "FAIL if warping_detected AND warping_amount > flatness_tolerance.",
542
+ "surface_size_reasonableness_check": "FAIL if surface_size > 200 mm AND flatness_tolerance < 0.05 mm (unrealistic).",
543
+ "datum_reference_check": "FAIL if flatness_callout_incorrectly_references_datum == true."
544
+ },
545
+
546
+ "image_features_needed": [
547
+ "Detect high and low points on the surface using shading or gradient mapping.",
548
+ "Measure effective surface curvature or deviation.",
549
+ "Identify signs of bowing or twisting from silhouette or edge contour.",
550
+ "Estimate size of the evaluated surface from image scale cues.",
551
+ "Detect datum references on drawings to ensure flatness is datum-free."
552
+ ]
553
+ }
554
+
555
+ {
556
+ "guideline_id": "G013",
557
+ "category": "GDT",
558
+ "topic": "Parallelism",
559
+
560
+ "evaluation_criteria": [
561
+ "Verify the referenced datum plane or axis is valid, stable, and orthogonal to other datums.",
562
+ "Verify the surface or axis being evaluated stays within the parallelism tolerance zone relative to the datum.",
563
+ "Verify parallelism tolerance is proportional to feature size and functional requirement.",
564
+ "Verify the manufacturing process can achieve the specified parallelism at the chosen tolerance.",
565
+ "Verify parallel surfaces do not show twist, taper, bow, or angular deviation exceeding tolerance."
566
+ ],
567
+
568
+ "user_questions": [
569
+ "What is the parallelism tolerance specified (mm or degrees)?",
570
+ "What datum (A/B/C) is referenced for the parallelism requirement?",
571
+ "What is the measured angular deviation between the evaluated surface and its datum (degrees)?",
572
+ "What is the measured peak-to-valley separation between the two surfaces (mm)?",
573
+ "What is the manufacturing process used (machining, grinding, molding, casting)?"
574
+ ],
575
+
576
+ "expected_answers": [
577
+ "Parallelism tolerance ranges: precision machining: 0.01–0.05 mm; standard machining: 0.05–0.1 mm; molded parts: 0.1–0.3 mm; cast parts: 0.2–0.5 mm.",
578
+ "A valid datum must be planar (e.g., A) or cylindrical (e.g., axis B) and must be stable and fully constrained.",
579
+ "Angular deviation must be ≤ 0.1° for precision fits, ≤ 0.3° for general fits, ≤ 1° for molded features.",
580
+ "Peak-to-valley variation must be ≤ the parallelism tolerance zone.",
581
+ "Process capability: grinding: 0.005 mm, machining: 0.02–0.1 mm, molding: 0.1–0.3 mm, casting: 0.2–0.5 mm."
582
+ ],
583
+
584
+ "pass_fail_logic": {
585
+ "datum_validity_check": "FAIL if datum_invalid OR datum_not_flat OR datum_not_stable.",
586
+ "angular_deviation_check": "FAIL if angular_deviation > allowed_angular_limit.",
587
+ "zone_variation_check": "FAIL if measured_PV > parallelism_tolerance.",
588
+ "process_capability_check": "FAIL if parallelism_tolerance < minimum_process_capability.",
589
+ "twist_or_bow_check": "FAIL if taper, bow, or twist detected beyond tolerance."
590
+ },
591
+
592
+ "image_features_needed": [
593
+ "Identify datum plane or axis from geometry or drawing.",
594
+ "Detect angular deviation between surfaces using edge direction analysis.",
595
+ "Measure surface separation or PV variation using contour mapping.",
596
+ "Identify twist or taper through silhouette comparison.",
597
+ "Infer process-related defects (warp, bend) from shading gradients or curvature."
598
+ ]
599
+ }
600
+
601
+ {
602
+ "guideline_id": "G014",
603
+ "category": "GDT",
604
+ "topic": "Perpendicularity",
605
+
606
+ "evaluation_criteria": [
607
+ "Verify the referenced datum (plane or axis) is valid, orthogonal, and stable.",
608
+ "Verify the evaluated surface or axis stays within the perpendicularity tolerance zone relative to the datum.",
609
+ "Verify the perpendicularity tolerance is appropriate for the functional requirement (press fits, bearings, alignment surfaces).",
610
+ "Verify measured angular deviation does not exceed allowable limits for the manufacturing process.",
611
+ "Verify no bow, twist, or taper causes out-of-square conditions exceeding tolerance."
612
+ ],
613
+
614
+ "user_questions": [
615
+ "What is the perpendicularity tolerance specified for this feature (mm or degrees)?",
616
+ "Which datum is referenced for the perpendicularity requirement (A/B/C)?",
617
+ "What is the measured angular deviation from 90° (degrees)?",
618
+ "What is the maximum measured deviation between the evaluated feature and the datum (mm)?",
619
+ "What is the manufacturing process for the feature (machining, grinding, molding, casting)?"
620
+ ],
621
+
622
+ "expected_answers": [
623
+ "Typical perpendicularity tolerance ranges: precision machining: 0.01–0.05 mm; standard machining: 0.05–0.1 mm; molding: 0.1–0.3 mm; casting: 0.2–0.6 mm.",
624
+ "Valid datums: planar A, planar B, or cylindrical axis C; must be fully constrained and orthogonal where required.",
625
+ "Measured angular deviation must be ≤ 0.1° for precision fits, ≤ 0.3° for standard fits, ≤ 1° for molded/cast surfaces.",
626
+ "Linear deviation at the measured height must be ≤ the perpendicularity tolerance zone.",
627
+ "Twist, bow, or out-of-square distortion must be ≤ tolerance or part fails functional alignment."
628
+ ],
629
+
630
+ "pass_fail_logic": {
631
+ "datum_validity_check": "FAIL if datum does not exist, is unstable, or is not orthogonal to required reference datums.",
632
+ "angular_deviation_check": "FAIL if angular_deviation > allowed_process_limit.",
633
+ "tolerance_zone_check": "FAIL if linear_deviation > perpendicularity_tolerance.",
634
+ "process_capability_check": "FAIL if tolerance < minimum_capability_for_process.",
635
+ "warp_or_twist_check": "FAIL if twist/bow/taper exceeds perpendicularity tolerance."
636
+ },
637
+
638
+ "image_features_needed": [
639
+ "Detect datum plane or axis from drawing or geometry.",
640
+ "Measure angle between evaluated surface and datum using edge-orientation extraction.",
641
+ "Measure max deviation across surface height for perpendicularity zone verification.",
642
+ "Detect twist, bow, or taper using silhouette curvature.",
643
+ "Identify machining or molding features that might cause angular error."
644
+ ]
645
+ }
646
+
647
+ {
648
+ "guideline_id": "G015",
649
+ "category": "GDT",
650
+ "topic": "Concentricity",
651
+
652
+ "evaluation_criteria": [
653
+ "Verify the datum axis is defined correctly and based on a stable cylindrical or planar feature.",
654
+ "Verify the derived median points of the evaluated cylinder remain within the concentricity tolerance zone.",
655
+ "Verify the concentricity tolerance is appropriate for the mating requirement (bearing fit, shaft fit, alignment pins).",
656
+ "Verify diameter deviation, ovality, and surface imperfections do not distort the derived axis.",
657
+ "Verify coaxial features share the same datum reference to ensure functional alignment."
658
+ ],
659
+
660
+ "user_questions": [
661
+ "What is the specified concentricity tolerance for this feature (mm)?",
662
+ "Which datum axis is referenced in the concentricity callout (A/B/C)?",
663
+ "What is the measured radial deviation of the evaluated axis relative to the datum (mm)?",
664
+ "What is the diameter of the cylinder being evaluated (mm)?",
665
+ "Is this feature intended to mate with another cylindrical component (shaft, bearing, dowel pin)? (yes/no)"
666
+ ],
667
+
668
+ "expected_answers": [
669
+ "Typical concentricity tolerances: high-precision bearing fits: 0.01–0.03 mm; standard alignment features: 0.05–0.1 mm; molded/cast cylindrical features: 0.1–0.3 mm.",
670
+ "Valid datum axis must come from a cylindrical feature with acceptable roundness (≤0.05 mm for precision).",
671
+ "Radial deviation must satisfy: deviation ≤ concentricity_tolerance / 2.",
672
+ "Cylinder diameter must be stable and consistent; ovality should be ≤ 0.3% of nominal diameter.",
673
+ "If mating, concentricity must be within the functional requirement of the paired part (e.g., shaft runout limits)."
674
+ ],
675
+
676
+ "pass_fail_logic": {
677
+ "datum_axis_validity_check": "FAIL if datum axis is unstable, oval, or derived from a distorted surface.",
678
+ "radial_deviation_check": "FAIL if radial_deviation > (concentricity_tolerance / 2).",
679
+ "ovality_check": "FAIL if ovality > (0.003 × nominal_diameter).",
680
+ "process_feasibility_check": "FAIL if concentricity_tolerance < minimum_process_capability.",
681
+ "mating_requirement_check": "FAIL if concentricity exceeds functional requirement for a mating part."
682
+ },
683
+
684
+ "image_features_needed": [
685
+ "Detect cylindrical features and estimate cylinder axis from silhouette or shading gradients.",
686
+ "Extract centerline deviation by sampling median points of cylinder sections.",
687
+ "Measure diameter consistency and detect ovality.",
688
+ "Identify referenced datum cylinder from drawing or geometry.",
689
+ "Detect mating features (holes, shafts) that impose coaxial requirements."
690
+ ]
691
+ }
692
+
693
+ {
694
+ "guideline_id": "G016",
695
+ "category": "GDT",
696
+ "topic": "Circularity",
697
+
698
+ "evaluation_criteria": [
699
+ "Verify the evaluated cross-sections of the cylindrical or round feature fall within the circularity tolerance band.",
700
+ "Verify the radial variation (max–min radius) does not exceed the specified circularity tolerance.",
701
+ "Verify the manufacturing process can realistically meet the circularity requirement for the selected material.",
702
+ "Verify circularity variation is not caused by ovality, lobing, tool chatter, or shrink-related distortion.",
703
+ "Verify all required cross-sections along the feature length meet the circularity requirement (not only mid-plane)."
704
+ ],
705
+
706
+ "user_questions": [
707
+ "What is the circularity tolerance specified for this feature (mm)?",
708
+ "What is the measured maximum radius and minimum radius across a cross-section (mm)?",
709
+ "What is the nominal diameter of the cylindrical feature (mm)?",
710
+ "What manufacturing process was used (turning, grinding, molding, casting, extrusion)?",
711
+ "Does the feature show signs of lobing or non-roundness (e.g., 2-lobe, 3-lobe patterns)? (yes/no)"
712
+ ],
713
+
714
+ "expected_answers": [
715
+ "Typical circularity tolerances: precision turned/grinded surfaces: 0.005–0.02 mm; standard machining: 0.02–0.05 mm; molded parts: 0.05–0.15 mm; cast parts: 0.1–0.3 mm.",
716
+ "Circularity band requirement: (max_radius - min_radius) ≤ circularity_tolerance.",
717
+ "Nominal diameter tolerance interaction: circularity must be < 25% of the size tolerance for high-precision fits.",
718
+ "Process capability: grinding ~0.005 mm, precision turning ~0.01 mm, molding ~0.05 mm+, casting ~0.1–0.3 mm.",
719
+ "Lobed patterns indicate tool vibration or mold distortion; if lobing exists, circularity is typically out of tolerance."
720
+ ],
721
+
722
+ "pass_fail_logic": {
723
+ "radius_variation_check": "FAIL if (max_radius - min_radius) > circularity_tolerance.",
724
+ "process_capability_check": "FAIL if specified_circularity < minimum_possible_for_process.",
725
+ "ovality_check": "FAIL if ovality > circularity_tolerance.",
726
+ "lobing_check": "FAIL if lobing_detected AND lobing_amplitude > circularity_tolerance.",
727
+ "section_consistency_check": "FAIL if any cross-section violates circularity tolerance."
728
+ },
729
+
730
+ "image_features_needed": [
731
+ "Detect circular cross-sections from edges or silhouette curvature.",
732
+ "Measure radial variation across sampled points around the circle.",
733
+ "Identify lobing patterns (e.g., 3-lobe, 4-lobe) common in machining or molding.",
734
+ "Measure diameter consistency to detect ovality vs. circularity deviation.",
735
+ "Infer process-related patterns (tool chatter, shrink distortion) from surface texture or geometry."
736
+ ]
737
+ }
738
+
739
+ {
740
+ "guideline_id": "G017",
741
+ "category": "GDT",
742
+ "topic": "Cylindricity",
743
+
744
+ "evaluation_criteria": [
745
+ "Verify all cross-sections of the cylinder maintain roundness within the cylindricity tolerance zone.",
746
+ "Verify the cylinder’s generatrix (surface line along its length) does not deviate beyond tolerance, ensuring no taper or barrel shape.",
747
+ "Verify the cylinder's axis remains straight and free from bending, bowing, or twisting deviations.",
748
+ "Verify surface imperfections such as ovality, lobing, or tool-chatter do not exceed the tolerance zone.",
749
+ "Verify the manufacturing process and material choice can realistically achieve the cylindricity requirement."
750
+ ],
751
+
752
+ "user_questions": [
753
+ "What is the cylindricity tolerance specified for this feature (mm)?",
754
+ "What is the maximum radial variation measured along the cylinder at any cross-section (mm)?",
755
+ "What is the maximum straightness deviation of the cylinder’s axis over its full length (mm)?",
756
+ "What is the nominal diameter and total cylinder length (mm)?",
757
+ "What manufacturing process was used (turning, grinding, molding, casting)?"
758
+ ],
759
+
760
+ "expected_answers": [
761
+ "Typical cylindricity ranges: precision grinding: 0.005–0.02 mm; precision turning: 0.01–0.05 mm; standard machining: 0.05–0.1 mm; molding: 0.05–0.2 mm; casting: 0.1–0.4 mm.",
762
+ "Radial variation in any cross-section must satisfy: (max_radius - min_radius) ≤ cylindricity_tolerance.",
763
+ "Axis straightness deviation must be ≤ cylindricity_tolerance (to avoid taper, bow, or barrel shapes).",
764
+ "Length-to-diameter ratio considerations: long thin cylinders (L/D > 10) may require looser tolerance or grinding.",
765
+ "Process capability: grinding ≈ 0.005 mm; high-precision turning ≈ 0.01 mm; molding/casting significantly higher."
766
+ ],
767
+
768
+ "pass_fail_logic": {
769
+ "cross_section_variation_check": "FAIL if radial_variation > cylindricity_tolerance.",
770
+ "axis_straightness_check": "FAIL if axis_deviation > cylindricity_tolerance.",
771
+ "taper_or_barrel_check": "FAIL if measured_diameter_change_along_length > cylindricity_tolerance.",
772
+ "process_capability_check": "FAIL if cylindricity_tolerance < minimum_process_capability.",
773
+ "lobing_or_ovality_check": "FAIL if lobing_amplitude > cylindricity_tolerance OR ovality > cylindricity_tolerance."
774
+ },
775
+
776
+ "image_features_needed": [
777
+ "Extract cylindrical surface using edge/curvature segmentation.",
778
+ "Measure diameter consistency across multiple cross-sections along the cylinder length.",
779
+ "Estimate cylinder axis deviation by comparing sampled points along its generatrix.",
780
+ "Detect taper, bow, barrel, or hourglass shapes through silhouette curvature.",
781
+ "Identify lobing (2-lobe, 3-lobe, 4-lobe patterns) or molded distortions using roundness profiles."
782
+ ]
783
+ }
784
+
785
+ {
786
+ "guideline_id": "G018",
787
+ "category": "GDT",
788
+ "topic": "Runout",
789
+
790
+ "evaluation_criteria": [
791
+ "Verify the datum axis used for runout measurement is stable, straight, and properly established.",
792
+ "Verify circular runout is measured by rotating the part and ensuring surface variation stays within tolerance.",
793
+ "Verify total runout considers full surface variation (radial + axial) along the entire length of the feature.",
794
+ "Verify runout tolerance is appropriate for functional requirements (rotating shafts, bearings, gears).",
795
+ "Verify geometry defects such as wobble, tilt, bend, or taper do not exceed the allowed tolerance zone."
796
+ ],
797
+
798
+ "user_questions": [
799
+ "Is the callout specifying circular runout or total runout?",
800
+ "What is the runout tolerance specified (mm)?",
801
+ "What datum axis is referenced for the runout measurement (A/B/C)?",
802
+ "What is the maximum radial deviation measured during rotation (mm)?",
803
+ "What is the maximum axial deviation of the feature along its length (mm)?"
804
+ ],
805
+
806
+ "expected_answers": [
807
+ "Circular runout typical ranges: precision rotating shafts: 0.005–0.02 mm; standard machined shafts: 0.02–0.05 mm; molded/cast rotating parts: 0.05–0.15 mm.",
808
+ "Total runout typical ranges: grinding: 0.005–0.01 mm; precision turning: 0.01–0.03 mm; standard machining: 0.03–0.08 mm.",
809
+ "Radial deviation must satisfy: radial_runout ≤ runout_tolerance.",
810
+ "Axial deviation must satisfy (for total runout): axial_runout ≤ runout_tolerance.",
811
+ "Datum axis must come from a stable cylindrical reference with roundness typically < 0.05 mm."
812
+ ],
813
+
814
+ "pass_fail_logic": {
815
+ "datum_axis_validity_check": "FAIL if datum axis is unstable, non-round, or misaligned.",
816
+ "radial_runout_check": "FAIL if radial_runout > runout_tolerance.",
817
+ "axial_runout_check": "FAIL if total_runout_callout AND axial_runout > runout_tolerance.",
818
+ "surface_profile_check": "FAIL if taper, wobble, or bow generate deviation beyond tolerance.",
819
+ "process_capability_check": "FAIL if runout_tolerance < minimum_process_capability."
820
+ },
821
+
822
+ "image_features_needed": [
823
+ "Identify cylindrical datum features for axis extraction.",
824
+ "Measure radial movement of the surface profile during simulated rotation analysis.",
825
+ "Measure axial deviation by comparing slices along the cylindrical height.",
826
+ "Detect wobble or tilt through curvature/edge deviation patterns.",
827
+ "Identify taper or bow shapes based on silhouette geometry."
828
+ ]
829
+ }
830
+
831
+
832
+ {
833
+ "guideline_id": "G019",
834
+ "category": "GDT",
835
+ "topic": "Profile Tolerance",
836
+
837
+ "evaluation_criteria": [
838
+ "Verify the profile tolerance zone width is appropriate for the functional requirement of the feature.",
839
+ "Verify the measured deviation between the actual geometry and nominal CAD profile stays within tolerance.",
840
+ "Verify referenced datums (if any) fully constrain location and orientation for surface profile control.",
841
+ "Verify both inward and outward deviation are controlled symmetrically unless unilateral profile is specified.",
842
+ "Verify complex surfaces (freeform, aerodynamic, ergonomic) maintain continuous curvature and no abrupt transitions beyond tolerance."
843
+ ],
844
+
845
+ "user_questions": [
846
+ "Is the profile callout specifying profile of a line or profile of a surface?",
847
+ "What is the specified profile tolerance zone width (mm)?",
848
+ "What datums (if any) are referenced in the profile callout?",
849
+ "What is the maximum measured deviation from the nominal CAD profile (mm)?",
850
+ "Is the profile unilateral or bilateral? (If unilateral, specify + or – direction.)"
851
+ ],
852
+
853
+ "expected_answers": [
854
+ "Typical profile tolerance ranges: precision machined surfaces: 0.02–0.1 mm; molded surfaces: 0.1–0.3 mm; cast surfaces: 0.3–1.0 mm; freeform aesthetic surfaces: 0.1–0.5 mm depending on class A requirements.",
855
+ "Profile deviation must satisfy: deviation ≤ (profile_tolerance / 2) for bilateral zones.",
856
+ "Datum references: A for primary plane, B for secondary orientation, C for tertiary constraint.",
857
+ "Deviation peaks must not exceed tolerance even in high curvature regions.",
858
+ "Unilateral profile must satisfy: deviation ≤ +tolerance OR ≤ –tolerance depending on direction."
859
+ ],
860
+
861
+ "pass_fail_logic": {
862
+ "profile_zone_width_check": "FAIL if profile_tolerance < minimum_feasible_for_process.",
863
+ "deviation_check": "FAIL if any measured_deviation > (profile_tolerance / 2) for bilateral profiles.",
864
+ "datum_constraint_check": "FAIL if referenced_datums_needed AND datums_missing OR unstable.",
865
+ "unilateral_profile_check": "FAIL if unilateral_profile AND deviation exceeds allowed side.",
866
+ "curvature_continuity_check": "FAIL if abrupt curvature change exceeds tolerance."
867
+ },
868
+
869
+ "image_features_needed": [
870
+ "Extract boundary curves (for line profile) or surface patches (for surface profile).",
871
+ "Compare the detected geometry to nominal CAD silhouette or expected ideal shape.",
872
+ "Measure the maximum deviation between actual and nominal geometry.",
873
+ "Identify curvature continuity issues, ripples, or abrupt transitions.",
874
+ "Detect datum references on the drawing or implied datum alignment from geometry."
875
+ ]
876
+ }
877
+
878
+
879
+ {
880
+ "guideline_id": "G020",
881
+ "category": "GDT",
882
+ "topic": "Datum Structure",
883
+
884
+ "evaluation_criteria": [
885
+ "Verify primary datum constrains 3 degrees of freedom (DOF) with a stable, planar surface.",
886
+ "Verify secondary datum constrains 2 DOF perpendicular to primary datum.",
887
+ "Verify tertiary datum constrains final DOF, fully locking rotational/translation ambiguity.",
888
+ "Verify datum features chosen on the drawing correspond to functionally significant surfaces or features.",
889
+ "Verify datum references in feature control frames match the actual manufacturing and inspection setup."
890
+ ],
891
+
892
+ "user_questions": [
893
+ "What is the primary datum feature (A)?",
894
+ "What is the secondary datum feature (B)?",
895
+ "What is the tertiary datum feature (C)?",
896
+ "Are the datums planar, cylindrical, or irregular functional surfaces?",
897
+ "Do the referenced datums correctly stabilize all 6 DOF for inspection?"
898
+ ],
899
+
900
+ "expected_answers": [
901
+ "Primary datum must be a large, stable surface that establishes orientation—commonly a major mounting face.",
902
+ "Secondary datum typically locks rotation and translation orthogonal to datum A.",
903
+ "Tertiary datum removes final rotational ambiguity—often an edge, pin, or hole.",
904
+ "Cylindrical datums require axis extraction; planar datums require best-fit plane alignment.",
905
+ "A valid datum scheme must constrain all 6 DOF: 3 translational + 3 rotational."
906
+ ],
907
+
908
+ "pass_fail_logic": {
909
+ "primary_datum_check": "FAIL if primary datum lacks stability or does not constrain 3 DOF.",
910
+ "secondary_datum_check": "FAIL if secondary datum does not constrain 2 DOF perpendicular to primary.",
911
+ "tertiary_datum_check": "FAIL if tertiary datum fails to constrain final DOF.",
912
+ "functional_relevance_check": "FAIL if datum surfaces are not functionally meaningful.",
913
+ "inspection_setup_check": "FAIL if datum references in FCF cannot be practically fixtured for inspection."
914
+ },
915
+
916
+ "image_features_needed": [
917
+ "Detect datum feature symbols (A, B, C).",
918
+ "Identify planar, cylindrical, or complex surfaces associated with each datum.",
919
+ "Extract axes, center planes, or best-fit surfaces from geometry.",
920
+ "Evaluate fixture orientation needed to constrain all DOF.",
921
+ "Verify consistency between geometry, datum tags, and FCF requirements."
922
+ ]
923
+ }
924
+
925
+
926
+
927
+
928
+
929
+
930
+