73 lines
2.2 KiB
TypeScript
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
|