54 lines
2.6 KiB
TypeScript
54 lines
2.6 KiB
TypeScript
import { Board } from "../DatabaseServices/Entity/Board";
|
|
import { Circle } from "../DatabaseServices/Entity/Circle";
|
|
import { Curve } from "../DatabaseServices/Entity/Curve";
|
|
import { ExtrudeContourCurve } from "../DatabaseServices/Entity/Extrude";
|
|
import { Polyline } from "../DatabaseServices/Entity/Polyline";
|
|
import { IHighSealedItem, ISealingData } from "../UI/Store/BoardInterface";
|
|
type CurveGroups = (Curve[])[];
|
|
/**
|
|
* 将曲线分段(根据高级封边的特性 (因为圆弧无法单独使用封边,所以和圆弧在一起的曲线必须和圆弧一样的封边,否则偏移失败))
|
|
* @l-arc-l,l-arc-arc-l,l-arc-l-arc-l....
|
|
* @param in_out_curves 曲线组( 函数结束后 这个数组被改变 )
|
|
* @returns 返回编组 curveGroups
|
|
*/
|
|
export declare function SubsectionCurvesOfHightSeal(in_out_curves: Curve[]): CurveGroups;
|
|
/**
|
|
* 计算封边(删除无效线,连接尖角)
|
|
*/
|
|
export declare function CalcEdgeSealing(cus: Curve[], highSeals?: IHighSealedItem[]): boolean;
|
|
export declare function GetBoardHighSeal(br: Board, sealcus: Curve[]): IHighSealedItem[];
|
|
/**偏移前后曲线起点没改变 */
|
|
export declare function OffsetOutlineSpNotChange(oldcu: Curve, newCu: Curve): boolean;
|
|
/**
|
|
* 获取板件封边轮廓线段数组
|
|
* 消除共线的数据,不改变轮廓方向
|
|
* isOffset-是否偏移轮廓用于查看
|
|
* */
|
|
export declare function GetBoardSealingCurves(br: Board, isOffset?: boolean): Curve[];
|
|
/**
|
|
* 获取板件轮廓
|
|
* 结果轮廓拆单用,统一逆时针数据
|
|
* hasSealing 轮廓是否包含封边
|
|
* 用户计算拆单侧孔面id
|
|
*
|
|
* //返回的曲线中 如果 hasSealing isParseSeal 那么将可以取出封边信息
|
|
*/
|
|
export declare function GetSealedBoardContour(br: Board, hasSealing: boolean, isParseSeal?: boolean): Polyline | Circle | undefined;
|
|
export declare function GetBoardSealingData(curve: Polyline | Circle): ISealingData[];
|
|
/**
|
|
* 将11对应的封边数值改成WebCAD的高级封边
|
|
* @param seals 每段曲线的封边
|
|
* @param curves 曲线表
|
|
* @returns 转换成高级封边后的封边值 (圆弧会编组)
|
|
*/
|
|
export declare function ConverEachSeal2HightSealData(seals: IHighSealedItem[], curves: Curve[]): IHighSealedItem[];
|
|
/**
|
|
* 设置板的上下左右封边(解析来自高级封边)
|
|
* @param br
|
|
* @param sealDatas 封边数据
|
|
* @param [sealCurves] 封边的曲线
|
|
* @param [brContourCurve] 传递封边的曲线轮廓
|
|
*/
|
|
export declare function SetBoardTopDownLeftRightSealData(br: Board, sealDatas: IHighSealedItem[], sealCurves?: Curve[], brContourCurve?: ExtrudeContourCurve): void;
|
|
export {};
|
|
//# sourceMappingURL=CalcEdgeSealing.d.ts.map
|