初始化版本库,可用

This commit is contained in:
2021-01-28 10:17:21 +08:00
commit d2573c0b1c
1750 changed files with 41088 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import { Singleton } from "../../Common/Singleton";
import { ExtrudeHole } from "../../DatabaseServices/3DSolid/ExtrudeHole";
import { Board, IModeling } from "../../DatabaseServices/Entity/Board";
import { Curve } from "../../DatabaseServices/Entity/Curve";
import { Shape } from "../../DatabaseServices/Shape";
/**
*计算走刀工具类
*/
export declare class FeedingToolPath extends Singleton {
/**
* 处理形状,内偏移
* @param shape 造型Shape
* @param knifRadius 刀半径/偏移距离
* @param [isOut=true] 是否是最外轮廓,如果是,洞需要外偏移一个刀半径,多段线偏移保留不闭合轮廓
*/
private HandleShape;
/**用于测试走刀路径 */
TestCalcPath(br: Board, isCd?: boolean): Curve[];
/**
* 计算走刀路径
*/
CalcPath(modelings: IModeling[], br: Board): Curve[];
GetModelFeedPath(br: Board, m: IModeling): Curve[];
private GrooveAddSize;
private GetContours;
CheckModeling(br: Board): number[];
CheckCustomHole(br: Board): ExtrudeHole[];
HandleThoughGroove(br: Board, shape: Shape, knifeRadius: number): void;
}
export declare function GetModelingFromCustomDrill(br: Board): {
modeling: (IModeling & {
originEn: ExtrudeHole;
})[];
sideModeling: (IModeling & {
originEn: ExtrudeHole;
})[];
};
//# sourceMappingURL=FeedingToolPath.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"FeedingToolPath.d.ts","sourceRoot":"","sources":["../../../../src/GraphicsSystem/ToolPath/FeedingToolPath.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEzE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAEvE,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAG5D,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAcrD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAE1C;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IA0InB,cAAc;IACd,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,UAAQ;IAkBpC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE;IASpD,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,GAAG,KAAK,EAAE;IA8ClD,OAAO,CAAC,aAAa;IA0BrB,OAAO,CAAC,WAAW;IAuCnB,aAAa,CAAC,EAAE,EAAE,KAAK;IAcvB,eAAe,CAAC,EAAE,EAAE,KAAK;IAoBzB,kBAAkB,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM;CAuHlE;AACD,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,KAAK;;kBAKT,WAAW;;;kBACP,WAAW;;EAwGzD"}

View File

@@ -0,0 +1,19 @@
import { IRectInfo } from "../../Common/CurveUtils";
import { Curve } from "../../DatabaseServices/Entity/Curve";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Shape } from "../../DatabaseServices/Shape";
/**
* 优化走刀路径,连接偏移后的曲线数组
* @param offsetCus 偏移后的曲线组
* @param originShape 原始走刀形状
* @param rad 刀半径
* @returns tool path
*/
export declare function OptimizeToolPath(offsetCus: Curve[], originShape: Shape, rad: number): Curve[];
/**获取内偏移的轮廓 */
export declare function GetOffsetCurves(cu: Curve, dist: number, rectInfo?: IRectInfo): Curve[];
/** 获得曲线内偏移方向*/
export declare function GetCurveToInDir(cu: Curve): number;
/**矩形偏移,正为内偏移 */
export declare function RectOffset(rect: Polyline, res: IRectInfo, dist: number): Polyline;
//# sourceMappingURL=OptimizeToolPath.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"OptimizeToolPath.d.ts","sourceRoot":"","sources":["../../../../src/GraphicsSystem/ToolPath/OptimizeToolPath.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsD,SAAS,EAAU,MAAM,yBAAyB,CAAC;AAGhH,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAGrD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE,CAwH7F;AAiHD,cAAc;AACd,wBAAgB,eAAe,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,SAAS,GAAG,KAAK,EAAE,CAatF;AAED,eAAe;AACf,wBAAgB,eAAe,CAAC,EAAE,EAAE,KAAK,GAAG,MAAM,CAGjD;AAED,gBAAgB;AAChB,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,YA+BtE"}

View File

@@ -0,0 +1,18 @@
import { Curve } from "../../DatabaseServices/Entity/Curve";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Vec3 } from "../../Geometry/IVec3";
/**
* V型刀走刀数据,第一刀直接扎进去,最后一刀提刀
* @param polyline
* @param feedingDepth 走刀深度
* @param knifAngle 通常为60度.按弧度表示
*/
export declare function VKnifToolPath(polyline: Polyline, feedingDepth: number, knifAngle: number): {
pt: Vec3;
bul: number;
}[];
export declare function VData2Curve(data: {
pt: Vec3;
bul: number;
}[]): Curve[];
//# sourceMappingURL=VKnifToolPath.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"VKnifToolPath.d.ts","sourceRoot":"","sources":["../../../../src/GraphicsSystem/ToolPath/VKnifToolPath.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAElE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAG5C;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE,EAAE,CAmEvH;AAGD,wBAAgB,WAAW,CAAC,IAAI,EAAE;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE,EAAE,WAiB7D"}