feat: 提交
This commit is contained in:
66
samples/moduleManager/module_resetModelContour.ts
Normal file
66
samples/moduleManager/module_resetModelContour.ts
Normal file
@@ -0,0 +1,66 @@
|
||||
import { Processor, ProcessorModule } from "../../src/device";
|
||||
|
||||
import { ErrorInfo } from "../../src/device";
|
||||
import { PlaceBlockDetail } from "../confClass";
|
||||
|
||||
/** 模块 造型轮廓(含封边),扣除封边, 变成开料坐标
|
||||
* !!!!!!!!! 有异常 要调整
|
||||
* input 入参
|
||||
|
||||
*/
|
||||
|
||||
export const ResetModelContour: ProcessorModule<any, any> = {
|
||||
moduleName: "ResetModelContour",
|
||||
moduleVersion: '20250714',
|
||||
config: {
|
||||
|
||||
},
|
||||
setConfig(config) {
|
||||
this.config = { ...this.config, ...config };
|
||||
},
|
||||
|
||||
// 会在处理器自动执行
|
||||
/**
|
||||
*
|
||||
* @param input 输入数据
|
||||
* @param next 下一个流程的函数
|
||||
* @param context 上下文
|
||||
* @returns
|
||||
*/
|
||||
|
||||
process(input, next, context) {
|
||||
const { blockDetailList } = input
|
||||
for (const bd of blockDetailList) {
|
||||
let blockDetail = new PlaceBlockDetail(bd);
|
||||
resetModelContour(blockDetail);
|
||||
}
|
||||
/** 造型轮廓(含封边),扣除封边, 变成开料坐标 */
|
||||
function resetModelContour(bd: PlaceBlockDetail) {
|
||||
let ox = bd.offsetX
|
||||
let oy = bd.offsetY
|
||||
for (let m of bd.models) {
|
||||
if (m.hasContour()) {
|
||||
let ptsArr = m.originModeling.outline.map(e => e.pts)
|
||||
for (let pt of ptsArr) {
|
||||
// 23.8.5 发现矩形的挖穿轮廓坐标是不含封边的
|
||||
pt.x -= ox
|
||||
pt.y -= oy
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return next ? next(input) : input;
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
onError(error) {
|
||||
|
||||
console.error('出错了哦', error);
|
||||
|
||||
}
|
||||
};
|
||||
|
Reference in New Issue
Block a user