初始化版本库,可用

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

42
types/Geometry/RegionParse.d.ts vendored Normal file
View File

@@ -0,0 +1,42 @@
import { Curve } from "../DatabaseServices/Entity/Curve";
import { Route, Vertice } from "./CurveMap";
declare type RegionRouteS = Route[][];
/**
面域分析,基于最小循环图重新实现的版本,拓展了实现求最大轮廓。
当最大轮廓=最小轮廓时,只绘制最大轮廓(独立轮廓无分裂)。
算法只实现去重模式,业务场景应该没有非去重模式。
如果需要非去重模式那么应该获取到多个CurveMap然后对多个CurveMap进行面域分析得出多个重叠的面域。
*/
export declare class RegionParse {
numDimensions: number;
private removeDuplicate;
RegionsOutline: RegionRouteS;
RegionsInternal: RegionRouteS;
ExpLineMap: Map<Curve, Curve[]>;
private _CurveCount;
/**
* @param cuList 请不要传递圆和椭圆.
* @param [numDimensions=3] 精度:小数点后个数
* @param [removeDuplicate=true] 删除重复(现在必须是true,请不要修改它)
*/
constructor(cuList: Curve[], numDimensions?: number, removeDuplicate?: boolean);
RemoveFilamentAt(v: Vertice, vertices: Vertice[]): void;
RemoveEdge(r: Route): void;
/**
* 找到最下方并且最左边的站 yx
*/
private FindLowerLeftStand;
/**
* 构造路线图. 每个节点对应下一个路口的路线表. 路口表使用逆时针排序,起始角度使用正x轴.
* @returns 所有的顶点
*/
private GenerateVerticeMap;
private BreakArc;
/**
* 曲线是否已经被算法使用
*/
GetCueveUsed(cu: Curve): boolean;
}
export {};
//# sourceMappingURL=RegionParse.d.ts.map