Files
modeling-app/rust/kcl-lib/e2e/executor/inputs/fillet-and-shell.kcl
Adam Chalmers ffbe20b586 Kwargs: startProfileAt (#6424)
Previous:

```
startProfileAt([x, y], %)
startProfileAt([x, y], sketch001)
```

New:
```
startProfile(%, at = [x, y])
startProfile(sketch001, at = [x, y])
```
2025-04-25 21:01:35 +00:00

80 lines
2.0 KiB
Plaintext

rpizWidth = 30
rpizLength = 65
caseThickness = 1
border = 4
screwHeight = 4
caseWidth = rpizWidth + border * 2
caseLength = rpizLength + border * 2
caseHeight = 8
widthBetweenScrews = 23
lengthBetweenScrews = 29 * 2
miniHdmiDistance = 12.4
microUsb1Distance = 41.4
microUsb2Distance = 54
miniHdmiWidth = 11.2
microUsbWidth = 7.4
connectorPadding = 4
miniHdmiHole = startSketchOn(XY)
|> startProfile(at = [0, border + miniHdmiDistance - (miniHdmiWidth / 2)])
|> lineTo([
0,
border + miniHdmiDistance + miniHdmiWidth / 2
], %)
|> lineTo([
1,
border + miniHdmiDistance + miniHdmiWidth / 2
], %)
|> lineTo([
1,
border + miniHdmiDistance - (miniHdmiWidth / 2)
], %)
|> close()
case = startSketchOn(XY)
|> startProfile(at = [0, 0])
|> line(endAbsolute = [caseWidth, 0], $edge1)
|> line(endAbsolute = [caseWidth, caseLength], $edge2)
|> line(endAbsolute = [0, caseLength], $edge3)
|> close(tag = $edge4)
|> extrude(length = caseHeight)
|> fillet(
radius = 1,
tags = [
getNextAdjacentEdge(edge1),
getNextAdjacentEdge(edge2),
getNextAdjacentEdge(edge3),
getNextAdjacentEdge(edge4)
],
)
fn m25Screw = (x, y, height) => {
screw = startSketchOn(XY)
|> startProfile(at = [0, 0])
|> circle(center= [x, y], radius=2.5)
|> hole(circle(center= [x, y], radius = 1.25), %)
|> extrude(length = height)
return screw
}
m25Screw(border + rpizWidth / 2 - (widthBetweenScrews / 2), 0 + border + rpizLength / 2 - (lengthBetweenScrews / 2), screwHeight)
m25Screw(border + rpizWidth / 2 - (widthBetweenScrews / 2), 0 + border + rpizLength / 2 + lengthBetweenScrews / 2, screwHeight)
m25Screw(border + rpizWidth / 2 + widthBetweenScrews / 2, 0 + border + rpizLength / 2 + lengthBetweenScrews / 2, screwHeight)
m25Screw(border + rpizWidth / 2 + widthBetweenScrews / 2, 0 + border + rpizLength / 2 - (lengthBetweenScrews / 2), screwHeight)
shell(
faces = ['end'],
thickness = caseThickness
)