You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.6 KiB
Markdown

# QET Cabinet Assets
This directory contains reusable cabinet placement assets for QET / FreeCAD exchange examples.
## Files
- `qet_wire_duct.FCStd`: FreeCAD native wire duct asset.
- `qet_wire_duct.step`: geometry-only wire duct exchange export.
- `qet_din_rail.FCStd`: FreeCAD native DIN rail asset.
- `qet_din_rail.step`: geometry-only DIN rail exchange export.
- `qet_cabinet_assets_report.json`: generated metadata for verification.
- `create_qet_cabinet_assets.py`: FreeCAD Python generator used to recreate the assets.
## Wire Duct
The wire duct is a gray open duct for cabinet routing:
- Length: `200 mm`
- Width: `40 mm`
- Height: `40 mm`
It is generated as one FreeCAD tree object, `WireDuct_Body`, with the comb-style side slots and mounting holes cut into the body.
## DIN Rail
The DIN rail is a metal-gray DIN 35mm rail:
- Length: `200 mm`
- Width: `35 mm`
- Height: `7.5 mm`
It includes a hat-shaped rail profile, return lips, and elongated mounting slot markers.
## Semantics
These are placement and routing support assets. They intentionally do not contain terminal LCS objects or engineering binding fields such as `QetProjectUuid`, `QetElementUuid`, `QetTerminalUuid`, or `QetInstanceId`.
## Regenerate
On this Windows workstation, use the registered FreeCAD runtime:
```powershell
$runtime = Get-Content -LiteralPath 'C:\Users\ng123\AppData\Local\QETDeps\runtime.json' -Raw | ConvertFrom-Json
$env:QET_FREECAD_RUNTIME_JSON = 'C:\Users\ng123\AppData\Local\QETDeps\runtime.json'
& $runtime.freecad_python 'D:\LightWork3D\data\examples\qet_cabinet_assets\create_qet_cabinet_assets.py'
```