* Teaching t2c how to counterbore, countersink, and counterdrill * Delete public/kcl-samples/parametric-bearing-pillow-block directory * Update mounting-wire.kcl * new artifiacts Signed-off-by: Jess Frazelle <github@jessfraz.com> * Update kcl-samples simulation test output * Update kcl-samples simulation test output * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> --------- Signed-off-by: Jess Frazelle <github@jessfraz.com> Co-authored-by: Jess Frazelle <jessfraz@users.noreply.github.com> Co-authored-by: Jess Frazelle <github@jessfraz.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
80 lines
3.1 KiB
Plaintext
80 lines
3.1 KiB
Plaintext
// Mounting Wire
|
|
// The flexible metal wire used to clip the fans onto the heat sink
|
|
|
|
// Set units
|
|
@settings(defaultLengthUnit = mm)
|
|
|
|
// Import parameters
|
|
import * from "parameters.kcl"
|
|
|
|
// Draw the XZ component of the mounting wire path
|
|
upperArm = startSketchOn(offsetPlane(XZ, offset = fanSize / 2 + 2))
|
|
|> startProfile(at = [-12, 40 + fanSize / 2])
|
|
|> yLine(length = 7)
|
|
|> tangentialArc(radius = 2, angle = 90)
|
|
|> xLine(length = -9)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> yLine(length = 14)
|
|
|> tangentialArc(radius = 2, angle = 90)
|
|
|> xLine(length = -9)
|
|
|> tangentialArc(radius = 2, angle = -80)
|
|
|> angledLine(angle = 100, endAbsoluteY = 40 + fanSize / 2 + mountingHoleSpacing / 2 - 1.5)
|
|
|> tangentialArc(radius = 2, angle = 80, tag = $seg07)
|
|
|
|
// Draw the XZ component of the mounting wire path
|
|
lowerArm = startSketchOn(offsetPlane(XZ, offset = fanSize / 2 + 2))
|
|
|> startProfile(at = [-12, 40 + fanSize / 2])
|
|
|> yLine(length = -7)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> xLine(length = -9)
|
|
|> tangentialArc(radius = 2, angle = 90)
|
|
|> yLine(length = -14)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> xLine(length = -9)
|
|
|> tangentialArc(radius = 2, angle = 80)
|
|
|> angledLine(angle = -100, endAbsoluteY = 40 + fanSize / 2 - (mountingHoleSpacing / 2) + 1.5)
|
|
|> tangentialArc(radius = 2, angle = -80, tag = $seg08)
|
|
|
|
// Create the profile of the mounting wire and sweep along the XZ path
|
|
wireProfile = startSketchOn(offsetPlane(XY, offset = 40 + fanSize / 2))
|
|
sweepUpperArm = circle(wireProfile, center = [-12, -fanSize / 2 - 2], radius = 1)
|
|
|> sweep(%, path = upperArm)
|
|
|
|
sweepLowerArm = circle(wireProfile, center = [-12, -fanSize / 2 - 2], radius = 1)
|
|
|> sweep(%, path = lowerArm)
|
|
|
|
// Draw the XY components of the mounting wire path
|
|
upperHook = startSketchOn(offsetPlane(XY, offset = segEndY(seg07)))
|
|
|> startProfile(at = [segEndX(seg07), -fanSize / 2 - 2])
|
|
|> xLine(endAbsolute = -heatSinkDepth / 2 - fanHeight)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> yLine(endAbsolute = -mountingHoleSpacing / 2 - 2)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> xLine(length = fanHeight / 3)
|
|
|
|
// Draw the XY components of the mounting wire path
|
|
lowerHook = startSketchOn(offsetPlane(XY, offset = segEndY(seg08)))
|
|
|> startProfile(at = [segEndX(seg07), -fanSize / 2 - 2])
|
|
|> xLine(endAbsolute = -heatSinkDepth / 2 - fanHeight)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> yLine(endAbsolute = -mountingHoleSpacing / 2 - 2)
|
|
|> tangentialArc(radius = 2, angle = -90)
|
|
|> xLine(length = fanHeight / 3)
|
|
|
|
// Sweep the wire profile around the hook-shaped segments of the mounting wire
|
|
hookProfile = startSketchOn(offsetPlane(YZ, offset = segEndX(seg07)))
|
|
sweepUpperHook = circle(hookProfile, center = [-fanSize / 2 - 2, segEndY(seg07)], radius = 1)
|
|
|> sweep(%, path = upperHook)
|
|
|
|
sweepLowerHook = circle(hookProfile, center = [-fanSize / 2 - 2, segEndY(seg08)], radius = 1)
|
|
|> sweep(%, path = lowerHook)
|
|
|
|
// Union each piece of the wire into a single continuous sweep
|
|
[
|
|
sweepLowerArm,
|
|
sweepLowerHook,
|
|
sweepUpperArm,
|
|
sweepUpperHook
|
|
]
|
|
|> appearance(color = "#0d0d0d")
|