brepjs-sheetmetal 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +191 -0
- package/README.md +415 -0
- package/dist/allowanceFns.d.ts +21 -0
- package/dist/api.d.ts +128 -0
- package/dist/authorFns.d.ts +100 -0
- package/dist/bendTableFns.d.ts +58 -0
- package/dist/brepjs-sheetmetal.cjs +7321 -0
- package/dist/brepjs-sheetmetal.js +7233 -0
- package/dist/contourFlangeFns.d.ts +74 -0
- package/dist/cutoutFns.d.ts +52 -0
- package/dist/dxfFns.d.ts +38 -0
- package/dist/facade.d.ts +175 -0
- package/dist/featureTreeFns.d.ts +55 -0
- package/dist/foldFns.d.ts +68 -0
- package/dist/foreignUnfoldFns.d.ts +54 -0
- package/dist/formFns.d.ts +43 -0
- package/dist/hemFns.d.ts +12 -0
- package/dist/index.d.ts +35 -0
- package/dist/internal.d.ts +17 -0
- package/dist/jogFns.d.ts +13 -0
- package/dist/loftedFlangeFns.d.ts +18 -0
- package/dist/materials.d.ts +6 -0
- package/dist/miterFns.d.ts +20 -0
- package/dist/nestFns.d.ts +95 -0
- package/dist/polygonFns.d.ts +48 -0
- package/dist/reliefFns.d.ts +28 -0
- package/dist/reportFns.d.ts +19 -0
- package/dist/tabFns.d.ts +33 -0
- package/dist/types.d.ts +608 -0
- package/dist/unfoldFns.d.ts +80 -0
- package/dist/validateFns.d.ts +14 -0
- package/package.json +61 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SheetMetalPart, SheetMetalWarning } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Manufacturability checks for an authored sheet-metal part. Returns a list of
|
|
4
|
+
* {@link SheetMetalWarning} — these are advisory, never errors: a part with
|
|
5
|
+
* warnings is still produced and exportable. Three checks per plan §6:
|
|
6
|
+
*
|
|
7
|
+
* - `INVALID_SOLID`: the folded solid is missing, fails kernel validity, or has
|
|
8
|
+
* no positive volume.
|
|
9
|
+
* - `COLLISION`: two flanges' axis-aligned bounding boxes overlap once folded —
|
|
10
|
+
* the cheap interference signal for corners that need a miter or relief cut.
|
|
11
|
+
* - `MIN_RADIUS`: a bend's inner radius is below one material thickness
|
|
12
|
+
* (`R < 1×T`), the standard minimum-bend-radius rule of thumb.
|
|
13
|
+
*/
|
|
14
|
+
export declare function validatePart(part: SheetMetalPart): SheetMetalWarning[];
|
package/package.json
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "brepjs-sheetmetal",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Sheet-metal CAD domain for brepjs — flange authoring, auto-miter, fold/unfold flat patterns",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"sheet-metal",
|
|
7
|
+
"cad",
|
|
8
|
+
"brep",
|
|
9
|
+
"unfold",
|
|
10
|
+
"flat-pattern",
|
|
11
|
+
"bend-allowance"
|
|
12
|
+
],
|
|
13
|
+
"author": "Andy Aragon",
|
|
14
|
+
"license": "Apache-2.0",
|
|
15
|
+
"type": "module",
|
|
16
|
+
"sideEffects": false,
|
|
17
|
+
"engines": {
|
|
18
|
+
"node": ">=24"
|
|
19
|
+
},
|
|
20
|
+
"main": "./dist/brepjs-sheetmetal.cjs",
|
|
21
|
+
"module": "./dist/brepjs-sheetmetal.js",
|
|
22
|
+
"types": "./dist/index.d.ts",
|
|
23
|
+
"exports": {
|
|
24
|
+
".": {
|
|
25
|
+
"import": {
|
|
26
|
+
"types": "./dist/index.d.ts",
|
|
27
|
+
"default": "./dist/brepjs-sheetmetal.js"
|
|
28
|
+
},
|
|
29
|
+
"require": {
|
|
30
|
+
"types": "./dist/index.d.ts",
|
|
31
|
+
"default": "./dist/brepjs-sheetmetal.cjs"
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"files": [
|
|
36
|
+
"dist",
|
|
37
|
+
"LICENSE"
|
|
38
|
+
],
|
|
39
|
+
"scripts": {
|
|
40
|
+
"build": "vite build",
|
|
41
|
+
"typecheck": "tsc --noEmit",
|
|
42
|
+
"test": "vitest run",
|
|
43
|
+
"snapshot": "tsx harness/snapshot.ts",
|
|
44
|
+
"lint": "eslint src tests"
|
|
45
|
+
},
|
|
46
|
+
"peerDependencies": {
|
|
47
|
+
"brepjs": ">=18.0.0"
|
|
48
|
+
},
|
|
49
|
+
"devDependencies": {
|
|
50
|
+
"@eslint/js": "*",
|
|
51
|
+
"@types/node": "25.9.2",
|
|
52
|
+
"brepjs-opencascade": ">=0.16.0",
|
|
53
|
+
"eslint": "*",
|
|
54
|
+
"tsx": "4.22.4",
|
|
55
|
+
"typescript": "*",
|
|
56
|
+
"typescript-eslint": "*",
|
|
57
|
+
"vite": "^8.0.0",
|
|
58
|
+
"vite-plugin-dts": "^5.0.0",
|
|
59
|
+
"vitest": "^4.0.0"
|
|
60
|
+
}
|
|
61
|
+
}
|