Files
modeling-app/src/wasm-lib/tests/executor/inputs/fillet-and-shell.kcl
Adam Chalmers 61807e7629 KCL: Make shell stdlib fn use keyword arguments (#5293)
Before:

```
shell({ faces = ['end'], thickness = caseThickness }, case)
```

After:
```
shell(case, faces = ['end'], thickness = caseThickness)
```
2025-02-07 02:03:12 +00:00

82 lines
2.1 KiB
Plaintext

const rpizWidth = 30
const rpizLength = 65
const caseThickness = 1
const border = 4
const screwHeight = 4
const caseWidth = rpizWidth + border * 2
const caseLength = rpizLength + border * 2
const caseHeight = 8
const widthBetweenScrews = 23
const lengthBetweenScrews = 29 * 2
const miniHdmiDistance = 12.4
const microUsb1Distance = 41.4
const microUsb2Distance = 54
const miniHdmiWidth = 11.2
const microUsbWidth = 7.4
const connectorPadding = 4
const miniHdmiHole = startSketchAt([
0,
border + miniHdmiDistance - (miniHdmiWidth / 2)
])
|> lineTo([
0,
border + miniHdmiDistance + miniHdmiWidth / 2
], %)
|> lineTo([
1,
border + miniHdmiDistance + miniHdmiWidth / 2
], %)
|> lineTo([
1,
border + miniHdmiDistance - (miniHdmiWidth / 2)
], %)
|> close()
const case = startSketchOn('XY')
|> startProfileAt([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) => {
const screw = startSketchOn("XY")
|> startProfileAt([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
)