@constructorfleet/sketchforge-engine 1.14.0 → 1.15.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 +661 -0
- package/README.md +61 -3
- package/dist/domain/sketchforge.d.ts +9 -0
- package/dist/domain/sketchforge.d.ts.map +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +94 -3
- package/dist/engine.js.map +1 -1
- package/dist/projectMeshes.d.ts.map +1 -1
- package/dist/projectMeshes.js +4 -2
- package/dist/projectMeshes.js.map +1 -1
- package/dist/serverStepExplode.js +1 -1
- package/dist/serverStepExplode.js.map +1 -1
- package/dist/shapeRequests.d.ts +1 -1
- package/dist/shapeRequests.d.ts.map +1 -1
- package/dist/shapeRequests.js +1 -1
- package/dist/shapeRequests.js.map +1 -1
- package/dist/sketchCadProfile.d.ts +23 -0
- package/dist/sketchCadProfile.d.ts.map +1 -0
- package/dist/sketchCadProfile.js +166 -0
- package/dist/sketchCadProfile.js.map +1 -0
- package/dist/sketchCadSweep.d.ts +4 -0
- package/dist/sketchCadSweep.d.ts.map +1 -0
- package/dist/sketchCadSweep.js +95 -0
- package/dist/sketchCadSweep.js.map +1 -0
- package/dist/sketchSweepRequest.d.ts +5 -0
- package/dist/sketchSweepRequest.d.ts.map +1 -0
- package/dist/sketchSweepRequest.js +105 -0
- package/dist/sketchSweepRequest.js.map +1 -0
- package/dist/skfProject.d.ts +2 -0
- package/dist/skfProject.d.ts.map +1 -1
- package/dist/skfProject.js +72 -3
- package/dist/skfProject.js.map +1 -1
- package/dist/stepAssemblyHierarchy.d.ts +13 -0
- package/dist/stepAssemblyHierarchy.d.ts.map +1 -0
- package/dist/stepAssemblyHierarchy.js +170 -0
- package/dist/stepAssemblyHierarchy.js.map +1 -0
- package/dist/stepComponentMetadata.d.ts +9 -1
- package/dist/stepComponentMetadata.d.ts.map +1 -1
- package/dist/stepComponentMetadata.js +6 -2
- package/dist/stepComponentMetadata.js.map +1 -1
- package/dist/stepGlbColors.d.ts.map +1 -1
- package/dist/stepGlbColors.js +2 -25
- package/dist/stepGlbColors.js.map +1 -1
- package/dist/stepGlbDocument.d.ts +25 -0
- package/dist/stepGlbDocument.d.ts.map +1 -0
- package/dist/stepGlbDocument.js +27 -0
- package/dist/stepGlbDocument.js.map +1 -0
- package/dist/stepImportCommon.d.ts.map +1 -1
- package/dist/stepImportCommon.js +9 -9
- package/dist/stepImportCommon.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shapeRequests.js","sourceRoot":"","sources":["../src/shapeRequests.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shapeRequests.js","sourceRoot":"","sources":["../src/shapeRequests.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGjF,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO;IAClE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;IAClE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAC7B,CAAC;AAIX,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,uBAA6C,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrG,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,QAAgB;IACpD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAChF,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,QAAgB;IACtD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACtE,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,QAAgB;IACjD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,CAAC,GAAG,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,KAAa,EAAE,QAAgB;IACrE,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,OAAO,CAAC,KAAc,EAAE,KAAa,EAAE,QAAgB;IAC9D,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxD,CAAC;AAoBD,MAAM,UAAU,qBAAqB,CAAC,KAAqB;IACzD,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;QACxB,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;QACxB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,GAAG,KAA2B;IAC7C,OAAO,CAAC,IAAe,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAgBD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAyD;IACpF,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE;IACpI,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE;IACxJ,KAAK,EAAE;QACL,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QAC1C,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACrI;IACD,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,EAAE;IACtH,SAAS,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC,EAAE;IAChH,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;IACtJ,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;IACxI,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;IACxI,gBAAgB,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;IAC3I,gBAAgB,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;IAC3I,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,eAAe;IACf,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,kBAAkB,CAAC,CAAC,EAAE;IACnJ,SAAS,EAAE;QACT,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,uBAAuB,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;KACnJ;IACD,UAAU,EAAE;QACV,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CACjC,uBAAuB,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;KACrH;IACD,cAAc,EAAE;QACd,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CACjC,2BAA2B,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,6BAA6B,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC;KAC/I;IACD,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,IAAI,iBAAiB,CAAC,CAAC,EAAE;IACtJ,UAAU,EAAE;QACV,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,uBAAuB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,wBAAwB,CAAC,CAAC;KACxH;IACD,eAAe,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,IAAI,yBAAyB,CAAC,EAAE,QAAQ,IAAI,yBAAyB,CAAC,EAAE;IAC7M,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,IAAI,sBAAsB,CAAC,EAAE,QAAQ,IAAI,sBAAsB,CAAC,EAAE;IACpM,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;IACrK,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;IACrK,kBAAkB,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,qBAAqB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE;IAClJ,eAAe,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,qBAAqB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE;IAC/I,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,qBAAqB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,qBAAqB,CAAC,CAAC,EAAE;IAChK,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,mBAAmB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,IAAI,mBAAmB,CAAC,CAAC,EAAE;IAC1J,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,EAAE;IACpH,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,IAAI,eAAe,CAAC,EAAE;CAC9H,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAyB,CAAC;AAE3F,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,OAAO,KAAK,IAAI,gBAAgB,CAAC;AACnC,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,sBAAsB,CAAC,IAAe;IACpD,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAS,EACT,KAAc,EACd,OAA8B,EAC9B,QAA6B;IAE7B,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,eAAe,CAAC,IAA0B;IACjD,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAChF,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IACtC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,GAAkD;IAChE,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,aAAa;IACzB,SAAS,EAAE,YAAY;IACvB,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,SAAS,cAAc,CAAC,IAA0B;IAChD,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/E,CAAC;AAID;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAqB;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC;IACvC,OAAO;QACL,KAAK;QACL,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;KACvE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAqB,EAAE,WAAmC,EAAE;IAC3F,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1D,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IACxD,kEAAkE;IAClE,MAAM,IAAI,GAAG,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC;IAC9D,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;IAE1F,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;QACjE,IAAI;QACJ,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;QACpE,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC;QACnE,KAAK;QACL,KAAK;QACL,MAAM;QACN,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;QAC5B,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3C,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7C,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7C,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI;KACnB,CAAC;IAEX,MAAM,OAAO,GAA0B,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC9D;;;;;OAKG;IACH,MAAM,MAAM,GAAG,CAAiC,IAAS,EAAE,QAA8B,EAAE,EAAE,CAC3F,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,CAA8B,CAAC;IACxG,6FAA6F;IAC7F,MAAM,KAAK,GAAG,CAAiC,IAAS,EAAE,EAAE,CAC1D,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAuC,CAAC;IAE1F;;;;;;;;;;;;;;OAcG;IACH,MAAM,SAAS,GAAG,GAAG,EAAE;QACrB,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,SAAS;gBAAE,SAAS;YAC1C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,KAAK,GAAG,CAAC,SAAkC,EAAE,EAAE,EAAE,CACrD,iBAAiB,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;IAExE,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7C,sEAAsE;QACtE,wEAAwE;QACxE,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACvC,oDAAoD;QACpD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,wEAAwE;QACxE,4EAA4E;QAC5E,OAAO,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,qEAAqE;QACrE,yEAAyE;QACzE,0EAA0E;QAC1E,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAC7E,MAAM,SAAS,GAAG,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QACvG,MAAM,WAAW,GAAG,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;YACL,KAAK;YACX,SAAS;YACT,UAAU,EAAE,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC;YACxF,cAAc,EAAE,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,CAAC,cAAc,EAAE,WAAW,EAAE,SAAS,CAAC;YACpG,QAAQ,EAAE,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC;YAClF,UAAU,EAAE,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC;SACzF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;YACL,GAAG,MAAM,CAAC,MAAM,CAAC;YACvB,GAAG,MAAM,CAAC,MAAM,CAAC;YACjB,GAAG,MAAM,CAAC,OAAO,CAAC;YAClB,GAAG,MAAM,CAAC,UAAU,CAAC;SACtB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;YACL,GAAG,MAAM,CAAC,iBAAiB,CAAC;YAClC,GAAG,MAAM,CAAC,cAAc,CAAC;YACzB,GAAG,MAAM,CAAC,cAAc,CAAC;YACzB,GAAG,MAAM,CAAC,cAAc,CAAC;YACzB,GAAG,MAAM,CAAC,oBAAoB,CAAC;YAC/B,GAAG,MAAM,CAAC,iBAAiB,CAAC;YAC5B,GAAG,MAAM,CAAC,cAAc,CAAC;YACzB,GAAG,MAAM,CAAC,YAAY,CAAC;SACxB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,EAAE,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IACxF,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;CACzF,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,CAAU,CAAC;AAMlI;;;;;;;;;;GAUG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAqB,EAAE,OAAqB;IACpF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACzD,IAAK,mBAAyC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC7E,IAAK,wBAA8C,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAClF,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IACH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IAEhE,MAAM,IAAI,GAAmB,EAAE,GAAG,KAAK,EAAE,CAAC;IAC1C,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACxG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,sCAAsC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACxI,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,KAAe,CAAC,CAAC,CAAC,CAAC;QAChG,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,IAAI,GAAG,EAAE,MAAM,EAAE,CAAC;YAChB,MAAM,UAAU,GAA2B,EAAE,CAAC;YAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;gBACnC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACzC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1G,UAAU,CAAC,EAAE,CAAC,GAAG,KAAe,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,GAAG,EAAE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACrF,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACzF,IAAI,OAAO,CAAC,CAAC,KAAK,SAAS;QAAE,IAAI,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,CAAC,KAAK,SAAS;QAAE,IAAI,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IAC5G,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC1F,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC1F,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxF,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnG,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IAC5G,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;IAC5G,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;IAC3E,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;IAC3E,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;IAC3E,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;IAClE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IACxE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IACxE,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;QAC7D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,8EAA8E;IAC9E,KAAK,MAAM,IAAI,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS;QAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;IACrH,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9F,MAAM,UAAU,GAAG,IAA0C,CAAC;IAC9D,MAAM,cAAc,GAAG,KAA2C,CAAC;IACnE,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAChJ,OAAO,IAAI,CAAC,UAAU,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SketchPoint, SketchProfile, SketchSegment } from "./domain/sketchforge.js";
|
|
2
|
+
export type OrderedCadSketchStep = {
|
|
3
|
+
segment: SketchSegment;
|
|
4
|
+
from: SketchPoint;
|
|
5
|
+
to: SketchPoint;
|
|
6
|
+
};
|
|
7
|
+
export type OrderedCadSketchPath = {
|
|
8
|
+
id: string;
|
|
9
|
+
points: SketchPoint[];
|
|
10
|
+
steps: OrderedCadSketchStep[];
|
|
11
|
+
closed: boolean;
|
|
12
|
+
};
|
|
13
|
+
export type CadSketchRegion = {
|
|
14
|
+
outer: OrderedCadSketchPath;
|
|
15
|
+
holes: OrderedCadSketchPath[];
|
|
16
|
+
};
|
|
17
|
+
export declare function orderedCadSketchPaths(profile: SketchProfile): OrderedCadSketchPath[];
|
|
18
|
+
export declare function cadSketchRegions(profile: SketchProfile): CadSketchRegion[];
|
|
19
|
+
export declare function cadSketchSweepPaths(profile: SketchProfile): {
|
|
20
|
+
sections: CadSketchRegion[];
|
|
21
|
+
spine: OrderedCadSketchPath;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=sketchCadProfile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sketchCadProfile.d.ts","sourceRoot":"","sources":["../src/sketchCadProfile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGzF,MAAM,MAAM,oBAAoB,GAAG;IAAE,OAAO,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC;AAClG,MAAM,MAAM,oBAAoB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AACzH,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,oBAAoB,CAAC;IAAC,KAAK,EAAE,oBAAoB,EAAE,CAAA;CAAE,CAAC;AAE7F,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB,EAAE,CAiDpF;AA2CD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,eAAe,EAAE,CAoD1E;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;IAAC,KAAK,EAAE,oBAAoB,CAAA;CAAE,CAcxH"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { LocalizedError } from "./support/i18n/LocalizedError.js";
|
|
2
|
+
export function orderedCadSketchPaths(profile) {
|
|
3
|
+
const pointById = new Map(profile.points.map((point) => [point.id, point]));
|
|
4
|
+
const adjacency = new Map();
|
|
5
|
+
profile.points.forEach((point) => adjacency.set(point.id, []));
|
|
6
|
+
const valid = profile.segments.filter((segment) => {
|
|
7
|
+
if (segment.startId === segment.endId || !pointById.has(segment.startId) || !pointById.has(segment.endId))
|
|
8
|
+
return false;
|
|
9
|
+
adjacency.get(segment.startId)?.push({ pointId: segment.endId, segment });
|
|
10
|
+
adjacency.get(segment.endId)?.push({ pointId: segment.startId, segment });
|
|
11
|
+
return true;
|
|
12
|
+
});
|
|
13
|
+
const unvisited = new Set(valid.map((segment) => segment.id));
|
|
14
|
+
const paths = [];
|
|
15
|
+
while (unvisited.size > 0) {
|
|
16
|
+
const seedId = unvisited.values().next().value;
|
|
17
|
+
const seed = valid.find((segment) => segment.id === seedId);
|
|
18
|
+
if (!seed)
|
|
19
|
+
break;
|
|
20
|
+
const component = new Set();
|
|
21
|
+
const queue = [seed.startId, seed.endId];
|
|
22
|
+
while (queue.length > 0) {
|
|
23
|
+
const id = queue.pop();
|
|
24
|
+
if (!id || component.has(id))
|
|
25
|
+
continue;
|
|
26
|
+
component.add(id);
|
|
27
|
+
adjacency.get(id)?.forEach((edge) => queue.push(edge.pointId));
|
|
28
|
+
}
|
|
29
|
+
const startId = [...component].find((id) => (adjacency.get(id)?.filter((edge) => unvisited.has(edge.segment.id)).length ?? 0) === 1) ?? seed.startId;
|
|
30
|
+
const first = pointById.get(startId);
|
|
31
|
+
if (!first) {
|
|
32
|
+
unvisited.delete(seed.id);
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const points = [first];
|
|
36
|
+
const steps = [];
|
|
37
|
+
let currentId = startId;
|
|
38
|
+
for (let guard = 0; guard <= valid.length; guard += 1) {
|
|
39
|
+
const edge = adjacency.get(currentId)?.find((candidate) => unvisited.has(candidate.segment.id));
|
|
40
|
+
if (!edge)
|
|
41
|
+
break;
|
|
42
|
+
const from = pointById.get(currentId);
|
|
43
|
+
const to = pointById.get(edge.pointId);
|
|
44
|
+
if (!from || !to)
|
|
45
|
+
break;
|
|
46
|
+
unvisited.delete(edge.segment.id);
|
|
47
|
+
steps.push({ segment: edge.segment, from, to });
|
|
48
|
+
currentId = to.id;
|
|
49
|
+
if (currentId === startId)
|
|
50
|
+
break;
|
|
51
|
+
points.push(to);
|
|
52
|
+
}
|
|
53
|
+
paths.push({ id: seed.id, points, steps, closed: currentId === startId && steps.length >= 3 });
|
|
54
|
+
}
|
|
55
|
+
return paths;
|
|
56
|
+
}
|
|
57
|
+
function sampledPath(path) {
|
|
58
|
+
const samples = [];
|
|
59
|
+
path.steps.forEach(({ segment, from, to }, stepIndex) => {
|
|
60
|
+
if (stepIndex === 0)
|
|
61
|
+
samples.push({ x: from.x, z: from.z });
|
|
62
|
+
const forward = segment.startId === from.id;
|
|
63
|
+
const first = forward ? from.handleOut : from.handleIn;
|
|
64
|
+
const second = forward ? to.handleIn : to.handleOut;
|
|
65
|
+
if (segment.kind === "line" || !first || !second) {
|
|
66
|
+
samples.push({ x: to.x, z: to.z });
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
for (let index = 1; index <= 16; index += 1) {
|
|
70
|
+
const amount = index / 16;
|
|
71
|
+
const inverse = 1 - amount;
|
|
72
|
+
samples.push({
|
|
73
|
+
x: inverse ** 3 * from.x + 3 * inverse ** 2 * amount * first.x + 3 * inverse * amount ** 2 * second.x + amount ** 3 * to.x,
|
|
74
|
+
z: inverse ** 3 * from.z + 3 * inverse ** 2 * amount * first.z + 3 * inverse * amount ** 2 * second.z + amount ** 3 * to.z,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
return samples;
|
|
79
|
+
}
|
|
80
|
+
function signedArea(points) {
|
|
81
|
+
return points.reduce((area, point, index) => {
|
|
82
|
+
const next = points[(index + 1) % points.length];
|
|
83
|
+
return area + point.x * next.z - next.x * point.z;
|
|
84
|
+
}, 0) / 2;
|
|
85
|
+
}
|
|
86
|
+
function pointInPolygon(point, polygon) {
|
|
87
|
+
let inside = false;
|
|
88
|
+
for (let index = 0, previous = polygon.length - 1; index < polygon.length; previous = index, index += 1) {
|
|
89
|
+
const current = polygon[index];
|
|
90
|
+
const before = polygon[previous];
|
|
91
|
+
if ((current.z > point.z) !== (before.z > point.z)
|
|
92
|
+
&& point.x < ((before.x - current.x) * (point.z - current.z)) / (before.z - current.z) + current.x)
|
|
93
|
+
inside = !inside;
|
|
94
|
+
}
|
|
95
|
+
return inside;
|
|
96
|
+
}
|
|
97
|
+
export function cadSketchRegions(profile) {
|
|
98
|
+
const allPaths = orderedCadSketchPaths(profile);
|
|
99
|
+
const openCount = allPaths.filter((path) => !path.closed).length;
|
|
100
|
+
const records = allPaths
|
|
101
|
+
.filter((path) => path.closed)
|
|
102
|
+
.map((path) => {
|
|
103
|
+
const polygon = sampledPath(path);
|
|
104
|
+
return { path, polygon, area: Math.abs(signedArea(polygon)) };
|
|
105
|
+
})
|
|
106
|
+
.filter((record) => record.polygon.length >= 3 && record.area > 1e-8)
|
|
107
|
+
.sort((a, b) => b.area - a.area);
|
|
108
|
+
// Compute nesting depth: count how many larger closed paths contain each record.
|
|
109
|
+
// Even depth = solid (outer boundary), odd depth = hole.
|
|
110
|
+
const depths = records.map((record, index) => {
|
|
111
|
+
let depth = 0;
|
|
112
|
+
for (let i = 0; i < records.length; i++) {
|
|
113
|
+
if (i === index)
|
|
114
|
+
continue;
|
|
115
|
+
if (records[i].area > record.area && pointInPolygon(record.polygon[0], records[i].polygon)) {
|
|
116
|
+
depth++;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return depth;
|
|
120
|
+
});
|
|
121
|
+
const regions = [];
|
|
122
|
+
records.forEach((record, index) => {
|
|
123
|
+
const depth = depths[index];
|
|
124
|
+
if (depth % 2 === 0) {
|
|
125
|
+
regions.push({ outer: record.path, holes: [] });
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
// Odd depth: find the nearest even-depth ancestor (smallest containing solid)
|
|
129
|
+
let bestParent = null;
|
|
130
|
+
for (let i = 0; i < records.length; i++) {
|
|
131
|
+
if (i === index)
|
|
132
|
+
continue;
|
|
133
|
+
if (depths[i] % 2 === 0 && depths[i] < depth && records[i].area > record.area && pointInPolygon(record.polygon[0], records[i].polygon)) {
|
|
134
|
+
if (!bestParent || records[i].area < bestParent.area) {
|
|
135
|
+
bestParent = records[i];
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (bestParent) {
|
|
140
|
+
const region = regions.find((r) => r.outer === bestParent.path);
|
|
141
|
+
if (region)
|
|
142
|
+
region.holes.push(record.path);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
if (regions.length === 0 && openCount > 0 && allPaths.length > 0) {
|
|
147
|
+
throw new LocalizedError("errors.sketch.allPathsOpen");
|
|
148
|
+
}
|
|
149
|
+
return regions;
|
|
150
|
+
}
|
|
151
|
+
export function cadSketchSweepPaths(profile) {
|
|
152
|
+
const paths = orderedCadSketchPaths(profile);
|
|
153
|
+
const closedPaths = paths.filter((path) => path.closed);
|
|
154
|
+
const sectionPointIds = new Set(closedPaths.flatMap((path) => path.points.map((point) => point.id)));
|
|
155
|
+
const sectionProfile = {
|
|
156
|
+
points: profile.points.filter((point) => sectionPointIds.has(point.id)),
|
|
157
|
+
segments: profile.segments.filter((segment) => sectionPointIds.has(segment.startId) && sectionPointIds.has(segment.endId)),
|
|
158
|
+
};
|
|
159
|
+
const sections = cadSketchRegions(sectionProfile);
|
|
160
|
+
const spines = paths.filter((path) => !path.closed);
|
|
161
|
+
if (sections.length === 0 || spines.length !== 1 || paths.length !== sections.reduce((count, region) => count + 1 + region.holes.length, 0) + 1) {
|
|
162
|
+
throw new LocalizedError("errors.sketch.sweepNeedsSectionAndSpine");
|
|
163
|
+
}
|
|
164
|
+
return { sections, spine: spines[0] };
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=sketchCadProfile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sketchCadProfile.js","sourceRoot":"","sources":["../src/sketchCadProfile.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type OcctKernel, type ShapeHandle } from "occt-wasm";
|
|
2
|
+
import { cadSketchSweepPaths } from "./sketchCadProfile.js";
|
|
3
|
+
export declare function buildCadSketchSweep(cad: OcctKernel, profile: Parameters<typeof cadSketchSweepPaths>[0]): ShapeHandle;
|
|
4
|
+
//# sourceMappingURL=sketchCadSweep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sketchCadSweep.d.ts","sourceRoot":"","sources":["../src/sketchCadSweep.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,UAAU,EAAE,KAAK,WAAW,EAAa,MAAM,WAAW,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAA6B,MAAM,uBAAuB,CAAC;AAuBvF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CA6BpH"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { TransitionMode } from "occt-wasm";
|
|
2
|
+
import { cadSketchSweepPaths } from "./sketchCadProfile.js";
|
|
3
|
+
import { LocalizedError } from "./support/i18n/LocalizedError.js";
|
|
4
|
+
import { deriveSketchSweepFrames, sketchSweepSpinePointInSection } from "./sketchSweepFrames.js";
|
|
5
|
+
function pathWire(cad, path, map = (point) => ({ x: point.x, y: 0, z: point.z })) {
|
|
6
|
+
const edges = path.steps.map(({ segment, from, to }) => {
|
|
7
|
+
const forward = segment.startId === from.id;
|
|
8
|
+
const first = forward ? from.handleOut : from.handleIn;
|
|
9
|
+
const second = forward ? to.handleIn : to.handleOut;
|
|
10
|
+
if (segment.kind !== "line" && first && second) {
|
|
11
|
+
return cad.makeBezierEdge([
|
|
12
|
+
map(from),
|
|
13
|
+
map({ ...first, sweepDepth: first.sweepDepth ?? from.sweepDepth }),
|
|
14
|
+
map({ ...second, sweepDepth: second.sweepDepth ?? to.sweepDepth }),
|
|
15
|
+
map(to),
|
|
16
|
+
]);
|
|
17
|
+
}
|
|
18
|
+
return cad.makeLineEdge(map(from), map(to));
|
|
19
|
+
});
|
|
20
|
+
return cad.makeWire(edges);
|
|
21
|
+
}
|
|
22
|
+
export function buildCadSketchSweep(cad, profile) {
|
|
23
|
+
const { sections, spine: rawSpine } = cadSketchSweepPaths(profile);
|
|
24
|
+
const defaultSection = {
|
|
25
|
+
origin: { x: 0, y: 0, z: 0 },
|
|
26
|
+
normal: { x: 0, y: 1, z: 0 },
|
|
27
|
+
xAxis: { x: 1, y: 0, z: 0 },
|
|
28
|
+
zAxis: { x: 0, y: 0, z: 1 },
|
|
29
|
+
};
|
|
30
|
+
const frames = profile.sweepFrames ?? deriveSketchSweepFrames(defaultSection);
|
|
31
|
+
const spineInOrthogonalPlane = (point) => {
|
|
32
|
+
const position = sketchSweepSpinePointInSection(frames, point);
|
|
33
|
+
return { ...position, z: position.z + (point.sweepDepth ?? 0) };
|
|
34
|
+
};
|
|
35
|
+
const spine = orientedSpine(rawSpine, spineInOrthogonalPlane);
|
|
36
|
+
// The builder returns geometry in the section frame's canonical coordinates.
|
|
37
|
+
// The editor applies the selected workplane transform once after meshing.
|
|
38
|
+
const sectionInWorkplane = (point) => ({ x: point.x, y: 0, z: point.z });
|
|
39
|
+
const spineWire = pathWire(cad, spine, spineInOrthogonalPlane);
|
|
40
|
+
const solids = sections.map((region) => {
|
|
41
|
+
const solid = cad.sweep(pathWire(cad, region.outer, sectionInWorkplane), spineWire, TransitionMode.RoundCorner);
|
|
42
|
+
if (region.holes.length === 0)
|
|
43
|
+
return solid;
|
|
44
|
+
const cut = region.holes.reduce((result, hole) => {
|
|
45
|
+
const holeSolid = cad.sweep(pathWire(cad, hole, sectionInWorkplane), spineWire, TransitionMode.RoundCorner);
|
|
46
|
+
return cad.cut(result, holeSolid);
|
|
47
|
+
}, solid);
|
|
48
|
+
const remainingSolids = cad.getSubShapes(cut, "solid");
|
|
49
|
+
return remainingSolids.length === 1 ? remainingSolids[0] : cut;
|
|
50
|
+
});
|
|
51
|
+
return solids.length === 1 ? solids[0] : cad.makeCompound(solids);
|
|
52
|
+
}
|
|
53
|
+
function orientedSpine(path, map) {
|
|
54
|
+
if (path.steps.length === 0)
|
|
55
|
+
throw new LocalizedError("errors.sketch.sweepNeedsSectionAndSpine");
|
|
56
|
+
const reversed = reversePath(path);
|
|
57
|
+
const forwardAligned = initialTangentIsNormal(path, map);
|
|
58
|
+
const reverseAligned = initialTangentIsNormal(reversed, map);
|
|
59
|
+
if (!forwardAligned && !reverseAligned)
|
|
60
|
+
throw new LocalizedError("errors.sketch.sweepSpineDirection");
|
|
61
|
+
if (forwardAligned && reverseAligned) {
|
|
62
|
+
const forwardStart = path.steps[0].from;
|
|
63
|
+
const reverseStart = reversed.steps[0].from;
|
|
64
|
+
const forwardDistance = forwardStart.x ** 2 + forwardStart.z ** 2 + (forwardStart.sweepDepth ?? 0) ** 2;
|
|
65
|
+
const reverseDistance = reverseStart.x ** 2 + reverseStart.z ** 2 + (reverseStart.sweepDepth ?? 0) ** 2;
|
|
66
|
+
return reverseDistance < forwardDistance ? reversed : path;
|
|
67
|
+
}
|
|
68
|
+
return reverseAligned ? reversed : path;
|
|
69
|
+
}
|
|
70
|
+
function initialTangentIsNormal(path, map) {
|
|
71
|
+
const step = path.steps[0];
|
|
72
|
+
if (!step)
|
|
73
|
+
return false;
|
|
74
|
+
const forward = step.segment.startId === step.from.id;
|
|
75
|
+
const firstControl = forward ? step.from.handleOut : step.from.handleIn;
|
|
76
|
+
const secondControl = forward ? step.to.handleIn : step.to.handleOut;
|
|
77
|
+
const firstHandle = step.segment.kind !== "line" && firstControl && secondControl ? firstControl : undefined;
|
|
78
|
+
const start = map(step.from);
|
|
79
|
+
const tangentEnd = firstHandle
|
|
80
|
+
? map({ ...firstHandle, sweepDepth: firstHandle.sweepDepth ?? step.from.sweepDepth })
|
|
81
|
+
: map(step.to);
|
|
82
|
+
const dx = tangentEnd.x - start.x;
|
|
83
|
+
const dy = tangentEnd.y - start.y;
|
|
84
|
+
const dz = tangentEnd.z - start.z;
|
|
85
|
+
const length = Math.hypot(dx, dy, dz);
|
|
86
|
+
return length > 0 && Math.hypot(dx, dz) <= length * 1e-6;
|
|
87
|
+
}
|
|
88
|
+
function reversePath(path) {
|
|
89
|
+
return {
|
|
90
|
+
...path,
|
|
91
|
+
points: [...path.points].reverse(),
|
|
92
|
+
steps: [...path.steps].reverse().map((step) => ({ ...step, from: step.to, to: step.from })),
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=sketchCadSweep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sketchCadSweep.js","sourceRoot":"","sources":["../src/sketchCadSweep.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { WorkplaneShape } from "./domain/sketchforge.js";
|
|
2
|
+
export declare function invalidSketchSweepProfile(profile: unknown): string | null;
|
|
3
|
+
/** Build a retained sketch sweep from the public shape request's profile. */
|
|
4
|
+
export declare function sketchSweepShapeFromRequest(request: Record<string, unknown>): Promise<WorkplaneShape>;
|
|
5
|
+
//# sourceMappingURL=sketchSweepRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sketchSweepRequest.d.ts","sourceRoot":"","sources":["../src/sketchSweepRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAM7E,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CA8BzE;AAED,6EAA6E;AAC7E,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAuD3G"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { createLocalId } from "./localIds.js";
|
|
2
|
+
import { withCadKernel } from "./serverCadKernel.js";
|
|
3
|
+
import { buildCadSketchSweep } from "./sketchCadSweep.js";
|
|
4
|
+
import { canonicalizeShape, cleanNearZero } from "./workplaneShapes.js";
|
|
5
|
+
export function invalidSketchSweepProfile(profile) {
|
|
6
|
+
if (!profile || typeof profile !== "object" || Array.isArray(profile))
|
|
7
|
+
return "A sketch sweep profile must be an object.";
|
|
8
|
+
const value = profile;
|
|
9
|
+
if (!Array.isArray(value.points) || value.points.length < 5 || value.points.length > 5000) {
|
|
10
|
+
return "A sketch sweep profile must contain between 5 and 5000 points.";
|
|
11
|
+
}
|
|
12
|
+
if (!Array.isArray(value.segments) || value.segments.length < 4 || value.segments.length > 10000) {
|
|
13
|
+
return "A sketch sweep profile must contain between 4 and 10000 segments.";
|
|
14
|
+
}
|
|
15
|
+
const pointIds = new Set();
|
|
16
|
+
for (const point of value.points) {
|
|
17
|
+
if (!point || typeof point !== "object" || Array.isArray(point))
|
|
18
|
+
return "Every sketch sweep point must be an object.";
|
|
19
|
+
const entry = point;
|
|
20
|
+
if (typeof entry.id !== "string" || !entry.id || pointIds.has(entry.id))
|
|
21
|
+
return "Sketch sweep point IDs must be unique non-empty strings.";
|
|
22
|
+
pointIds.add(entry.id);
|
|
23
|
+
if (![entry.x, entry.z, entry.sweepDepth ?? 0].every((coordinate) => typeof coordinate === "number" && Number.isFinite(coordinate) && Math.abs(coordinate) <= 10000)) {
|
|
24
|
+
return "Sketch sweep point coordinates must be finite and within 10000 mm.";
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const segmentIds = new Set();
|
|
28
|
+
for (const segment of value.segments) {
|
|
29
|
+
if (!segment || typeof segment !== "object" || Array.isArray(segment))
|
|
30
|
+
return "Every sketch sweep segment must be an object.";
|
|
31
|
+
const entry = segment;
|
|
32
|
+
if (typeof entry.id !== "string" || !entry.id || segmentIds.has(entry.id))
|
|
33
|
+
return "Sketch sweep segment IDs must be unique non-empty strings.";
|
|
34
|
+
if (typeof entry.startId !== "string" || typeof entry.endId !== "string" || !pointIds.has(entry.startId) || !pointIds.has(entry.endId)) {
|
|
35
|
+
return "Sketch sweep segments must reference existing point IDs.";
|
|
36
|
+
}
|
|
37
|
+
segmentIds.add(entry.id);
|
|
38
|
+
}
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
/** Build a retained sketch sweep from the public shape request's profile. */
|
|
42
|
+
export async function sketchSweepShapeFromRequest(request) {
|
|
43
|
+
const profile = request.profile;
|
|
44
|
+
return withCadKernel((cad) => {
|
|
45
|
+
const solid = buildCadSketchSweep(cad, profile);
|
|
46
|
+
if (!cad.isValid(solid))
|
|
47
|
+
throw new Error("The sketch sweep produced invalid geometry");
|
|
48
|
+
const mesh = cad.tessellate(solid, { linearDeflection: 0.05, angularDeflection: 0.16 });
|
|
49
|
+
const positions = mesh.positions;
|
|
50
|
+
const normals = mesh.normals;
|
|
51
|
+
const indices = mesh.indices;
|
|
52
|
+
if (positions.length < 9 || indices.length < 3)
|
|
53
|
+
throw new Error("The sketch sweep produced no solid geometry");
|
|
54
|
+
let minX = Infinity, minY = Infinity, minZ = Infinity;
|
|
55
|
+
let maxX = -Infinity, maxY = -Infinity, maxZ = -Infinity;
|
|
56
|
+
for (let i = 0; i < positions.length; i += 3) {
|
|
57
|
+
minX = Math.min(minX, positions[i]);
|
|
58
|
+
minY = Math.min(minY, positions[i + 1]);
|
|
59
|
+
minZ = Math.min(minZ, positions[i + 2]);
|
|
60
|
+
maxX = Math.max(maxX, positions[i]);
|
|
61
|
+
maxY = Math.max(maxY, positions[i + 1]);
|
|
62
|
+
maxZ = Math.max(maxZ, positions[i + 2]);
|
|
63
|
+
}
|
|
64
|
+
if (![minX, minY, minZ, maxX, maxY, maxZ].every(Number.isFinite))
|
|
65
|
+
throw new Error("The sketch sweep produced invalid bounds");
|
|
66
|
+
const centerX = (minX + maxX) / 2;
|
|
67
|
+
const centerZ = (minZ + maxZ) / 2;
|
|
68
|
+
const width = Math.max(0.01, maxX - minX);
|
|
69
|
+
const height = Math.max(0.01, maxY - minY);
|
|
70
|
+
const depth = Math.max(0.01, maxZ - minZ);
|
|
71
|
+
const flattenedPositions = [];
|
|
72
|
+
const flattenedNormals = [];
|
|
73
|
+
for (let i = 0; i < indices.length; i += 1) {
|
|
74
|
+
const vertex = indices[i] * 3;
|
|
75
|
+
flattenedPositions.push(positions[vertex] - centerX, positions[vertex + 1] - minY, positions[vertex + 2] - centerZ);
|
|
76
|
+
if (normals.length >= vertex + 3)
|
|
77
|
+
flattenedNormals.push(normals[vertex], normals[vertex + 1], normals[vertex + 2]);
|
|
78
|
+
}
|
|
79
|
+
return canonicalizeShape({
|
|
80
|
+
id: typeof request.id === "string" ? request.id : createLocalId("sketch-sweep"),
|
|
81
|
+
name: typeof request.name === "string" && request.name.trim() ? request.name.trim() : "Sketch sweep",
|
|
82
|
+
kind: "mesh",
|
|
83
|
+
color: typeof request.color === "string" ? request.color : "#d41721",
|
|
84
|
+
x: cleanNearZero(centerX, 0.0005) + (typeof request.x === "number" ? request.x : 0),
|
|
85
|
+
z: cleanNearZero(centerZ, 0.0005) + (typeof request.z === "number" ? request.z : 0),
|
|
86
|
+
elevation: cleanNearZero(minY, 0.0005) + (typeof request.elevation === "number" ? request.elevation : 0),
|
|
87
|
+
width, depth, height, size: Math.max(width, depth),
|
|
88
|
+
rotation: typeof request.rotation === "number" && Number.isFinite(request.rotation) ? request.rotation : 0,
|
|
89
|
+
rotationX: typeof request.rotationX === "number" && Number.isFinite(request.rotationX) ? request.rotationX : 0,
|
|
90
|
+
rotationZ: typeof request.rotationZ === "number" && Number.isFinite(request.rotationZ) ? request.rotationZ : 0,
|
|
91
|
+
hole: request.hole === true,
|
|
92
|
+
sketchProfile: structuredClone(profile),
|
|
93
|
+
sketchOperation: "sweep",
|
|
94
|
+
importedMesh: {
|
|
95
|
+
positions: flattenedPositions,
|
|
96
|
+
normals: flattenedNormals.length === flattenedPositions.length ? flattenedNormals : undefined,
|
|
97
|
+
baseWidth: maxX - minX, baseDepth: maxZ - minZ, baseHeight: maxY - minY,
|
|
98
|
+
triangleCount: Math.floor(indices.length / 3), sourceFormat: "json",
|
|
99
|
+
},
|
|
100
|
+
cadBrep: cad.toBREP(solid),
|
|
101
|
+
cadBrepFrame: { x: centerX, z: centerZ, elevation: minY, width, depth, height },
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=sketchSweepRequest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sketchSweepRequest.js","sourceRoot":"","sources":["../src/sketchSweepRequest.ts"],"names":[],"mappings":"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"}
|
package/dist/skfProject.d.ts
CHANGED
package/dist/skfProject.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skfProject.d.ts","sourceRoot":"","sources":["../src/skfProject.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"skfProject.d.ts","sourceRoot":"","sources":["../src/skfProject.ts"],"names":[],"mappings":"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"}
|