Files
modeling-app/rust/kcl-lib/tests/pattern_into_union/input.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

68 lines
1.9 KiB
Plaintext

nPlates = 20
buildPlateThickness = 1 / 25.4 // 1mm w/ two stickers
buildPlateWidth = 10.125
widthTolerance = 0.2
thicknessTolerance = 0.020
endWidth = 0.5
endTabWidth = 2
endTabHeight = 1
endTabThickness = 0.1
width = buildPlateWidth + 2 * (widthTolerance + endWidth)
depth = nPlates * (buildPlateThickness + thicknessTolerance) + (nPlates + 1) * endTabThickness
baseHeight = 0.25
base = startSketchOn(XZ)
|> startProfile(at = [0, 0])
|> xLine(endAbsolute = width, tag = $seg01)
|> yLine(endAbsolute = baseHeight + endTabHeight)
|> xLine(length = -endWidth)
|> yLine(endAbsolute = baseHeight)
|> xLine(endAbsolute = endWidth)
|> yLine(endAbsolute = baseHeight + endTabHeight)
|> xLine(endAbsolute = 0,tag = $seg02)
|> close()
|> extrude(length = -depth)
endTabs = startSketchOn(XZ)
|> startProfile(at = [endWidth, baseHeight])
|> xLine(endAbsolute = endWidth + endTabWidth)
|> angledLine(
angle = 135,
endAbsoluteY = baseHeight + endTabHeight
,tag=$toFillet)
|> xLine(endAbsolute = endWidth)
|> close()
|> extrude(length = -1 * endTabThickness)
|> fillet(
radius = 0.1,
tags = [getNextAdjacentEdge(toFillet)]
)
|> patternLinear3d(
axis = [0, 1, 0],
distance = buildPlateThickness + thicknessTolerance + endTabThickness,
instances = nPlates + 1
)
endTabs2 = startSketchOn(XZ)
|> startProfile(at = [width - endWidth, baseHeight])
|> xLine(endAbsolute = width - endTabWidth)
|> angledLine(
angle = 45,
endAbsoluteY = baseHeight + endTabHeight
,tag=$toFillet2)
|> xLine(endAbsolute = width - endWidth)
|> close()
|> extrude(length = -1 * endTabThickness)
|> fillet(
radius = 0.1,
tags = [getNextAdjacentEdge(toFillet2)]
)
|> patternLinear3d(
axis = [0, 1, 0],
distance = buildPlateThickness + thicknessTolerance + endTabThickness,
instances = nPlates + 1
)
union([base,endTabs])