webcad-ue4-api/types/Add-on/FilletUtils.d.ts
2024-10-29 17:14:43 +08:00

73 lines
2.2 KiB
TypeScript

import { Matrix4, Vector3 } from "three";
import { Arc } from "../DatabaseServices/Entity/Arc";
import { Curve } from "../DatabaseServices/Entity/Curve";
import { Polyline } from "../DatabaseServices/Entity/Polyline";
import { PromptEntityResult, PromptPointResult } from "../Editor/PromptResult";
declare enum ExtendType {
Start = 1,
End = 2
}
export interface FilletRes {
cu1?: Curve;
cu1Extend?: ExtendType;
cu2?: Curve;
cu2Extend?: ExtendType;
arc?: Arc;
}
export declare class FilletUtils {
FilletRadius: number;
Fillet(enRes1: PromptEntityResult, enRes2: PromptEntityResult): FilletRes;
private FilletLineOrArc;
/**
* 设置直线的坐标系 以便可以正确的被偏移
* @param {Curve} cu
* @param {Matrix4} newOCS
*/
SetCurveOCS(cu: Curve, newOCS: Matrix4): void;
FilletPolyLineSelf(enRes1: PromptEntityResult, enRes2: PromptEntityResult): FilletRes;
private FilletPolylineAndCurve;
FilletPolyLineAllAngular(enRes1: PromptEntityResult): FilletRes;
FindNearestPt(pts: Vector3[], target: Vector3): Vector3;
FilletBoard(brRes: PromptEntityResult, ptRes: PromptPointResult): Polyline | string;
/**
* 平行线倒角
*/
private FilletParallelLine;
/**
* 计算圆弧与圆弧没有交点的情况下倒角结果.
* @param enRes1
* @param enRes2
* @returns arc and arc
*/
private FilletArcAndArc;
/**
* 计算直线与圆弧没有交点(或相切)的情况下倒角结果
* @param enRes1
* @param enRes2
* @returns line and cir
*/
private FilletLineAndArc;
private GetIntersectAndSort;
/**
* 对图元列表进行按位编码,类型映射如下:
* # 1:line 2:arc 4:polyline
* @param enRes
* @param enRes2
* @returns
*/
private EnCode;
private ComputerDerv;
private ComputerDerv2;
private ExtendPt;
/**
* 切割或者延伸曲线,尖角化
*
* @param cu 处理的曲线
* @param interPt 原先的相交点
* @param pickPoint 鼠标点击点
* @returns 返回新的曲线
*/
private SplitCurve;
}
export {};
//# sourceMappingURL=FilletUtils.d.ts.map