| | @@ -1,32 +1,579 @@ |
| 1 | | -"""Aluminium T-slot extrusion, metric series. Simplified profile: square section with a rectangular slot on each |
| 2 | | -side and a centre bore. Slot shapes differ between makers: check your supplier's drawing for exact fits. |
| 3 | | -The profile is centred on the origin in XY and extruded along +Z. |
| 1 | +"""T-slot aluminium extrusion profiles, any length: the real cross-sections of nine common 20, 30 and 40 mm series |
| 2 | +profiles (B-type slot 6/8, I-type slot 5/8, item-compatible, Misumi HFS6), measured from published FreeCAD-library models. |
| 4 | 3 | |
| 5 | | -Material: aluminium, clear anodized (6061-T6 from the material library; T-slot profiles are usually 6063-T5/T6, whose density and look are the same).""" |
| 4 | +The section, centred on the origin in the XY plane (the longer side along Y), is extruded along +Z by `length`. Each |
| 5 | +section is the reference model's own outline at mid-length: lines and arcs (each arc given by its midpoint), loops in |
| 6 | +order, the first the outside and the rest the cavities and bores. See the README for the models and their authors. |
| 7 | +""" |
| 8 | +import cadquery as cq |
| 9 | + |
| 6 | 10 | from steve import Model |
| 7 | 11 | |
| 8 | | -series = "2020" # Profile series |
| 12 | +profile = "2020-B6" # Profile |
| 9 | 13 | length = 100 # mm Length |
| 14 | +finish = "clear" # Anodising |
| 10 | 15 | |
| 11 | | -# series: (side a, slot opening w, slot depth t, centre bore b) |
| 12 | | -SERIES = { |
| 13 | | - '2020': (20.0, 6.2, 6.0, 4.2), |
| 14 | | - '3030': (30.0, 8.2, 9.0, 6.8), |
| 15 | | - '4040': (40.0, 8.2, 12.0, 6.8), |
| 16 | +# mm. Measured on each reference model's cross-section at mid-length (OCCT section of the STEP model, every edge read |
| 17 | +# exactly: line ends, and each arc's ends and midpoint), centred on the section's bounding box, rounded to 1e-4 mm. |
| 18 | +# A loop: x0, y0, then ("L", x, y) a line to, ("A", xm, ym, x, y) an arc through (xm, ym) to; ("C", cx, cy, r) a circle. |
| 19 | +# The 4080L model's eight spline edges (slot entry rounds) are drawn as 16 chords each (within 0.01 mm). |
| 20 | +PROFILES = { |
| 21 | + # 2020-B6: FreeCAD-library "Profile-20x20-B-Type_Slot6_A.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 22 | + # step.parts profile_2020_b_slot6_a: section 20 x 20, |
| 23 | + # area 174.3364 mm^2 on the model |
| 24 | + "2020-B6": [ |
| 25 | + [10.0, 9.0, ('L', 10.0, 3.4), ('L', 9.6, 3.4), ('L', 9.6, 3.0), ('L', 8.5, 3.0), ('L', 8.5, 6.0), |
| 26 | + ('L', 7.0, 6.0), ('L', 4.7, 3.35), ('L', 4.7, 0.65), ('L', 4.3, 0.0), ('L', 4.7, -0.65), ('L', 4.7, -3.35), |
| 27 | + ('L', 7.0, -6.0), ('L', 8.5, -6.0), ('L', 8.5, -3.0), ('L', 9.6, -3.0), ('L', 9.6, -3.4), ('L', 10.0, -3.4), |
| 28 | + ('L', 10.0, -9.0), ('A', 9.7071, -9.7071, 9.0, -10.0), ('L', 3.4, -10.0), ('L', 3.4, -9.6), ('L', 3.0, -9.6), |
| 29 | + ('L', 3.0, -8.5), ('L', 6.0, -8.5), ('L', 6.0, -7.0), ('L', 3.35, -4.7), ('L', 0.65, -4.7), ('L', 0.0, -4.3), |
| 30 | + ('L', -0.65, -4.7), ('L', -3.35, -4.7), ('L', -6.0, -7.0), ('L', -6.0, -8.5), ('L', -3.0, -8.5), |
| 31 | + ('L', -3.0, -9.6), ('L', -3.4, -9.6), ('L', -3.4, -10.0), ('L', -9.0, -10.0), |
| 32 | + ('A', -9.7071, -9.7071, -10.0, -9.0), ('L', -10.0, -3.4), ('L', -9.6, -3.4), ('L', -9.6, -3.0), |
| 33 | + ('L', -8.5, -3.0), ('L', -8.5, -6.0), ('L', -7.0, -6.0), ('L', -4.7, -3.35), ('L', -4.7, -0.65), |
| 34 | + ('L', -4.3, 0.0), ('L', -4.7, 0.65), ('L', -4.7, 3.35), ('L', -7.0, 6.0), ('L', -8.5, 6.0), ('L', -8.5, 3.0), |
| 35 | + ('L', -9.6, 3.0), ('L', -9.6, 3.4), ('L', -10.0, 3.4), ('L', -10.0, 9.0), ('A', -9.7071, 9.7071, -9.0, 10.0), |
| 36 | + ('L', -3.4, 10.0), ('L', -3.4, 9.6), ('L', -3.0, 9.6), ('L', -3.0, 8.5), ('L', -6.0, 8.5), ('L', -6.0, 7.0), |
| 37 | + ('L', -3.35, 4.7), ('L', -0.65, 4.7), ('L', 0.0, 4.3), ('L', 0.65, 4.7), ('L', 3.35, 4.7), ('L', 6.0, 7.0), |
| 38 | + ('L', 6.0, 8.5), ('L', 3.0, 8.5), ('L', 3.0, 9.6), ('L', 3.4, 9.6), ('L', 3.4, 10.0), ('L', 9.0, 10.0), |
| 39 | + ('A', 9.7071, 9.7071, 10.0, 9.0)], |
| 40 | + [1.3405, 2.4012, ('A', 0.6926, 2.6614, 0.0, 2.75), ('A', -0.6926, 2.6614, -1.3405, 2.4012), |
| 41 | + ('L', -1.9445, 3.0052), ('L', -2.4749, 2.4749), ('L', -3.0052, 1.9445), ('L', -2.4012, 1.3405), |
| 42 | + ('A', -2.6614, 0.6926, -2.75, 0.0), ('A', -2.6614, -0.6926, -2.4012, -1.3405), ('L', -3.0052, -1.9445), |
| 43 | + ('L', -2.4749, -2.4749), ('L', -1.9445, -3.0052), ('L', -1.3405, -2.4012), |
| 44 | + ('A', -0.6926, -2.6614, 0.0, -2.75), ('A', 0.6926, -2.6614, 1.3405, -2.4012), ('L', 1.9445, -3.0052), |
| 45 | + ('L', 2.4749, -2.4749), ('L', 3.0052, -1.9445), ('L', 2.4012, -1.3405), ('A', 2.6614, -0.6926, 2.75, 0.0), |
| 46 | + ('A', 2.6614, 0.6926, 2.4012, 1.3405), ('L', 3.0052, 1.9445), ('L', 2.4749, 2.4749), ('L', 1.9445, 3.0052), |
| 47 | + ('L', 1.3405, 2.4012)], |
| 48 | + ], |
| 49 | + # 2020-I5: FreeCAD-library "Profile-20x20-I-Type_Slot5.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 50 | + # step.parts profile_2020_i_slot5: section 20 x 20, |
| 51 | + # area 171.991 mm^2 on the model |
| 52 | + "2020-I5": [ |
| 53 | + [5.3295, -8.2, ('L', 3.1595, -8.2), ('A', 2.9473, -8.2879, 2.8595, -8.5), ('L', 2.8595, -9.2), |
| 54 | + ('A', 3.0938, -9.7657, 3.6595, -10.0), ('L', 8.2895, -10.0), ('A', 9.499, -9.499, 10.0, -8.2895), |
| 55 | + ('L', 10.0, -3.6595), ('A', 9.7657, -3.0938, 9.2, -2.8595), ('L', 8.5, -2.8595), |
| 56 | + ('A', 8.2879, -2.9473, 8.2, -3.1595), ('L', 8.2, -5.3295), ('A', 7.7138, -6.0446, 6.87, -5.8555), |
| 57 | + ('L', 4.53, -3.36), ('A', 3.878, -2.3314, 3.65, -1.135), ('L', 3.65, 0.0), ('L', 3.65, 1.135), |
| 58 | + ('A', 3.878, 2.3314, 4.53, 3.36), ('L', 6.87, 5.8555), ('A', 7.7138, 6.0446, 8.2, 5.3295), |
| 59 | + ('L', 8.2, 3.1595), ('A', 8.2879, 2.9473, 8.5, 2.8595), ('L', 9.2, 2.8595), |
| 60 | + ('A', 9.7657, 3.0938, 10.0, 3.6595), ('L', 10.0, 8.2895), ('A', 9.499, 9.499, 8.2895, 10.0), |
| 61 | + ('L', 3.6595, 10.0), ('A', 3.0938, 9.7657, 2.8595, 9.2), ('L', 2.8595, 8.5), |
| 62 | + ('A', 2.9473, 8.2879, 3.1595, 8.2), ('L', 5.3295, 8.2), ('A', 6.0446, 7.7138, 5.8555, 6.87), |
| 63 | + ('L', 3.36, 4.53), ('A', 2.3314, 3.878, 1.135, 3.65), ('L', 0.0, 3.65), ('L', -1.135, 3.65), |
| 64 | + ('A', -2.3314, 3.878, -3.36, 4.53), ('L', -5.8555, 6.87), ('A', -6.0446, 7.7138, -5.3295, 8.2), |
| 65 | + ('L', -3.1595, 8.2), ('A', -2.9473, 8.2879, -2.8595, 8.5), ('L', -2.8595, 9.2), |
| 66 | + ('A', -3.0938, 9.7657, -3.6595, 10.0), ('L', -8.2895, 10.0), ('A', -9.499, 9.499, -10.0, 8.2895), |
| 67 | + ('L', -10.0, 3.6595), ('A', -9.7657, 3.0938, -9.2, 2.8595), ('L', -8.5, 2.8595), |
| 68 | + ('A', -8.2879, 2.9473, -8.2, 3.1595), ('L', -8.2, 5.3295), ('A', -7.7138, 6.0446, -6.87, 5.8555), |
| 69 | + ('L', -4.53, 3.36), ('A', -3.878, 2.3314, -3.65, 1.135), ('L', -3.65, 0.0), ('L', -3.65, -1.135), |
| 70 | + ('A', -3.878, -2.3314, -4.53, -3.36), ('L', -6.87, -5.8555), ('A', -7.7138, -6.0446, -8.2, -5.3295), |
| 71 | + ('L', -8.2, -3.1595), ('A', -8.2879, -2.9473, -8.5, -2.8595), ('L', -9.2, -2.8595), |
| 72 | + ('A', -9.7657, -3.0938, -10.0, -3.6595), ('L', -10.0, -8.2895), ('A', -9.499, -9.499, -8.2895, -10.0), |
| 73 | + ('L', -3.6595, -10.0), ('A', -3.0938, -9.7657, -2.8595, -9.2), ('L', -2.8595, -8.5), |
| 74 | + ('A', -2.9473, -8.2879, -3.1595, -8.2), ('L', -5.3295, -8.2), ('A', -6.0446, -7.7138, -5.8555, -6.87), |
| 75 | + ('L', -3.36, -4.53), ('A', -2.3314, -3.878, -1.135, -3.65), ('L', 0.0, -3.65), ('L', 1.135, -3.65), |
| 76 | + ('A', 2.3314, -3.878, 3.36, -4.53), ('L', 5.8555, -6.87), ('A', 6.0446, -7.7138, 5.3295, -8.2)], |
| 77 | + [0.0, 2.15, ('A', 1.5203, 1.5203, 2.15, 0.0), ('A', 1.5203, -1.5203, 0.0, -2.15), |
| 78 | + ('A', -1.5203, -1.5203, -2.15, 0.0), ('A', -1.5203, 1.5203, 0.0, 2.15)], |
| 79 | + ], |
| 80 | + # 2020-I5-ISP: FreeCAD-library "Profile_20x20_I_Type_Slot5.stp" (Stefan Katerkamp, CC-BY-3.0), |
| 81 | + # step.parts profile_2020_i_slot5_item_compatible_l50: section 20 x 20, |
| 82 | + # area 181.6955 mm^2 on the model |
| 83 | + "2020-I5-ISP": [ |
| 84 | + [0.0, 3.45, ('L', -0.1772, 3.65), ('L', -2.3772, 3.65), ('L', -5.6469, 6.9197), |
| 85 | + ('A', -5.8095, 7.737, -5.1165, 8.2), ('L', -2.5, 8.2), ('L', -2.5, 9.5), ('A', -2.6464, 9.8536, -3.0, 10.0), |
| 86 | + ('L', -8.0, 10.0), ('A', -9.4142, 9.4142, -10.0, 8.0), ('L', -10.0, 3.0), ('A', -9.8536, 2.6464, -9.5, 2.5), |
| 87 | + ('L', -8.2, 2.5), ('L', -8.2, 5.1165), ('A', -7.737, 5.8095, -6.9197, 5.6469), ('L', -3.65, 2.3772), |
| 88 | + ('L', -3.65, 0.1772), ('L', -3.45, 0.0), ('L', -3.65, -0.1772), ('L', -3.65, -2.3772), |
| 89 | + ('L', -6.9197, -5.6469), ('A', -7.737, -5.8095, -8.2, -5.1165), ('L', -8.2, -2.5), ('L', -9.5, -2.5), |
| 90 | + ('A', -9.8536, -2.6464, -10.0, -3.0), ('L', -10.0, -8.0), ('A', -9.4142, -9.4142, -8.0, -10.0), |
| 91 | + ('L', -3.0, -10.0), ('A', -2.6464, -9.8536, -2.5, -9.5), ('L', -2.5, -8.2), ('L', -5.1165, -8.2), |
| 92 | + ('A', -5.8095, -7.737, -5.6469, -6.9197), ('L', -2.3772, -3.65), ('L', -0.1772, -3.65), ('L', 0.0, -3.45), |
| 93 | + ('L', 0.1772, -3.65), ('L', 2.3772, -3.65), ('L', 5.6469, -6.9197), ('A', 5.8095, -7.737, 5.1165, -8.2), |
| 94 | + ('L', 2.5, -8.2), ('L', 2.5, -9.5), ('A', 2.6464, -9.8536, 3.0, -10.0), ('L', 8.0, -10.0), |
| 95 | + ('A', 9.4142, -9.4142, 10.0, -8.0), ('L', 10.0, -3.0), ('A', 9.8536, -2.6464, 9.5, -2.5), ('L', 8.2, -2.5), |
| 96 | + ('L', 8.2, -5.1165), ('A', 7.737, -5.8095, 6.9197, -5.6469), ('L', 3.65, -2.3772), ('L', 3.65, -0.1772), |
| 97 | + ('L', 3.45, 0.0), ('L', 3.65, 0.1772), ('L', 3.65, 2.3772), ('L', 6.9197, 5.6469), |
| 98 | + ('A', 7.737, 5.8095, 8.2, 5.1165), ('L', 8.2, 2.5), ('L', 9.5, 2.5), ('A', 9.8536, 2.6464, 10.0, 3.0), |
| 99 | + ('L', 10.0, 8.0), ('A', 9.4142, 9.4142, 8.0, 10.0), ('L', 3.0, 10.0), ('A', 2.6464, 9.8536, 2.5, 9.5), |
| 100 | + ('L', 2.5, 8.2), ('L', 5.1165, 8.2), ('A', 5.8095, 7.737, 5.6469, 6.9197), ('L', 2.3772, 3.65), |
| 101 | + ('L', 0.1772, 3.65), ('L', 0.0, 3.45)], |
| 102 | + [-2.15, 0.0, ('A', -1.5203, 1.5203, 0.0, 2.15), ('A', 1.5203, 1.5203, 2.15, 0.0), |
| 103 | + ('A', 1.5203, -1.5203, 0.0, -2.15), ('A', -1.5203, -1.5203, -2.15, 0.0)], |
| 104 | + ], |
| 105 | + # 2040-B6: FreeCAD-library "Profile-20x40-B-Type_Slot6.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 106 | + # step.parts profile_2040_b_slot6: section 20 x 40, |
| 107 | + # area 286.7288 mm^2 on the model |
| 108 | + "2040-B6": [ |
| 109 | + [-10.0, -13.7, ('L', -10.0, -18.5), ('A', -9.5607, -19.5607, -8.5, -20.0), ('L', -3.7, -20.0), |
| 110 | + ('A', -3.5586, -19.9414, -3.5, -19.8), ('L', -3.5, -19.5), ('L', -3.2, -19.5), |
| 111 | + ('A', -3.0586, -19.4414, -3.0, -19.3), ('L', -3.0, -19.0), ('A', -3.1464, -18.6464, -3.5, -18.5), |
| 112 | + ('L', -5.5, -18.5), ('A', -5.8536, -18.3536, -6.0, -18.0), ('L', -6.0, -17.27), |
| 113 | + ('A', -5.9619, -17.0787, -5.8536, -16.9164), ('L', -3.5836, -14.6464), |
| 114 | + ('A', -3.4213, -14.5381, -3.23, -14.5), ('L', -0.955, -14.5), ('A', -0.9032, -14.4932, -0.8549, -14.4732), |
| 115 | + ('L', -0.1001, -14.0368), ('A', 0.0, -14.01, 0.1001, -14.0368), ('L', 0.8549, -14.4732), |
| 116 | + ('A', 0.9032, -14.4932, 0.955, -14.5), ('L', 3.23, -14.5), ('A', 3.4213, -14.5381, 3.5836, -14.6464), |
| 117 | + ('L', 5.8536, -16.9164), ('A', 5.9619, -17.0787, 6.0, -17.27), ('L', 6.0, -18.0), |
| 118 | + ('A', 5.8536, -18.3536, 5.5, -18.5), ('L', 3.5, -18.5), ('A', 3.1464, -18.6464, 3.0, -19.0), |
| 119 | + ('L', 3.0, -19.3), ('A', 3.0586, -19.4414, 3.2, -19.5), ('L', 3.5, -19.5), ('L', 3.5, -19.8), |
| 120 | + ('A', 3.5586, -19.9414, 3.7, -20.0), ('L', 8.5, -20.0), ('A', 9.5607, -19.5607, 10.0, -18.5), |
| 121 | + ('L', 10.0, -13.7), ('A', 9.9414, -13.5586, 9.8, -13.5), ('L', 9.5, -13.5), ('L', 9.5, -13.2), |
| 122 | + ('A', 9.4414, -13.0586, 9.3, -13.0), ('L', 9.0, -13.0), ('A', 8.6464, -13.1464, 8.5, -13.5), |
| 123 | + ('L', 8.5, -15.5), ('A', 8.3536, -15.8536, 8.0, -16.0), ('L', 7.27, -16.0), |
| 124 | + ('A', 7.0787, -15.9619, 6.9164, -15.8536), ('L', 4.6464, -13.5836), ('A', 4.5381, -13.4213, 4.5, -13.23), |
| 125 | + ('L', 4.5, -10.955), ('A', 4.4932, -10.9032, 4.4732, -10.8549), ('L', 4.0368, -10.1001), |
| 126 | + ('A', 4.01, -10.0, 4.0368, -9.8999), ('L', 4.4732, -9.1451), ('A', 4.4932, -9.0968, 4.5, -9.045), |
| 127 | + ('L', 4.5, -6.77), ('A', 4.5381, -6.5787, 4.6464, -6.4164), ('L', 6.9164, -4.1464), |
| 128 | + ('A', 7.0787, -4.0381, 7.27, -4.0), ('L', 8.0, -4.0), ('A', 8.3536, -4.1464, 8.5, -4.5), ('L', 8.5, -6.5), |
| 129 | + ('A', 8.6464, -6.8536, 9.0, -7.0), ('L', 9.3, -7.0), ('A', 9.4414, -6.9414, 9.5, -6.8), ('L', 9.5, -6.5), |
| 130 | + ('L', 9.8, -6.5), ('A', 9.9414, -6.4414, 10.0, -6.3), ('L', 10.0, 6.3), ('A', 9.9414, 6.4414, 9.8, 6.5), |
| 131 | + ('L', 9.5, 6.5), ('L', 9.5, 6.8), ('A', 9.4414, 6.9414, 9.3, 7.0), ('L', 9.0, 7.0), |
| 132 | + ('A', 8.6464, 6.8536, 8.5, 6.5), ('L', 8.5, 4.5), ('A', 8.3536, 4.1464, 8.0, 4.0), ('L', 7.27, 4.0), |
| 133 | + ('A', 7.0787, 4.0381, 6.9164, 4.1464), ('L', 4.6464, 6.4164), ('A', 4.5381, 6.5787, 4.5, 6.77), |
| 134 | + ('L', 4.5, 9.045), ('A', 4.4932, 9.0968, 4.4732, 9.1451), ('L', 4.0368, 9.8999), |
| 135 | + ('A', 4.01, 10.0, 4.0368, 10.1001), ('L', 4.4732, 10.8549), ('A', 4.4932, 10.9032, 4.5, 10.955), |
| 136 | + ('L', 4.5, 13.23), ('A', 4.5381, 13.4213, 4.6464, 13.5836), ('L', 6.9164, 15.8536), |
| 137 | + ('A', 7.0787, 15.9619, 7.27, 16.0), ('L', 8.0, 16.0), ('A', 8.3536, 15.8536, 8.5, 15.5), ('L', 8.5, 13.5), |
| 138 | + ('A', 8.6464, 13.1464, 9.0, 13.0), ('L', 9.3, 13.0), ('A', 9.4414, 13.0586, 9.5, 13.2), ('L', 9.5, 13.5), |
| 139 | + ('L', 9.8, 13.5), ('A', 9.9414, 13.5586, 10.0, 13.7), ('L', 10.0, 18.5), ('A', 9.5607, 19.5607, 8.5, 20.0), |
| 140 | + ('L', 3.7, 20.0), ('A', 3.5586, 19.9414, 3.5, 19.8), ('L', 3.5, 19.5), ('L', 3.2, 19.5), |
| 141 | + ('A', 3.0586, 19.4414, 3.0, 19.3), ('L', 3.0, 19.0), ('A', 3.1464, 18.6464, 3.5, 18.5), ('L', 5.5, 18.5), |
| 142 | + ('A', 5.8536, 18.3536, 6.0, 18.0), ('L', 6.0, 17.27), ('A', 5.9619, 17.0787, 5.8536, 16.9164), |
| 143 | + ('L', 3.5836, 14.6464), ('A', 3.4213, 14.5381, 3.23, 14.5), ('L', 0.955, 14.5), |
| 144 | + ('A', 0.9032, 14.4932, 0.8549, 14.4732), ('L', 0.1001, 14.0368), ('A', 0.0, 14.01, -0.1001, 14.0368), |
| 145 | + ('L', -0.8549, 14.4732), ('A', -0.9032, 14.4932, -0.955, 14.5), ('L', -3.23, 14.5), |
| 146 | + ('A', -3.4213, 14.5381, -3.5836, 14.6464), ('L', -5.8536, 16.9164), ('A', -5.9619, 17.0787, -6.0, 17.27), |
| 147 | + ('L', -6.0, 18.0), ('A', -5.8536, 18.3536, -5.5, 18.5), ('L', -3.5, 18.5), |
| 148 | + ('A', -3.1464, 18.6464, -3.0, 19.0), ('L', -3.0, 19.3), ('A', -3.0586, 19.4414, -3.2, 19.5), |
| 149 | + ('L', -3.5, 19.5), ('L', -3.5, 19.8), ('A', -3.5586, 19.9414, -3.7, 20.0), ('L', -8.5, 20.0), |
| 150 | + ('A', -9.5607, 19.5607, -10.0, 18.5), ('L', -10.0, 13.7), ('A', -9.9414, 13.5586, -9.8, 13.5), |
| 151 | + ('L', -9.5, 13.5), ('L', -9.5, 13.2), ('A', -9.4414, 13.0586, -9.3, 13.0), ('L', -9.0, 13.0), |
| 152 | + ('A', -8.6464, 13.1464, -8.5, 13.5), ('L', -8.5, 15.5), ('A', -8.3536, 15.8536, -8.0, 16.0), |
| 153 | + ('L', -7.27, 16.0), ('A', -7.0787, 15.9619, -6.9164, 15.8536), ('L', -4.6464, 13.5836), |
| 154 | + ('A', -4.5381, 13.4213, -4.5, 13.23), ('L', -4.5, 10.955), ('A', -4.4932, 10.9032, -4.4732, 10.8549), |
| 155 | + ('L', -4.0368, 10.1001), ('A', -4.01, 10.0, -4.0368, 9.8999), ('L', -4.4732, 9.1451), |
| 156 | + ('A', -4.4932, 9.0968, -4.5, 9.045), ('L', -4.5, 6.77), ('A', -4.5381, 6.5787, -4.6464, 6.4164), |
| 157 | + ('L', -6.9164, 4.1464), ('A', -7.0787, 4.0381, -7.27, 4.0), ('L', -8.0, 4.0), |
| 158 | + ('A', -8.3536, 4.1464, -8.5, 4.5), ('L', -8.5, 6.5), ('A', -8.6464, 6.8536, -9.0, 7.0), ('L', -9.3, 7.0), |
| 159 | + ('A', -9.4414, 6.9414, -9.5, 6.8), ('L', -9.5, 6.5), ('L', -9.8, 6.5), ('A', -9.9414, 6.4414, -10.0, 6.3), |
| 160 | + ('L', -10.0, -6.3), ('A', -9.9414, -6.4414, -9.8, -6.5), ('L', -9.5, -6.5), ('L', -9.5, -6.8), |
| 161 | + ('A', -9.4414, -6.9414, -9.3, -7.0), ('L', -9.0, -7.0), ('A', -8.6464, -6.8536, -8.5, -6.5), |
| 162 | + ('L', -8.5, -4.5), ('A', -8.3536, -4.1464, -8.0, -4.0), ('L', -7.27, -4.0), |
| 163 | + ('A', -7.0787, -4.0381, -6.9164, -4.1464), ('L', -4.6464, -6.4164), ('A', -4.5381, -6.5787, -4.5, -6.77), |
| 164 | + ('L', -4.5, -9.045), ('A', -4.4932, -9.0968, -4.4732, -9.1451), ('L', -4.0368, -9.8999), |
| 165 | + ('A', -4.01, -10.0, -4.0368, -10.1001), ('L', -4.4732, -10.8549), ('A', -4.4932, -10.9032, -4.5, -10.955), |
| 166 | + ('L', -4.5, -13.23), ('A', -4.5381, -13.4213, -4.6464, -13.5836), ('L', -6.9164, -15.8536), |
| 167 | + ('A', -7.0787, -15.9619, -7.27, -16.0), ('L', -8.0, -16.0), ('A', -8.3536, -15.8536, -8.5, -15.5), |
| 168 | + ('L', -8.5, -13.5), ('A', -8.6464, -13.1464, -9.0, -13.0), ('L', -9.3, -13.0), |
| 169 | + ('A', -9.4414, -13.0586, -9.5, -13.2), ('L', -9.5, -13.5), ('L', -9.8, -13.5), |
| 170 | + ('A', -9.9414, -13.5586, -10.0, -13.7)], |
| 171 | + [-1.9116, -12.9914, ('A', -2.5102, -12.5102, -2.9914, -11.9116), ('L', -2.4456, -11.2576), |
| 172 | + ('A', -2.75, -10.0, -2.4456, -8.7424), ('L', -2.9914, -8.0884), ('A', -2.5102, -7.4898, -1.9116, -7.0086), |
| 173 | + ('L', -1.2576, -7.5544), ('A', 0.0, -7.25, 1.2576, -7.5544), ('L', 1.9116, -7.0086), |
| 174 | + ('A', 2.5102, -7.4898, 2.9914, -8.0884), ('L', 2.4456, -8.7424), ('A', 2.75, -10.0, 2.4456, -11.2576), |
| 175 | + ('L', 2.9914, -11.9116), ('A', 2.5102, -12.5102, 1.9116, -12.9914), ('L', 1.2576, -12.4456), |
| 176 | + ('A', 0.0, -12.75, -1.2576, -12.4456), ('L', -1.9116, -12.9914)], |
| 177 | + [6.645, -2.5, ('A', 6.4537, -2.538, 6.2915, -2.6464), ('L', 3.5835, -5.3536), |
| 178 | + ('A', 3.4213, -5.462, 3.23, -5.5), ('L', 0.955, -5.5), ('A', 0.9032, -5.5068, 0.8549, -5.5268), |
| 179 | + ('L', 0.1001, -5.9632), ('A', 0.0, -5.99, -0.1001, -5.9632), ('L', -0.8549, -5.5268), |
| 180 | + ('A', -0.9032, -5.5068, -0.955, -5.5), ('L', -3.23, -5.5), ('A', -3.4213, -5.462, -3.5835, -5.3536), |
| 181 | + ('L', -6.2915, -2.6464), ('A', -6.4537, -2.538, -6.645, -2.5), ('L', -8.0, -2.5), |
| 182 | + ('A', -8.3536, -2.3536, -8.5, -2.0), ('L', -8.5, 0.0), ('L', -8.5, 2.0), ('A', -8.3536, 2.3536, -8.0, 2.5), |
| 183 | + ('L', -6.645, 2.5), ('A', -6.4537, 2.538, -6.2915, 2.6464), ('L', -3.5835, 5.3536), |
| 184 | + ('A', -3.4213, 5.462, -3.23, 5.5), ('L', -0.955, 5.5), ('A', -0.9032, 5.5068, -0.8549, 5.5268), |
| 185 | + ('L', -0.1001, 5.9632), ('A', 0.0, 5.99, 0.1001, 5.9632), ('L', 0.8549, 5.5268), |
| 186 | + ('A', 0.9032, 5.5068, 0.955, 5.5), ('L', 3.23, 5.5), ('A', 3.4213, 5.462, 3.5835, 5.3536), |
| 187 | + ('L', 6.2915, 2.6464), ('A', 6.4537, 2.538, 6.645, 2.5), ('L', 8.0, 2.5), ('A', 8.3536, 2.3536, 8.5, 2.0), |
| 188 | + ('L', 8.5, 0.0), ('L', 8.5, -2.0), ('A', 8.3536, -2.3536, 8.0, -2.5), ('L', 6.645, -2.5)], |
| 189 | + [-2.4456, 11.2576, ('L', -2.9914, 11.9116), ('A', -2.5102, 12.5102, -1.9116, 12.9914), |
| 190 | + ('L', -1.2576, 12.4456), ('A', 0.0, 12.75, 1.2576, 12.4456), ('L', 1.9116, 12.9914), |
| 191 | + ('A', 2.5102, 12.5102, 2.9914, 11.9116), ('L', 2.4456, 11.2576), ('A', 2.75, 10.0, 2.4456, 8.7424), |
| 192 | + ('L', 2.9914, 8.0884), ('A', 2.5102, 7.4898, 1.9116, 7.0086), ('L', 1.2576, 7.5544), |
| 193 | + ('A', 0.0, 7.25, -1.2576, 7.5544), ('L', -1.9116, 7.0086), ('A', -2.5102, 7.4898, -2.9914, 8.0884), |
| 194 | + ('L', -2.4456, 8.7424), ('A', -2.75, 10.0, -2.4456, 11.2576)], |
| 195 | + ], |
| 196 | + # 3030-B8: FreeCAD-library "Profile-30x30-B-Type_Slot8.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 197 | + # step.parts profile_3030_b_slot8: section 30 x 30, |
| 198 | + # area 313.8248 mm^2 on the model |
| 199 | + "3030-B8": [ |
| 200 | + [-15.0, -4.7, ('L', -15.0, -13.0), ('A', -14.4142, -14.4142, -13.0, -15.0), ('L', -4.7, -15.0), |
| 201 | + ('A', -4.5586, -14.9414, -4.5, -14.8), ('L', -4.5, -14.5), ('L', -4.2, -14.5), |
| 202 | + ('A', -4.0586, -14.4414, -4.0, -14.3), ('L', -4.0, -13.3), ('A', -4.1464, -12.9464, -4.5, -12.8), |
| 203 | + ('L', -7.75, -12.8), ('A', -8.1036, -12.6536, -8.25, -12.3), ('L', -8.25, -10.2534), |
| 204 | + ('A', -8.212, -10.0622, -8.1037, -9.9), ('L', -4.3537, -6.1466), ('A', -4.1914, -6.0381, -4.0, -6.0), |
| 205 | + ('L', -0.95, -6.0), ('A', -0.8989, -5.9934, -0.8511, -5.9739), ('L', -0.0989, -5.5461), |
| 206 | + ('A', 0.0, -5.52, 0.0989, -5.5461), ('L', 0.8511, -5.9739), ('A', 0.8989, -5.9934, 0.95, -6.0), |
| 207 | + ('L', 4.0, -6.0), ('A', 4.1914, -6.0381, 4.3537, -6.1466), ('L', 8.1037, -9.9), |
| 208 | + ('A', 8.212, -10.0622, 8.25, -10.2534), ('L', 8.25, -12.3), ('A', 8.1036, -12.6536, 7.75, -12.8), |
| 209 | + ('L', 4.5, -12.8), ('A', 4.1464, -12.9464, 4.0, -13.3), ('L', 4.0, -14.3), |
| 210 | + ('A', 4.0586, -14.4414, 4.2, -14.5), ('L', 4.5, -14.5), ('L', 4.5, -14.8), |
| 211 | + ('A', 4.5586, -14.9414, 4.7, -15.0), ('L', 13.0, -15.0), ('A', 14.4142, -14.4142, 15.0, -13.0), |
| 212 | + ('L', 15.0, -4.7), ('A', 14.9414, -4.5586, 14.8, -4.5), ('L', 14.5, -4.5), ('L', 14.5, -4.2), |
| 213 | + ('A', 14.4414, -4.0586, 14.3, -4.0), ('L', 13.3, -4.0), ('A', 12.9464, -4.1464, 12.8, -4.5), |
| 214 | + ('L', 12.8, -7.75), ('A', 12.6536, -8.1036, 12.3, -8.25), ('L', 10.2534, -8.25), |
| 215 | + ('A', 10.0622, -8.212, 9.9, -8.1037), ('L', 6.1466, -4.3537), ('A', 6.0381, -4.1914, 6.0, -4.0), |
| 216 | + ('L', 6.0, -0.95), ('A', 5.9934, -0.8989, 5.9739, -0.8511), ('L', 5.5461, -0.0989), |
| 217 | + ('A', 5.52, 0.0, 5.5461, 0.0989), ('L', 5.9739, 0.8511), ('A', 5.9934, 0.8989, 6.0, 0.95), ('L', 6.0, 4.0), |
| 218 | + ('A', 6.0381, 4.1914, 6.1466, 4.3537), ('L', 9.9, 8.1037), ('A', 10.0622, 8.212, 10.2534, 8.25), |
| 219 | + ('L', 12.3, 8.25), ('A', 12.6536, 8.1036, 12.8, 7.75), ('L', 12.8, 4.5), ('A', 12.9464, 4.1464, 13.3, 4.0), |
| 220 | + ('L', 14.3, 4.0), ('A', 14.4414, 4.0586, 14.5, 4.2), ('L', 14.5, 4.5), ('L', 14.8, 4.5), |
| 221 | + ('A', 14.9414, 4.5586, 15.0, 4.7), ('L', 15.0, 13.0), ('A', 14.4142, 14.4142, 13.0, 15.0), ('L', 4.7, 15.0), |
| 222 | + ('A', 4.5586, 14.9414, 4.5, 14.8), ('L', 4.5, 14.5), ('L', 4.2, 14.5), ('A', 4.0586, 14.4414, 4.0, 14.3), |
| 223 | + ('L', 4.0, 13.3), ('A', 4.1464, 12.9464, 4.5, 12.8), ('L', 7.75, 12.8), ('A', 8.1036, 12.6536, 8.25, 12.3), |
| 224 | + ('L', 8.25, 10.2534), ('A', 8.212, 10.0622, 8.1037, 9.9), ('L', 4.3537, 6.1466), |
| 225 | + ('A', 4.1914, 6.0381, 4.0, 6.0), ('L', 0.95, 6.0), ('A', 0.8989, 5.9934, 0.8511, 5.9739), |
| 226 | + ('L', 0.0989, 5.5461), ('A', 0.0, 5.52, -0.0989, 5.5461), ('L', -0.8511, 5.9739), |
| 227 | + ('A', -0.8989, 5.9934, -0.95, 6.0), ('L', -4.0, 6.0), ('A', -4.1914, 6.0381, -4.3537, 6.1466), |
| 228 | + ('L', -8.1037, 9.9), ('A', -8.212, 10.0622, -8.25, 10.2534), ('L', -8.25, 12.3), |
| 229 | + ('A', -8.1036, 12.6536, -7.75, 12.8), ('L', -4.5, 12.8), ('A', -4.1464, 12.9464, -4.0, 13.3), |
| 230 | + ('L', -4.0, 14.3), ('A', -4.0586, 14.4414, -4.2, 14.5), ('L', -4.5, 14.5), ('L', -4.5, 14.8), |
| 231 | + ('A', -4.5586, 14.9414, -4.7, 15.0), ('L', -13.0, 15.0), ('A', -14.4142, 14.4142, -15.0, 13.0), |
| 232 | + ('L', -15.0, 4.7), ('A', -14.9414, 4.5586, -14.8, 4.5), ('L', -14.5, 4.5), ('L', -14.5, 4.2), |
| 233 | + ('A', -14.4414, 4.0586, -14.3, 4.0), ('L', -13.3, 4.0), ('A', -12.9464, 4.1464, -12.8, 4.5), |
| 234 | + ('L', -12.8, 7.75), ('A', -12.6536, 8.1036, -12.3, 8.25), ('L', -10.2534, 8.25), |
| 235 | + ('A', -10.0622, 8.212, -9.9, 8.1037), ('L', -6.1466, 4.3537), ('A', -6.0381, 4.1914, -6.0, 4.0), |
| 236 | + ('L', -6.0, 0.95), ('A', -5.9934, 0.8989, -5.9739, 0.8511), ('L', -5.5461, 0.0989), |
| 237 | + ('A', -5.52, 0.0, -5.5461, -0.0989), ('L', -5.9739, -0.8511), ('A', -5.9934, -0.8989, -6.0, -0.95), |
| 238 | + ('L', -6.0, -4.0), ('A', -6.0381, -4.1914, -6.1466, -4.3537), ('L', -9.9, -8.1037), |
| 239 | + ('A', -10.0622, -8.212, -10.2534, -8.25), ('L', -12.3, -8.25), ('A', -12.6536, -8.1036, -12.8, -7.75), |
| 240 | + ('L', -12.8, -4.5), ('A', -12.9464, -4.1464, -13.3, -4.0), ('L', -14.3, -4.0), |
| 241 | + ('A', -14.4414, -4.0586, -14.5, -4.2), ('L', -14.5, -4.5), ('L', -14.8, -4.5), |
| 242 | + ('A', -14.9414, -4.5586, -15.0, -4.7)], |
| 243 | + [-13.7, -12.7, ('L', -13.7, -10.5), ('A', -13.4071, -9.7929, -12.7, -9.5), ('L', -10.5, -9.5), |
| 244 | + ('A', -9.7929, -9.7929, -9.5, -10.5), ('L', -9.5, -12.7), ('A', -9.7929, -13.4071, -10.5, -13.7), |
| 245 | + ('L', -12.7, -13.7), ('A', -13.4071, -13.4071, -13.7, -12.7)], |
| 246 | + [12.7, -13.7, ('L', 10.5, -13.7), ('A', 9.7929, -13.4071, 9.5, -12.7), ('L', 9.5, -10.5), |
| 247 | + ('A', 9.7929, -9.7929, 10.5, -9.5), ('L', 12.7, -9.5), ('A', 13.4071, -9.7929, 13.7, -10.5), |
| 248 | + ('L', 13.7, -12.7), ('A', 13.4071, -13.4071, 12.7, -13.7)], |
| 249 | + [3.2812, 1.5988, ('A', 3.5566, 0.8204, 3.65, 0.0), ('A', 3.5567, -0.82, 3.2815, -1.5981), |
| 250 | + ('L', 4.5132, -3.1434), ('A', 3.8895, -3.8887, 3.1444, -4.5125), ('L', 1.5988, -3.2812), |
| 251 | + ('A', 0.0004, -3.65, -1.5981, -3.2815), ('L', -3.1434, -4.5132), ('A', -3.8887, -3.8895, -4.5125, -3.1444), |
| 252 | + ('L', -3.2812, -1.5988), ('A', -3.65, -0.0004, -3.2815, 1.5981), ('L', -4.5132, 3.1434), |
| 253 | + ('A', -3.8895, 3.8887, -3.1444, 4.5125), ('L', -1.5988, 3.2812), ('A', -0.0004, 3.65, 1.5981, 3.2815), |
| 254 | + ('L', 3.1434, 4.5132), ('A', 3.8887, 3.8895, 4.5125, 3.1444), ('L', 3.2812, 1.5988)], |
| 255 | + [-12.7, 13.7, ('L', -10.5, 13.7), ('A', -9.7929, 13.4071, -9.5, 12.7), ('L', -9.5, 10.5), |
| 256 | + ('A', -9.7929, 9.7929, -10.5, 9.5), ('L', -12.7, 9.5), ('A', -13.4071, 9.7929, -13.7, 10.5), |
| 257 | + ('L', -13.7, 12.7), ('A', -13.4071, 13.4071, -12.7, 13.7)], |
| 258 | + [13.7, 12.7, ('L', 13.7, 10.5), ('A', 13.4071, 9.7929, 12.7, 9.5), ('L', 10.5, 9.5), |
| 259 | + ('A', 9.7929, 9.7929, 9.5, 10.5), ('L', 9.5, 12.7), ('A', 9.7929, 13.4071, 10.5, 13.7), ('L', 12.7, 13.7), |
| 260 | + ('A', 13.4071, 13.4071, 13.7, 12.7)], |
| 261 | + ], |
| 262 | + # 3030-HFS6: FreeCAD-library "misumi_profile_hfs_serie6_w8_30x30.step" (Felipe Machado, CC-BY-3.0), |
| 263 | + # step.parts profile_misumi_hfs6_30x30_w8_l50: section 30 x 30, |
| 264 | + # area 335.1129 mm^2 on the model |
| 265 | + "3030-HFS6": [ |
| 266 | + [4.5858, 6.0, ('L', -4.5858, 6.0), ('L', -8.25, 9.6642), ('L', -8.25, 13.0), ('L', -4.0, 13.0), |
| 267 | + ('L', -4.0, 15.0), ('L', -14.0, 15.0), ('A', -14.7071, 14.7071, -15.0, 14.0), ('L', -15.0, 4.0), |
| 268 | + ('L', -13.0, 4.0), ('L', -13.0, 8.25), ('L', -9.6642, 8.25), ('L', -6.0, 4.5858), ('L', -6.0, -4.5858), |
| 269 | + ('L', -9.6642, -8.25), ('L', -13.0, -8.25), ('L', -13.0, -4.0), ('L', -15.0, -4.0), ('L', -15.0, -14.0), |
| 270 | + ('A', -14.7071, -14.7071, -14.0, -15.0), ('L', -4.0, -15.0), ('L', -4.0, -13.0), ('L', -8.25, -13.0), |
| 271 | + ('L', -8.25, -9.6642), ('L', -4.5858, -6.0), ('L', 4.5858, -6.0), ('L', 8.25, -9.6642), ('L', 8.25, -13.0), |
| 272 | + ('L', 4.0, -13.0), ('L', 4.0, -15.0), ('L', 14.0, -15.0), ('A', 14.7071, -14.7071, 15.0, -14.0), |
| 273 | + ('L', 15.0, -4.0), ('L', 13.0, -4.0), ('L', 13.0, -8.25), ('L', 9.6642, -8.25), ('L', 6.0, -4.5858), |
| 274 | + ('L', 6.0, 4.5858), ('L', 9.6642, 8.25), ('L', 13.0, 8.25), ('L', 13.0, 4.0), ('L', 15.0, 4.0), |
| 275 | + ('L', 15.0, 14.0), ('A', 14.7071, 14.7071, 14.0, 15.0), ('L', 4.0, 15.0), ('L', 4.0, 13.0), |
| 276 | + ('L', 8.25, 13.0), ('L', 8.25, 9.6642), ('L', 4.5858, 6.0)], |
| 277 | + [('C', 11.6, -11.6, 2.1)], |
| 278 | + [('C', 0.0, 0.0, 3.4)], |
| 279 | + [('C', 11.6, 11.6, 2.1)], |
| 280 | + [('C', -11.6, -11.6, 2.1)], |
| 281 | + [('C', -11.6, 11.6, 2.1)], |
| 282 | + ], |
| 283 | + # 3060-B8: FreeCAD-library "Profile-30x60-B-Type_Slot8.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 284 | + # step.parts profile_3060_b_slot8: section 30 x 60, |
| 285 | + # area 552.5767 mm^2 on the model |
| 286 | + "3060-B8": [ |
| 287 | + [-15.0, -19.7, ('L', -15.0, -28.0), ('A', -14.4142, -29.4142, -13.0, -30.0), ('L', -4.7, -30.0), |
| 288 | + ('A', -4.5586, -29.9414, -4.5, -29.8), ('L', -4.5, -29.5), ('L', -4.2, -29.5), |
| 289 | + ('A', -4.0586, -29.4414, -4.0, -29.3), ('L', -4.0, -28.3), ('A', -4.1464, -27.9464, -4.5, -27.8), |
| 290 | + ('L', -7.75, -27.8), ('A', -8.1036, -27.6536, -8.25, -27.3), ('L', -8.25, -25.26), |
| 291 | + ('A', -8.212, -25.0688, -8.1038, -24.9067), ('L', -4.3488, -21.1467), |
| 292 | + ('A', -4.1865, -21.0381, -3.995, -21.0), ('L', -0.955, -21.0), ('A', -0.9042, -20.9934, -0.8566, -20.9741), |
| 293 | + ('L', -0.0984, -20.5459), ('A', 0.0, -20.52, 0.0984, -20.5459), ('L', 0.8566, -20.9741), |
| 294 | + ('A', 0.9042, -20.9934, 0.955, -21.0), ('L', 3.995, -21.0), ('A', 4.1865, -21.0381, 4.3488, -21.1467), |
| 295 | + ('L', 8.1038, -24.9067), ('A', 8.212, -25.0688, 8.25, -25.26), ('L', 8.25, -27.3), |
| 296 | + ('A', 8.1036, -27.6536, 7.75, -27.8), ('L', 4.5, -27.8), ('A', 4.1464, -27.9464, 4.0, -28.3), |
| 297 | + ('L', 4.0, -29.3), ('A', 4.0586, -29.4414, 4.2, -29.5), ('L', 4.5, -29.5), ('L', 4.5, -29.8), |
| 298 | + ('A', 4.5586, -29.9414, 4.7, -30.0), ('L', 13.0, -30.0), ('A', 14.4142, -29.4142, 15.0, -28.0), |
| 299 | + ('L', 15.0, -19.7), ('A', 14.9414, -19.5586, 14.8, -19.5), ('L', 14.5, -19.5), ('L', 14.5, -19.2), |
| 300 | + ('A', 14.4414, -19.0586, 14.3, -19.0), ('L', 13.3, -19.0), ('A', 12.9464, -19.1464, 12.8, -19.5), |
| 301 | + ('L', 12.8, -22.75), ('A', 12.6536, -23.1036, 12.3, -23.25), ('L', 10.26, -23.25), |
| 302 | + ('A', 10.0688, -23.212, 9.9067, -23.1038), ('L', 6.1467, -19.3488), ('A', 6.0381, -19.1865, 6.0, -18.995), |
| 303 | + ('L', 6.0, -15.955), ('A', 5.9934, -15.9042, 5.9741, -15.8566), ('L', 5.5459, -15.0984), |
| 304 | + ('A', 5.52, -15.0, 5.5459, -14.9016), ('L', 5.9741, -14.1434), ('A', 5.9934, -14.0958, 6.0, -14.045), |
| 305 | + ('L', 6.0, -11.005), ('A', 6.0381, -10.8135, 6.1467, -10.6512), ('L', 9.9067, -6.8962), |
| 306 | + ('A', 10.0688, -6.788, 10.26, -6.75), ('L', 12.3, -6.75), ('A', 12.6536, -6.8964, 12.8, -7.25), |
| 307 | + ('L', 12.8, -10.5), ('A', 12.9464, -10.8536, 13.3, -11.0), ('L', 14.3, -11.0), |
| 308 | + ('A', 14.4414, -10.9414, 14.5, -10.8), ('L', 14.5, -10.5), ('L', 14.8, -10.5), |
| 309 | + ('A', 14.9414, -10.4414, 15.0, -10.3), ('L', 15.0, 10.3), ('A', 14.9414, 10.4414, 14.8, 10.5), |
| 310 | + ('L', 14.5, 10.5), ('L', 14.5, 10.8), ('A', 14.4414, 10.9414, 14.3, 11.0), ('L', 13.3, 11.0), |
| 311 | + ('A', 12.9464, 10.8536, 12.8, 10.5), ('L', 12.8, 7.25), ('A', 12.6536, 6.8964, 12.3, 6.75), |
| 312 | + ('L', 10.26, 6.75), ('A', 10.0688, 6.788, 9.9067, 6.8962), ('L', 6.1467, 10.6512), |
| 313 | + ('A', 6.0381, 10.8135, 6.0, 11.005), ('L', 6.0, 14.045), ('A', 5.9934, 14.0958, 5.9741, 14.1434), |
| 314 | + ('L', 5.5459, 14.9016), ('A', 5.52, 15.0, 5.5459, 15.0984), ('L', 5.9741, 15.8566), |
| 315 | + ('A', 5.9934, 15.9042, 6.0, 15.955), ('L', 6.0, 18.995), ('A', 6.0381, 19.1865, 6.1467, 19.3488), |
| 316 | + ('L', 9.9067, 23.1038), ('A', 10.0688, 23.212, 10.26, 23.25), ('L', 12.3, 23.25), |
| 317 | + ('A', 12.6536, 23.1036, 12.8, 22.75), ('L', 12.8, 19.5), ('A', 12.9464, 19.1464, 13.3, 19.0), |
| 318 | + ('L', 14.3, 19.0), ('A', 14.4414, 19.0586, 14.5, 19.2), ('L', 14.5, 19.5), ('L', 14.8, 19.5), |
| 319 | + ('A', 14.9414, 19.5586, 15.0, 19.7), ('L', 15.0, 28.0), ('A', 14.4142, 29.4142, 13.0, 30.0), |
| 320 | + ('L', 4.7, 30.0), ('A', 4.5586, 29.9414, 4.5, 29.8), ('L', 4.5, 29.5), ('L', 4.2, 29.5), |
| 321 | + ('A', 4.0586, 29.4414, 4.0, 29.3), ('L', 4.0, 28.3), ('A', 4.1464, 27.9464, 4.5, 27.8), ('L', 7.75, 27.8), |
| 322 | + ('A', 8.1036, 27.6536, 8.25, 27.3), ('L', 8.25, 25.26), ('A', 8.212, 25.0688, 8.1038, 24.9067), |
| 323 | + ('L', 4.3488, 21.1467), ('A', 4.1865, 21.0381, 3.995, 21.0), ('L', 0.955, 21.0), |
| 324 | + ('A', 0.9042, 20.9934, 0.8566, 20.9741), ('L', 0.0984, 20.5459), ('A', 0.0, 20.52, -0.0984, 20.5459), |
| 325 | + ('L', -0.8566, 20.9741), ('A', -0.9042, 20.9934, -0.955, 21.0), ('L', -3.995, 21.0), |
| 326 | + ('A', -4.1865, 21.0381, -4.3488, 21.1467), ('L', -8.1038, 24.9067), ('A', -8.212, 25.0688, -8.25, 25.26), |
| 327 | + ('L', -8.25, 27.3), ('A', -8.1036, 27.6536, -7.75, 27.8), ('L', -4.5, 27.8), |
| 328 | + ('A', -4.1464, 27.9464, -4.0, 28.3), ('L', -4.0, 29.3), ('A', -4.0586, 29.4414, -4.2, 29.5), |
| 329 | + ('L', -4.5, 29.5), ('L', -4.5, 29.8), ('A', -4.5586, 29.9414, -4.7, 30.0), ('L', -13.0, 30.0), |
| 330 | + ('A', -14.4142, 29.4142, -15.0, 28.0), ('L', -15.0, 19.7), ('A', -14.9414, 19.5586, -14.8, 19.5), |
| 331 | + ('L', -14.5, 19.5), ('L', -14.5, 19.2), ('A', -14.4414, 19.0586, -14.3, 19.0), ('L', -13.3, 19.0), |
| 332 | + ('A', -12.9464, 19.1464, -12.8, 19.5), ('L', -12.8, 22.75), ('A', -12.6536, 23.1036, -12.3, 23.25), |
| 333 | + ('L', -10.26, 23.25), ('A', -10.0688, 23.212, -9.9067, 23.1038), ('L', -6.1467, 19.3488), |
| 334 | + ('A', -6.0381, 19.1865, -6.0, 18.995), ('L', -6.0, 15.955), ('A', -5.9934, 15.9042, -5.9741, 15.8566), |
| 335 | + ('L', -5.5459, 15.0984), ('A', -5.52, 15.0, -5.5459, 14.9016), ('L', -5.9741, 14.1434), |
| 336 | + ('A', -5.9934, 14.0958, -6.0, 14.045), ('L', -6.0, 11.005), ('A', -6.0381, 10.8135, -6.1467, 10.6512), |
| 337 | + ('L', -9.9067, 6.8962), ('A', -10.0688, 6.788, -10.26, 6.75), ('L', -12.3, 6.75), |
| 338 | + ('A', -12.6536, 6.8964, -12.8, 7.25), ('L', -12.8, 10.5), ('A', -12.9464, 10.8536, -13.3, 11.0), |
| 339 | + ('L', -14.3, 11.0), ('A', -14.4414, 10.9414, -14.5, 10.8), ('L', -14.5, 10.5), ('L', -14.8, 10.5), |
| 340 | + ('A', -14.9414, 10.4414, -15.0, 10.3), ('L', -15.0, -10.3), ('A', -14.9414, -10.4414, -14.8, -10.5), |
| 341 | + ('L', -14.5, -10.5), ('L', -14.5, -10.8), ('A', -14.4414, -10.9414, -14.3, -11.0), ('L', -13.3, -11.0), |
| 342 | + ('A', -12.9464, -10.8536, -12.8, -10.5), ('L', -12.8, -7.25), ('A', -12.6536, -6.8964, -12.3, -6.75), |
| 343 | + ('L', -10.26, -6.75), ('A', -10.0688, -6.788, -9.9067, -6.8962), ('L', -6.1467, -10.6512), |
| 344 | + ('A', -6.0381, -10.8135, -6.0, -11.005), ('L', -6.0, -14.045), ('A', -5.9934, -14.0958, -5.9741, -14.1434), |
| 345 | + ('L', -5.5459, -14.9016), ('A', -5.52, -15.0, -5.5459, -15.0984), ('L', -5.9741, -15.8566), |
| 346 | + ('A', -5.9934, -15.9042, -6.0, -15.955), ('L', -6.0, -18.995), ('A', -6.0381, -19.1865, -6.1467, -19.3488), |
| 347 | + ('L', -9.9067, -23.1038), ('A', -10.0688, -23.212, -10.26, -23.25), ('L', -12.3, -23.25), |
| 348 | + ('A', -12.6536, -23.1036, -12.8, -22.75), ('L', -12.8, -19.5), ('A', -12.9464, -19.1464, -13.3, -19.0), |
| 349 | + ('L', -14.3, -19.0), ('A', -14.4414, -19.0586, -14.5, -19.2), ('L', -14.5, -19.5), ('L', -14.8, -19.5), |
| 350 | + ('A', -14.9414, -19.5586, -15.0, -19.7)], |
| 351 | + [-12.7, -28.7, ('A', -13.4071, -28.4071, -13.7, -27.7), ('L', -13.7, -25.5), |
| 352 | + ('A', -13.4071, -24.7929, -12.7, -24.5), ('L', -10.5, -24.5), ('A', -9.7929, -24.7929, -9.5, -25.5), |
| 353 | + ('L', -9.5, -27.7), ('A', -9.7929, -28.4071, -10.5, -28.7), ('L', -12.7, -28.7)], |
| 354 | + [13.7, -27.7, ('A', 13.4071, -28.4071, 12.7, -28.7), ('L', 10.5, -28.7), ('A', 9.7929, -28.4071, 9.5, -27.7), |
| 355 | + ('L', 9.5, -25.5), ('A', 9.7929, -24.7929, 10.5, -24.5), ('L', 12.7, -24.5), |
| 356 | + ('A', 13.4071, -24.7929, 13.7, -25.5), ('L', 13.7, -27.7)], |
| 357 | + [-3.1439, -19.5129, ('A', -3.8891, -18.8891, -4.5129, -18.1439), ('L', -3.2814, -16.5985), |
| 358 | + ('A', -3.65, -15.0, -3.2814, -13.4015), ('L', -4.5129, -11.8561), |
| 359 | + ('A', -3.8891, -11.1109, -3.1439, -10.4871), ('L', -1.5985, -11.7186), ('A', 0.0, -11.35, 1.5985, -11.7186), |
| 360 | + ('L', 3.1439, -10.4871), ('A', 3.8891, -11.1109, 4.5129, -11.8561), ('L', 3.2814, -13.4015), |
| 361 | + ('A', 3.65, -15.0, 3.2814, -16.5985), ('L', 4.5129, -18.1439), ('A', 3.8891, -18.8891, 3.1439, -19.5129), |
| 362 | + ('L', 1.5985, -18.2814), ('A', 0.0, -18.65, -1.5985, -18.2814), ('L', -3.1439, -19.5129)], |
| 363 | + [9.99, -5.1, ('A', 9.4156, -5.2143, 8.9288, -5.5399), ('L', 6.4112, -8.0601), |
| 364 | + ('A', 5.9244, -8.3857, 5.35, -8.5), ('L', -5.35, -8.5), ('A', -5.9244, -8.3857, -6.4112, -8.0601), |
| 365 | + ('L', -8.9288, -5.5399), ('A', -9.4156, -5.2143, -9.99, -5.1), ('L', -11.85, -5.1), |
| 366 | + ('A', -12.9107, -4.6607, -13.35, -3.6), ('L', -13.35, 0.0), ('L', -13.35, 3.6), |
| 367 | + ('A', -12.9107, 4.6607, -11.85, 5.1), ('L', -9.99, 5.1), ('A', -9.4156, 5.2143, -8.9288, 5.5399), |
| 368 | + ('L', -6.4112, 8.0601), ('A', -5.9244, 8.3857, -5.35, 8.5), ('L', 5.35, 8.5), |
| 369 | + ('A', 5.9244, 8.3857, 6.4112, 8.0601), ('L', 8.9288, 5.5399), ('A', 9.4156, 5.2143, 9.99, 5.1), |
| 370 | + ('L', 11.85, 5.1), ('A', 12.9107, 4.6607, 13.35, 3.6), ('L', 13.35, 0.0), ('L', 13.35, -3.6), |
| 371 | + ('A', 12.9107, -4.6607, 11.85, -5.1), ('L', 9.99, -5.1)], |
| 372 | + [-13.7, 25.5, ('L', -13.7, 27.7), ('A', -13.4071, 28.4071, -12.7, 28.7), ('L', -10.5, 28.7), |
| 373 | + ('A', -9.7929, 28.4071, -9.5, 27.7), ('L', -9.5, 25.5), ('A', -9.7929, 24.7929, -10.5, 24.5), |
| 374 | + ('L', -12.7, 24.5), ('A', -13.4071, 24.7929, -13.7, 25.5)], |
| 375 | + [-3.2814, 16.5985, ('L', -4.5129, 18.1439), ('A', -3.8891, 18.8891, -3.1439, 19.5129), |
| 376 | + ('L', -1.5985, 18.2814), ('A', 0.0, 18.65, 1.5985, 18.2814), ('L', 3.1439, 19.5129), |
| 377 | + ('A', 3.8891, 18.8891, 4.5129, 18.1439), ('L', 3.2814, 16.5985), ('A', 3.65, 15.0, 3.2814, 13.4015), |
| 378 | + ('L', 4.5129, 11.8561), ('A', 3.8891, 11.1109, 3.1439, 10.4871), ('L', 1.5985, 11.7186), |
| 379 | + ('A', 0.0, 11.35, -1.5985, 11.7186), ('L', -3.1439, 10.4871), ('A', -3.8891, 11.1109, -4.5129, 11.8561), |
| 380 | + ('L', -3.2814, 13.4015), ('A', -3.65, 15.0, -3.2814, 16.5985)], |
| 381 | + [10.5, 28.7, ('L', 12.7, 28.7), ('A', 13.4071, 28.4071, 13.7, 27.7), ('L', 13.7, 25.5), |
| 382 | + ('A', 13.4071, 24.7929, 12.7, 24.5), ('L', 10.5, 24.5), ('A', 9.7929, 24.7929, 9.5, 25.5), ('L', 9.5, 27.7), |
| 383 | + ('A', 9.7929, 28.4071, 10.5, 28.7)], |
| 384 | + ], |
| 385 | + # 4040L-I8: FreeCAD-library "Profile-40x40L-I-Type_Slot8.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 386 | + # step.parts profile_4040l_i_slot8: section 40 x 40, |
| 387 | + # area 657.0137 mm^2 on the model |
| 388 | + "4040L-I8": [ |
| 389 | + [-20.0, -5.5, ('L', -20.0, -16.0), ('A', -18.8284, -18.8284, -16.0, -20.0), ('L', -5.5, -20.0), |
| 390 | + ('A', -4.4393, -19.5607, -4.0, -18.5), ('L', -4.0, -16.5), ('A', -4.2929, -15.7929, -5.0, -15.5), |
| 391 | + ('L', -6.5, -15.5), ('A', -6.8536, -15.6464, -7.0, -16.0), ('L', -7.0, -17.5), |
| 392 | + ('A', -7.1464, -17.8536, -7.5, -18.0), ('A', -9.2678, -17.2678, -10.0, -15.5), ('L', -10.0, -14.19), |
| 393 | + ('A', -9.6194, -12.2766, -8.5355, -10.6545), ('L', -7.0955, -9.2145), ('A', -5.4734, -8.1306, -3.56, -7.75), |
| 394 | + ('L', 3.56, -7.75), ('A', 5.4734, -8.1306, 7.0955, -9.2145), ('L', 8.5355, -10.6545), |
| 395 | + ('A', 9.6194, -12.2766, 10.0, -14.19), ('L', 10.0, -15.5), ('A', 9.2678, -17.2678, 7.5, -18.0), |
| 396 | + ('A', 7.1464, -17.8536, 7.0, -17.5), ('L', 7.0, -16.0), ('A', 6.8536, -15.6464, 6.5, -15.5), |
| 397 | + ('L', 5.0, -15.5), ('A', 4.2929, -15.7929, 4.0, -16.5), ('L', 4.0, -18.5), |
| 398 | + ('A', 4.4393, -19.5607, 5.5, -20.0), ('L', 16.0, -20.0), ('A', 18.8284, -18.8284, 20.0, -16.0), |
| 399 | + ('L', 20.0, -5.5), ('A', 19.5607, -4.4393, 18.5, -4.0), ('L', 16.5, -4.0), |
| 400 | + ('A', 15.7929, -4.2929, 15.5, -5.0), ('L', 15.5, -6.5), ('A', 15.6464, -6.8536, 16.0, -7.0), |
| 401 | + ('L', 17.5, -7.0), ('A', 17.8536, -7.1464, 18.0, -7.5), ('A', 17.2678, -9.2678, 15.5, -10.0), |
| 402 | + ('L', 14.19, -10.0), ('A', 12.2766, -9.6194, 10.6545, -8.5355), ('L', 9.2145, -7.0955), |
| 403 | + ('A', 8.1306, -5.4734, 7.75, -3.56), ('L', 7.75, 3.56), ('A', 8.1306, 5.4734, 9.2145, 7.0955), |
| 404 | + ('L', 10.6545, 8.5355), ('A', 12.2766, 9.6194, 14.19, 10.0), ('L', 15.5, 10.0), |
| 405 | + ('A', 17.2678, 9.2678, 18.0, 7.5), ('A', 17.8536, 7.1464, 17.5, 7.0), ('L', 16.0, 7.0), |
| 406 | + ('A', 15.6464, 6.8536, 15.5, 6.5), ('L', 15.5, 5.0), ('A', 15.7929, 4.2929, 16.5, 4.0), ('L', 18.5, 4.0), |
| 407 | + ('A', 19.5607, 4.4393, 20.0, 5.5), ('L', 20.0, 16.0), ('A', 18.8284, 18.8284, 16.0, 20.0), ('L', 5.5, 20.0), |
| 408 | + ('A', 4.4393, 19.5607, 4.0, 18.5), ('L', 4.0, 16.5), ('A', 4.2929, 15.7929, 5.0, 15.5), ('L', 6.5, 15.5), |
| 409 | + ('A', 6.8536, 15.6464, 7.0, 16.0), ('L', 7.0, 17.5), ('A', 7.1464, 17.8536, 7.5, 18.0), |
| 410 | + ('A', 9.2678, 17.2678, 10.0, 15.5), ('L', 10.0, 14.19), ('A', 9.6194, 12.2766, 8.5355, 10.6545), |
| 411 | + ('L', 7.0955, 9.2145), ('A', 5.4734, 8.1306, 3.56, 7.75), ('L', -3.56, 7.75), |
| 412 | + ('A', -5.4734, 8.1306, -7.0955, 9.2145), ('L', -8.5355, 10.6545), ('A', -9.6194, 12.2766, -10.0, 14.19), |
| 413 | + ('L', -10.0, 15.5), ('A', -9.2678, 17.2678, -7.5, 18.0), ('A', -7.1464, 17.8536, -7.0, 17.5), |
| 414 | + ('L', -7.0, 16.0), ('A', -6.8536, 15.6464, -6.5, 15.5), ('L', -5.0, 15.5), |
| 415 | + ('A', -4.2929, 15.7929, -4.0, 16.5), ('L', -4.0, 18.5), ('A', -4.4393, 19.5607, -5.5, 20.0), |
| 416 | + ('L', -16.0, 20.0), ('A', -18.8284, 18.8284, -20.0, 16.0), ('L', -20.0, 5.5), |
| 417 | + ('A', -19.5607, 4.4393, -18.5, 4.0), ('L', -16.5, 4.0), ('A', -15.7929, 4.2929, -15.5, 5.0), |
| 418 | + ('L', -15.5, 6.5), ('A', -15.6464, 6.8536, -16.0, 7.0), ('L', -17.5, 7.0), |
| 419 | + ('A', -17.8536, 7.1464, -18.0, 7.5), ('A', -17.2678, 9.2678, -15.5, 10.0), ('L', -14.19, 10.0), |
| 420 | + ('A', -12.2766, 9.6194, -10.6545, 8.5355), ('L', -9.2145, 7.0955), ('A', -8.1306, 5.4734, -7.75, 3.56), |
| 421 | + ('L', -7.75, -3.56), ('A', -8.1306, -5.4734, -9.2145, -7.0955), ('L', -10.6545, -8.5355), |
| 422 | + ('A', -12.2766, -9.6194, -14.19, -10.0), ('L', -15.5, -10.0), ('A', -17.2678, -9.2678, -18.0, -7.5), |
| 423 | + ('A', -17.8536, -7.1464, -17.5, -7.0), ('L', -16.0, -7.0), ('A', -15.6464, -6.8536, -15.5, -6.5), |
| 424 | + ('L', -15.5, -5.0), ('A', -15.7929, -4.2929, -16.5, -4.0), ('L', -18.5, -4.0), |
| 425 | + ('A', -19.5607, -4.4393, -20.0, -5.5)], |
| 426 | + [-16.0, -18.2, ('A', -17.5556, -17.5556, -18.2, -16.0), ('L', -18.2, -12.3), |
| 427 | + ('A', -18.0536, -11.9464, -17.7, -11.8), ('L', -12.3, -11.8), ('A', -11.9464, -11.9464, -11.8, -12.3), |
| 428 | + ('L', -11.8, -17.7), ('A', -11.9464, -18.0536, -12.3, -18.2), ('L', -16.0, -18.2)], |
| 429 | + [18.2, -16.0, ('A', 17.5556, -17.5556, 16.0, -18.2), ('L', 12.3, -18.2), |
| 430 | + ('A', 11.9464, -18.0536, 11.8, -17.7), ('L', 11.8, -12.3), ('A', 11.9464, -11.9464, 12.3, -11.8), |
| 431 | + ('L', 17.7, -11.8), ('A', 18.0536, -11.9464, 18.2, -12.3), ('L', 18.2, -16.0)], |
| 432 | + [-18.2, 16.0, ('A', -17.5556, 17.5556, -16.0, 18.2), ('L', -12.3, 18.2), |
| 433 | + ('A', -11.9464, 18.0536, -11.8, 17.7), ('L', -11.8, 12.3), ('A', -11.9464, 11.9464, -12.3, 11.8), |
| 434 | + ('L', -17.7, 11.8), ('A', -18.0536, 11.9464, -18.2, 12.3), ('L', -18.2, 16.0)], |
| 435 | + [('C', 0.0, 0.0, 3.4)], |
| 436 | + [16.0, 18.2, ('A', 17.5556, 17.5556, 18.2, 16.0), ('L', 18.2, 12.3), ('A', 18.0536, 11.9464, 17.7, 11.8), |
| 437 | + ('L', 12.3, 11.8), ('A', 11.9464, 11.9464, 11.8, 12.3), ('L', 11.8, 17.7), |
| 438 | + ('A', 11.9464, 18.0536, 12.3, 18.2), ('L', 16.0, 18.2)], |
| 439 | + ], |
| 440 | + # 4080L-I8: FreeCAD-library "Profile-40x80L-I-Type_Slot8-Body.step" (mathis (Int-Circuit), CC-BY-3.0), |
| 441 | + # step.parts profile_4080l_i_slot8: section 40 x 80, |
| 442 | + # area 1133.4545 mm^2 on the model; drawn turned 90 degrees (the longer side along Y) |
| 443 | + "4080L-I8": [ |
| 444 | + [5.6, -40.0, ('L', 16.0, -40.0), ('A', 18.8284, -38.8284, 20.0, -36.0), ('L', 20.0, -25.4), |
| 445 | + ('A', 19.5607, -24.3394, 18.5, -23.9), ('L', 16.5, -23.9), ('A', 15.7929, -24.1929, 15.5, -24.9), |
| 446 | + ('L', 15.5, -26.4), ('A', 15.6464, -26.7536, 16.0, -26.9), ('L', 17.5, -26.9), |
| 447 | + ('A', 17.8536, -27.0465, 18.0, -27.4), ('A', 17.2678, -29.1678, 15.5, -29.9), ('L', 14.19, -29.9), |
| 448 | + ('A', 12.2766, -29.5194, 10.6545, -28.4355), ('L', 9.2145, -26.9955), ('A', 8.1306, -25.3734, 7.75, -23.46), |
| 449 | + ('L', 7.75, -16.34), ('A', 8.1306, -14.4266, 9.2145, -12.8045), ('L', 10.6545, -11.3645), |
| 450 | + ('A', 12.2766, -10.2806, 14.19, -9.9), ('L', 15.5, -9.9), ('A', 17.2678, -10.6322, 18.0, -12.4), |
| 451 | + ('A', 17.8536, -12.7536, 17.5, -12.9), ('L', 16.0, -12.9), ('A', 15.6464, -13.0465, 15.5, -13.4), |
| 452 | + ('L', 15.5, -14.9), ('A', 15.7929, -15.6071, 16.5, -15.9), ('L', 18.5, -15.9), |
| 453 | + ('A', 19.5607, -15.4607, 20.0, -14.4), ('L', 20.0, 14.4), ('A', 19.5607, 15.4607, 18.5, 15.9), |
| 454 | + ('L', 16.5, 15.9), ('A', 15.7929, 15.6071, 15.5, 14.9), ('L', 15.5, 13.4), |
| 455 | + ('A', 15.6464, 13.0465, 16.0, 12.9), ('L', 17.5, 12.9), ('A', 17.8536, 12.7536, 18.0, 12.4), |
| 456 | + ('A', 17.2678, 10.6322, 15.5, 9.9), ('L', 14.19, 9.9), ('A', 12.2766, 10.2806, 10.6545, 11.3645), |
| 457 | + ('L', 9.2145, 12.8045), ('A', 8.1306, 14.4266, 7.75, 16.34), ('L', 7.75, 23.46), |
| 458 | + ('A', 8.1306, 25.3734, 9.2145, 26.9955), ('L', 10.6545, 28.4355), ('A', 12.2766, 29.5194, 14.19, 29.9), |
| 459 | + ('L', 15.5, 29.9), ('A', 17.2678, 29.1678, 18.0, 27.4), ('A', 17.8536, 27.0465, 17.5, 26.9), |
| 460 | + ('L', 16.0, 26.9), ('A', 15.6464, 26.7536, 15.5, 26.4), ('L', 15.5, 24.9), |
| 461 | + ('A', 15.7929, 24.1929, 16.5, 23.9), ('L', 18.5, 23.9), ('A', 19.5607, 24.3394, 20.0, 25.4), |
| 462 | + ('L', 20.0, 36.0), ('A', 18.8284, 38.8284, 16.0, 40.0), ('L', 5.6, 40.0), ('A', 4.5393, 39.5607, 4.1, 38.5), |
| 463 | + ('L', 4.1, 36.5), ('A', 4.3929, 35.7929, 5.1, 35.5), ('L', 6.6, 35.5), ('A', 6.9535, 35.6464, 7.1, 36.0), |
| 464 | + ('L', 7.1, 37.5), ('A', 7.2464, 37.8536, 7.6, 38.0), ('A', 9.3678, 37.2678, 10.1, 35.5), ('L', 10.1, 34.19), |
| 465 | + ('A', 9.7194, 32.2766, 8.6355, 30.6545), ('L', 7.1955, 29.2145), ('A', 5.5734, 28.1306, 3.66, 27.75), |
| 466 | + ('L', -3.46, 27.75), ('A', -5.3734, 28.1306, -6.9955, 29.2145), ('L', -8.4355, 30.6545), |
| 467 | + ('A', -9.5194, 32.2766, -9.9, 34.19), ('L', -9.9, 35.5), ('A', -9.1678, 37.2678, -7.4, 38.0), |
| 468 | + ('A', -7.0465, 37.8536, -6.9, 37.5), ('L', -6.9, 36.0), ('A', -6.7536, 35.6464, -6.4, 35.5), |
| 469 | + ('L', -4.9, 35.5), ('A', -4.1929, 35.7929, -3.9, 36.5), ('L', -3.9, 38.5), |
| 470 | + ('A', -4.3394, 39.5607, -5.4, 40.0), ('L', -16.0, 40.0), ('A', -18.8284, 38.8284, -20.0, 36.0), |
| 471 | + ('L', -20.0, 25.6), ('A', -19.5607, 24.5393, -18.5, 24.1), ('L', -16.5, 24.1), |
| 472 | + ('A', -15.7929, 24.3929, -15.5, 25.1), ('L', -15.5, 26.6), ('A', -15.6464, 26.9535, -16.0, 27.1), |
| 473 | + ('L', -17.5, 27.1), ('A', -17.8536, 27.2464, -18.0, 27.6), ('A', -17.2678, 29.3678, -15.5, 30.1), |
| 474 | + ('L', -14.19, 30.1), ('A', -12.2766, 29.7194, -10.6545, 28.6355), ('L', -9.2145, 27.1955), |
| 475 | + ('A', -8.1306, 25.5734, -7.75, 23.66), ('L', -7.75, 16.54), ('A', -8.1306, 14.6266, -9.2145, 13.0045), |
| 476 | + ('L', -10.6545, 11.5645), ('A', -12.2766, 10.4806, -14.19, 10.1), ('L', -15.5, 10.1), |
| 477 | + ('A', -17.2678, 10.8322, -18.0, 12.6), ('A', -17.8536, 12.9535, -17.5, 13.1), ('L', -16.0, 13.1), |
| 478 | + ('A', -15.6464, 13.2464, -15.5, 13.6), ('L', -15.5, 15.1), ('A', -15.7929, 15.8071, -16.5, 16.1), |
| 479 | + ('L', -18.5, 16.1), ('A', -19.5607, 15.6606, -20.0, 14.6), ('L', -20.0, -14.6), |
| 480 | + ('A', -19.5607, -15.6606, -18.5, -16.1), ('L', -16.5, -16.1), ('A', -15.7929, -15.8071, -15.5, -15.1), |
| 481 | + ('L', -15.5, -13.6), ('A', -15.6464, -13.2464, -16.0, -13.1), ('L', -17.5, -13.1), |
| 482 | + ('A', -17.8536, -12.9535, -18.0, -12.6), ('A', -17.2678, -10.8322, -15.5, -10.1), ('L', -14.19, -10.1), |
| 483 | + ('A', -12.2766, -10.4806, -10.6545, -11.5645), ('L', -9.2145, -13.0045), |
| 484 | + ('A', -8.1306, -14.6266, -7.75, -16.54), ('L', -7.75, -23.66), ('A', -8.1306, -25.5734, -9.2145, -27.1955), |
| 485 | + ('L', -10.6545, -28.6355), ('A', -12.2766, -29.7194, -14.19, -30.1), ('L', -15.5, -30.1), |
| 486 | + ('A', -17.2678, -29.3678, -18.0, -27.6), ('A', -17.8536, -27.2464, -17.5, -27.1), ('L', -16.0, -27.1), |
| 487 | + ('A', -15.6464, -26.9535, -15.5, -26.6), ('L', -15.5, -25.1), ('A', -15.7929, -24.3929, -16.5, -24.1), |
| 488 | + ('L', -18.5, -24.1), ('A', -19.5607, -24.5393, -20.0, -25.6), ('L', -20.0, -36.0), |
| 489 | + ('A', -18.8284, -38.8284, -16.0, -40.0), ('L', -5.4, -40.0), ('A', -4.3394, -39.5607, -3.9, -38.5), |
| 490 | + ('L', -3.9, -36.5), ('A', -4.1929, -35.7929, -4.9, -35.5), ('L', -6.4, -35.5), |
| 491 | + ('A', -6.7536, -35.6464, -6.9, -36.0), ('L', -6.9, -37.5), ('A', -7.0465, -37.8536, -7.4, -38.0), |
| 492 | + ('A', -9.1678, -37.2678, -9.9, -35.5), ('L', -9.9, -34.19), ('A', -9.5194, -32.2766, -8.4355, -30.6545), |
| 493 | + ('L', -6.9955, -29.2145), ('A', -5.3734, -28.1306, -3.46, -27.75), ('L', 3.66, -27.75), |
| 494 | + ('A', 5.5734, -28.1306, 7.1955, -29.2145), ('L', 8.6355, -30.6545), ('A', 9.7194, -32.2766, 10.1, -34.19), |
| 495 | + ('L', 10.1, -35.5), ('A', 9.3678, -37.2678, 7.6, -38.0), ('A', 7.2464, -37.8536, 7.1, -37.5), |
| 496 | + ('L', 7.1, -36.0), ('A', 6.9535, -35.6464, 6.6, -35.5), ('L', 5.1, -35.5), |
| 497 | + ('A', 4.3929, -35.7929, 4.1, -36.5), ('L', 4.1, -38.5), ('A', 4.5393, -39.5607, 5.6, -40.0)], |
| 498 | + [12.3, -38.2, ('A', 11.9464, -38.0536, 11.8, -37.7), ('L', 11.8, -32.3), |
| 499 | + ('A', 11.9464, -31.9464, 12.3, -31.8), ('L', 17.7, -31.8), ('A', 18.0536, -31.9464, 18.2, -32.3), |
| 500 | + ('L', 18.2, -36.0), ('A', 17.5556, -37.5556, 16.0, -38.2), ('L', 12.3, -38.2)], |
| 501 | + [12.3, 38.2, ('L', 16.0, 38.2), ('A', 17.5556, 37.5556, 18.2, 36.0), ('L', 18.2, 32.3), |
| 502 | + ('A', 18.0536, 31.9464, 17.7, 31.8), ('L', 12.3, 31.8), ('A', 11.9464, 31.9464, 11.8, 32.3), |
| 503 | + ('L', 11.8, 37.7), ('A', 11.9464, 38.0536, 12.3, 38.2)], |
| 504 | + [('C', 0.0, -20.0, 3.35)], |
| 505 | + [-12.3, -38.2, ('L', -16.0, -38.2), ('A', -17.5556, -37.5556, -18.2, -36.0), ('L', -18.2, -32.3), |
| 506 | + ('A', -18.0536, -31.9464, -17.7, -31.8), ('L', -12.3, -31.8), ('A', -11.9464, -31.9464, -11.8, -32.3), |
| 507 | + ('L', -11.8, -37.7), ('A', -11.9464, -38.0536, -12.3, -38.2)], |
| 508 | + [11.75, -8.25, ('L', 11.4754, -8.2522), ('L', 11.201, -8.2593), ('L', 10.9267, -8.2717), |
| 509 | + ('L', 10.6527, -8.2902), ('L', 10.3794, -8.3157), ('L', 10.1069, -8.3493), ('L', 9.8357, -8.3922), |
| 510 | + ('L', 9.5665, -8.4464), ('L', 9.3004, -8.5138), ('L', 9.039, -8.5976), ('L', 8.7849, -8.7014), |
| 511 | + ('L', 8.5425, -8.83), ('L', 8.3189, -8.989), ('L', 8.1253, -9.1832), ('L', 7.9761, -9.4129), |
| 512 | + ('L', 7.8829, -9.6706), ('L', 7.5158, -11.2176), ('L', 7.4059, -11.4721), ('L', 7.2431, -11.6965), |
| 513 | + ('L', 7.04, -11.8855), ('L', 6.8098, -12.0405), ('L', 6.5623, -12.1664), ('L', 6.304, -12.2685), |
| 514 | + ('L', 6.0389, -12.3512), ('L', 5.7694, -12.4181), ('L', 5.4969, -12.4719), ('L', 5.2224, -12.5147), |
| 515 | + ('L', 4.9467, -12.5483), ('L', 4.6701, -12.5738), ('L', 4.3929, -12.5924), ('L', 4.1155, -12.6048), |
| 516 | + ('L', 3.8378, -12.6119), ('L', 3.56, -12.6141), ('L', -3.56, -12.6141), ('L', -3.8378, -12.6119), |
| 517 | + ('L', -4.1155, -12.6048), ('L', -4.3929, -12.5924), ('L', -4.6701, -12.5738), ('L', -4.9467, -12.5483), |
| 518 | + ('L', -5.2224, -12.5147), ('L', -5.4969, -12.4719), ('L', -5.7694, -12.4181), ('L', -6.0389, -12.3512), |
| 519 | + ('L', -6.304, -12.2685), ('L', -6.5623, -12.1664), ('L', -6.8098, -12.0405), ('L', -7.04, -11.8855), |
| 520 | + ('L', -7.2431, -11.6965), ('L', -7.4059, -11.4721), ('L', -7.5158, -11.2176), ('L', -7.8829, -9.6706), |
| 521 | + ('L', -7.9761, -9.4129), ('L', -8.1253, -9.1832), ('L', -8.3189, -8.989), ('L', -8.5425, -8.83), |
| 522 | + ('L', -8.7849, -8.7014), ('L', -9.039, -8.5976), ('L', -9.3004, -8.5138), ('L', -9.5665, -8.4464), |
| 523 | + ('L', -9.8357, -8.3922), ('L', -10.1069, -8.3493), ('L', -10.3794, -8.3157), ('L', -10.6527, -8.2902), |
| 524 | + ('L', -10.9267, -8.2717), ('L', -11.201, -8.2593), ('L', -11.4754, -8.2522), ('L', -11.75, -8.25), |
| 525 | + ('L', -15.5, -8.25), ('A', -17.2678, -7.5178, -18.0, -5.75), ('L', -18.0, 5.75), |
| 526 | + ('A', -17.2678, 7.5178, -15.5, 8.25), ('L', -11.75, 8.25), ('L', -11.4737, 8.2522), ('L', -11.1975, 8.2593), |
| 527 | + ('L', -10.9215, 8.2717), ('L', -10.6458, 8.2903), ('L', -10.3707, 8.3158), ('L', -10.0965, 8.3494), |
| 528 | + ('L', -9.8236, 8.3923), ('L', -9.5526, 8.4463), ('L', -9.2847, 8.5135), ('L', -9.0213, 8.5968), |
| 529 | + ('L', -8.765, 8.6997), ('L', -8.5199, 8.827), ('L', -8.2928, 8.9839), ('L', -8.0941, 9.1753), |
| 530 | + ('L', -7.9375, 9.4023), ('L', -7.8354, 9.6584), ('L', -7.4167, 11.1923), ('L', -7.3255, 11.4502), |
| 531 | + ('L', -7.1778, 11.6806), ('L', -6.9853, 11.8753), ('L', -6.7626, 12.0348), ('L', -6.5208, 12.1637), |
| 532 | + ('L', -6.2671, 12.2677), ('L', -6.0061, 12.3515), ('L', -5.7404, 12.4191), ('L', -5.4717, 12.4732), |
| 533 | + ('L', -5.2009, 12.5162), ('L', -4.9288, 12.5498), ('L', -4.6558, 12.5753), ('L', -4.3822, 12.5939), |
| 534 | + ('L', -4.1083, 12.6063), ('L', -3.8342, 12.6133), ('L', -3.56, 12.6156), ('L', 3.56, 12.6156), |
| 535 | + ('L', 3.8345, 12.6134), ('L', 4.1088, 12.6063), ('L', 4.383, 12.5939), ('L', 4.6569, 12.5754), |
| 536 | + ('L', 4.9301, 12.5499), ('L', 5.2025, 12.5163), ('L', 5.4736, 12.4734), ('L', 5.7427, 12.4192), |
| 537 | + ('L', 6.0087, 12.3517), ('L', 6.27, 12.268), ('L', 6.524, 12.1641), ('L', 6.7662, 12.0354), |
| 538 | + ('L', 6.9896, 11.8763), ('L', 7.1828, 11.682), ('L', 7.3317, 11.4521), ('L', 7.4243, 11.1944), |
| 539 | + ('L', 7.8391, 9.6594), ('L', 7.9405, 9.4032), ('L', 8.0965, 9.176), ('L', 8.2948, 8.9843), |
| 540 | + ('L', 8.5216, 8.8272), ('L', 8.7665, 8.6999), ('L', 9.0227, 8.5969), ('L', 9.2859, 8.5136), |
| 541 | + ('L', 9.5537, 8.4463), ('L', 9.8245, 8.3923), ('L', 10.0973, 8.3494), ('L', 10.3714, 8.3158), |
| 542 | + ('L', 10.6464, 8.2903), ('L', 10.9219, 8.2717), ('L', 11.1978, 8.2593), ('L', 11.4739, 8.2522), |
| 543 | + ('L', 11.75, 8.25), ('L', 15.5, 8.25), ('A', 17.2678, 7.5178, 18.0, 5.75), ('L', 18.0, -5.75), |
| 544 | + ('A', 17.2678, -7.5178, 15.5, -8.25), ('L', 11.75, -8.25)], |
| 545 | + [('C', 0.0, 20.0, 3.35)], |
| 546 | + [-12.3, 38.2, ('A', -11.9464, 38.0536, -11.8, 37.7), ('L', -11.8, 32.3), |
| 547 | + ('A', -11.9464, 31.9464, -12.3, 31.8), ('L', -17.7, 31.8), ('A', -18.0536, 31.9464, -18.2, 32.3), |
| 548 | + ('L', -18.2, 36.0), ('A', -17.5556, 37.5556, -16.0, 38.2), ('L', -12.3, 38.2)], |
| 549 | + ], |
| 16 | 550 | } |
| 17 | | -a, w, t, b = SERIES[series] |
| 18 | | -h = a / 2 |
| 551 | +FINISHES = {"clear": "#cfd2d6", "black": "#2b2c2e"} |
| 552 | + |
| 553 | + |
| 554 | +def loop_wire(loop): |
| 555 | + if isinstance(loop[0], (tuple, list)): # ("C", cx, cy, r) |
| 556 | + _, cx, cy, r = loop[0] |
| 557 | + return cq.Wire.makeCircle(r, cq.Vector(cx, cy, 0), cq.Vector(0, 0, 1)) |
| 558 | + x, y = loop[0], loop[1] |
| 559 | + edges = [] |
| 560 | + for seg in loop[2:]: |
| 561 | + start = cq.Vector(x, y, 0) |
| 562 | + if seg[0] == "L": |
| 563 | + x, y = seg[1], seg[2] |
| 564 | + edges.append(cq.Edge.makeLine(start, cq.Vector(x, y, 0))) |
| 565 | + else: |
| 566 | + x, y = seg[3], seg[4] |
| 567 | + edges.append(cq.Edge.makeThreePointArc(start, cq.Vector(seg[1], seg[2], 0), cq.Vector(x, y, 0))) |
| 568 | + return cq.Wire.assembleEdges(edges) |
| 569 | + |
| 570 | + |
| 571 | +loops = [loop_wire(loop) for loop in PROFILES[profile]] |
| 572 | +section = cq.Face.makeFromWires(loops[0], loops[1:]) |
| 573 | +body = cq.Workplane("XY").add(cq.Solid.extrudeLinear(section, cq.Vector(0, 0, length))) |
| 19 | 574 | |
| 20 | 575 | model = Model() |
| 21 | | -with model.sketch("profile", on="XY", name="Section") as sk: |
| 22 | | - sk.polyline("outline", [ |
| 23 | | - (-h, -h), (-w / 2, -h), (-w / 2, -h + t), (w / 2, -h + t), (w / 2, -h), |
| 24 | | - (h, -h), (h, -w / 2), (h - t, -w / 2), (h - t, w / 2), (h, w / 2), |
| 25 | | - (h, h), (w / 2, h), (w / 2, h - t), (-w / 2, h - t), (-w / 2, h), |
| 26 | | - (-h, h), (-h, w / 2), (-h + t, w / 2), (-h + t, -w / 2), (-h, -w / 2), |
| 27 | | - ]) |
| 28 | | - sk.circle("bore", (0, 0), b / 2) |
| 29 | | -model.extrude("bar", "profile", distance=length) |
| 30 | | -model.material("aluminum-6061-t6", finish="anodized") # clear anodized aluminium |
| 576 | +model.add("profile", body, name="Profile") |
| 577 | +model.material("aluminum-generic", color=FINISHES[finish]) # 6063-T5 typical (no STEVE entry for 6063) |
| 31 | 578 | result = model.result() |
| 32 | 579 | |