← Commit history

v1.6.16: width-aware etch auto-fit

John Lauer ·c8e324cf43 ·3mo ago ·parent 82ed230
6 files changed +18−9
BRIDGE_VERSION+1−1
@@ -1 +1 @@-1.6.15\ No newline at end of file+1.6.16\ No newline at end of file
CHANGELOG.md+6
@@ -3,6 +3,12 @@ All notable changes to the Adom Desktop Fusion 360 bridge, newest first. Canonical: https://wiki.adom.inc/adom/adom-desktop-fusion-bridge ยท GitHub backup: `adom-inc/adom-desktop-fusion-bridge` +## 1.6.16 - 2026-07-04++- `fusion_generate_package` etch auto-fit is now WIDTH-aware: text height is capped by box-width /+  char-count (a glyph is ~0.62h wide), so a 5-char MPN like 'LM358' fits instead of cropping+  (height-only fit rendered 'M35' on a SOIC-8 - caught on the live verify).+ ## 1.6.15 - 2026-07-03  - **NEW `fusion_generate_package` - parametric IPC packages from Fusion's BUILT-IN
adom-bridge-fusion-manifest.json+5−5
@@ -1,13 +1,13 @@ {   "manifest_version": 1,   "name": "fusion360",-  "version": "1.6.15",-  "url": "https://wiki.adom.inc/download/adom/adom-desktop-fusion-bridge/1.6.15/adom-bridge-fusion-v1.6.15.zip",-  "sha256": "9b60c2a79f8b2e346d6d3a67125b8ec358af1edfc94a23fb36c34a3c21eb2302",-  "size": 308840,+  "version": "1.6.16",+  "url": "https://wiki.adom.inc/download/adom/adom-desktop-fusion-bridge/1.6.16/adom-bridge-fusion-v1.6.16.zip",+  "sha256": "06f1b8eaa2b252a5e207d3a8c8fe1b2c608645f096c62dfdb72ae29fe2835308",+  "size": 309093,   "verbPrefixes": [     "fusion_"   ],   "healthEndpoint": "/status",-  "released_at": "2026-07-04T15:30:00Z"+  "released_at": "2026-07-04T16:10:00Z" }\ No newline at end of file
bridge.json+1−1
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "fusion360",   "displayName": "Autodesk Fusion 360",-  "version": "1.6.15",+  "version": "1.6.16",   "description": "Drive Autodesk Fusion 360 from the cloud: launch Fusion, electronics board layout, design rules, exports (STEP/IGES/STL/3MF/USDZ/OBJ/DXF/DWG/Gerbers/BOM/CPL), fast APS server-indexed cloud search plus browse/recent/file-info/versions, cloud file download/upload and folder creation, and in-app parametric modeling (fusion_run_modeling_script). Never-charge: APS calls are capped to the free tier.",   "homepage": "https://wiki.adom.inc/adom/adom-desktop-fusion-bridge",   "author": "Adom Inc.",
page.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop-fusion-bridge",-  "version": "1.6.16",+  "version": "1.6.17",   "type": "app",   "description": "Drive Autodesk Fusion 360 from the cloud via Adom Desktop: launch Fusion, electronics board layout, design rules, exports (STEP/IGES/STL/3MF/USDZ/OBJ/DXF/DWG/Gerbers/BOM/CPL), fast APS server-indexed cloud search with browse/recent/versions, cloud download/upload and folder creation, and in-app parametric modeling. Never-charge: APS calls are capped to the free tier.",   "dependencies": {},
server.py+4−1
@@ -2061,8 +2061,11 @@ if {etch!r}:     face_w = abs(bb.maxPoint.x - bb.minPoint.x)     face_h = abs(bb.maxPoint.y - bb.minPoint.y)     span = min(face_w, face_h)-    h = ({etch_height_mm!r} / 10.0) if {etch_height_mm!r} else max(0.02, span * 0.45)     w = max(face_w, face_h) * 0.8+    # width-aware auto-fit: a glyph is ~0.62*h wide, so cap h by the box width /+    # char count too (learned live: 'LM358' at height-only fit cropped to 'M35')+    n_chars = max(1, len({etch!r}))+    h = ({etch_height_mm!r} / 10.0) if {etch_height_mm!r} else max(0.015, min(span * 0.45, w / (0.62 * n_chars)))     c1 = adsk.core.Point3D.create(center.x - w/2, center.y - h*0.75, 0)     c2 = adsk.core.Point3D.create(center.x + w/2, center.y + h*0.75, 0)     ti = sk.sketchTexts.createInput2({etch!r}, h)