This commit is contained in:
xiefan
2020-09-24 11:04:12 +08:00
commit b654ca8c7f
1633 changed files with 86830 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { TemplateAction } from "./TemplateAction";
export declare enum ThicknessDirection {
Center = 0,
Back = 1,
Front = 2
}
export interface ThicknessActionData {
Direction: ThicknessDirection;
/**
* 附加的动作
*/
Actions: TemplateAction[];
}
/**
* 模版动作
*/
export declare class TempateThicknessAction extends TemplateAction {
EntityDirectionMap: Map<ObjectId, ThicknessActionData>;
protected _Update(paramDiff: number, newValue: number): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TempateThicknessAction.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TempateThicknessAction.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Action/TempateThicknessAction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,oBAAY,kBAAkB;IAE1B,MAAM,IAAI;IACV,IAAI,IAAI;IACR,KAAK,IAAI;CACZ;AAED,MAAM,WAAW,mBAAmB;IAGhC,SAAS,EAAE,kBAAkB,CAAC;IAC9B;;OAEG;IACH,OAAO,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,qBACa,sBAAuB,SAAQ,cAAc;IAEtD,kBAAkB,EAAE,GAAG,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAa;IACnE,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IA0BrD,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAqBvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAe3B"}

View File

@@ -0,0 +1,21 @@
import { CADFiler } from "../../CADFiler";
import { TemplateParam } from "../Param/TemplateParam";
/**
* 模版动作
*/
export declare class TemplateAction {
Name: string;
/** 表达式应该只能依赖自身 */
Expr: string;
Description: string;
parent: TemplateParam;
WriteAllObjectRecord(): void;
Update(paramDiff: number | string, newValue: number | string): void;
/**
* @重载
*/
protected _Update(paramDiff: number | string, newValue: number | string): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateAction.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateAction.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Action/TemplateAction.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD;;GAEG;AACH,qBACa,cAAc;IAEX,IAAI,EAAE,MAAM,CAAQ;IAChC,kBAAkB;IACN,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,oBAAoB;IAKpB,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAgB5D;;OAEG;IACH,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAQvE,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAWvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAO3B"}

View File

@@ -0,0 +1,14 @@
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { TemplateAction } from "./TemplateAction";
export declare class TemplateFilletAction extends TemplateAction {
FilletDatas: {
Entity: ObjectId;
ArcParams: number[];
}[];
constructor();
protected _Update(paramDiff: number, newValue: number): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateFilletAction.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateFilletAction.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Action/TemplateFilletAction.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBACa,oBAAqB,SAAQ,cAAc;IAGpD,WAAW,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAC;KAAE,EAAE,CAAM;;IAO/D,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAwCrD,QAAQ,CAAC,IAAI,EAAE,QAAQ;IA8BvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAa3B"}

View File

@@ -0,0 +1,14 @@
import { Vector3 } from "three";
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { TemplateAction } from "./TemplateAction";
export declare class TemplateMoveAction extends TemplateAction {
StretchDirection: Vector3;
MoveEntitys: ObjectId[];
constructor(StretchDirection?: Vector3, MoveEntitys?: ObjectId[]);
protected _CacheMoveVector: Vector3;
protected _Update(paramDiff: number): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateMoveAction.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateMoveAction.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Action/TemplateMoveAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGhC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBACa,kBAAmB,SAAQ,cAAc;IAG/B,gBAAgB;IACxB,WAAW,EAAE,QAAQ,EAAE;gBADf,gBAAgB,UAAc,EACtC,WAAW,GAAE,QAAQ,EAAO;IAMvC,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACpC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM;IAmBnC,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAavB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAS3B"}

View File

@@ -0,0 +1,16 @@
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { TemplateMoveAction } from "./TemplateMoveAction";
/**
* Stretch夹点动作
*/
export declare class TemplateStretchGripAction extends TemplateMoveAction {
EntityStretchPointMap: {
entity: ObjectId;
indexs: number[];
}[];
protected _Update(dist: number): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateStretchGripAction.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateStretchGripAction.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Action/TemplateStretchGripAction.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,qBACa,yBAA0B,SAAQ,kBAAkB;IAE7D,qBAAqB,EAAE;QACnB,MAAM,EAAE,QAAQ,CAAC;QACjB,MAAM,EAAE,MAAM,EAAE,CAAC;KACpB,EAAE,CAAM;IAET,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM;IAe9B,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAcvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAW3B"}

View File

@@ -0,0 +1,29 @@
import { Box3, Vector3 } from "three";
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { TemplateMoveAction } from "./TemplateMoveAction";
/**
* 拽拖比例盒子动作
*/
export declare class TemplateStretchScaleBoxAction extends TemplateMoveAction {
StretchDirection: Vector3;
EntityStretchData: {
entity: ObjectId;
scaleBox: Box3;
}[];
/**
* 正常不会直接修改下面的2个属性,如果真的需要修改,请调用 `this.WriteAllObjectRecord`;
* 避免历史记录没有记录更新.
*/
constructor(StretchDirection?: Vector3, EntityStretchData?: {
entity: ObjectId;
scaleBox: Box3;
}[]);
protected _Update(dist: number): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
/**
* 拽拖固定大小盒子动作(弃用)
*/
//# sourceMappingURL=TemplateStretchScaleBoxAction.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateStretchScaleBoxAction.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Action/TemplateStretchScaleBoxAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,qBACa,6BAA8B,SAAQ,kBAAkB;IAOtD,gBAAgB,EAAE,OAAO;IACzB,iBAAiB,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC;KAAE,EAAE;IANrE;;;MAGE;gBAES,gBAAgB,GAAE,OAAuB,EACzC,iBAAiB,GAAE;QAAE,MAAM,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC;KAAE,EAAO;IAM1E,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM;IA8B9B,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAevB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAY3B;AAED;;GAEG"}

View File

@@ -0,0 +1,45 @@
import { CADFiler } from "../../CADFiler";
import { TemplateAction } from "../Action/TemplateAction";
import { TemplateRecord } from "../TemplateRecord";
import { TemplateParamType } from "./TemplateParamType";
/**
* 模版参数
*/
export declare class TemplateParam {
/**
* 变量名称
* 命名规范(同js) 并且 禁止前缀`_`,`$`.
*/
name: string;
/** 表达式 使用js引起求值(暂时) */
expr: string | number;
/**
* 设置参数的值,通常在模版设计中可以这么干
* 如果需要更新参数的动作,那么应该调用 UpdateParam
*/
value: string | number;
default: string | number;
description: string;
type: TemplateParamType;
min: number;
max: number;
option: any[];
actions: TemplateAction[];
parent: TemplateRecord;
constructor();
WriteAllObjectRecord(): void;
/**
* private:仅供内部调用.
* 更新参数值,并且触发动作.
*/
UpdateParam(value: string | number): void;
/**
* 计算表达式的值并更新
* @param vardefines 变量定义列表
* @param paramMap 所有的参数列表.(可能我们需要依赖更新它)
*/
EvalUpdate(vardefines: Object, paramMap: Map<string, TemplateParam>, evaled: Set<TemplateParam>, update?: boolean): number;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateParam.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateParam.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Param/TemplateParam.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,qBACa,aAAa;IAEtB;;;OAGG;IACS,IAAI,EAAE,MAAM,CAAC;IACzB,uBAAuB;IACX,IAAI,EAAE,MAAM,GAAG,MAAM,CAAM;IACvC;;;OAGG;IACS,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,iBAAiB,CAA2B;IAClD,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IAEZ,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,EAAE,cAAc,CAAC;;IAwBnC,oBAAoB;IAMpB;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAkClC;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,MAAM,UAAO,GAAG,MAAM;IAsDvH,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAkBvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAkB3B"}

View File

@@ -0,0 +1,10 @@
/**
* 模版参数类型
*/
export declare enum TemplateParamType {
String = 0,
Float = 1,
Int = 2,
Enum = 3
}
//# sourceMappingURL=TemplateParamType.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateParamType.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Param/TemplateParamType.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,oBAAY,iBAAiB;IAEzB,MAAM,IAAA;IACN,KAAK,IAAA;IACL,GAAG,IAAA;IACH,IAAI,IAAA;CACP"}

View File

@@ -0,0 +1,26 @@
import { Matrix4, Vector3 } from "three";
import { CADFiler } from "../../CADFiler";
import { ISerialize } from "../../ISerialize";
import { ObjectId } from "../../ObjectId";
import { TemplateRecord } from "../TemplateRecord";
export interface PositioningParam {
objects?: ObjectId[];
index?: number;
count?: number;
}
/**
* 模版定位信息(基类)
*/
export declare abstract class Positioning implements ISerialize {
SpaceCS: Matrix4;
SpaceSize: Vector3;
/**
* 定位 (更新 SpaceCS SpaceBox SpaceSize)
*/
Positioning(param?: PositioningParam): Promise<void>;
parent: TemplateRecord;
WriteAllObjectRecord(): void;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=Positioning.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Positioning.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Positioning/Positioning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAE7B,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD;;GAEG;AACH,8BACsB,WAAY,YAAW,UAAU;IAEnD,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACG,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB;IAK1C,MAAM,EAAE,cAAc,CAAC;IACvB,oBAAoB;IAMpB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAK9B,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAIlC"}

View File

@@ -0,0 +1,13 @@
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { Positioning } from "./Positioning";
export declare class PositioningBoardSpace extends Positioning {
ObjectId: ObjectId;
/**
* 定位
*/
Positioning(): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=PositioningBoardSpace.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"PositioningBoardSpace.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Positioning/PositioningBoardSpace.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBACa,qBAAsB,SAAQ,WAAW;IAEtC,QAAQ,EAAE,QAAQ,CAAC;IAC/B;;MAEE;IACI,WAAW;IAcjB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAM9B,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAOlC"}

View File

@@ -0,0 +1,19 @@
import { ClampSpaceParse } from "../../../Geometry/SpaceParse/ClampSpaceParse";
import { ClampSpaceParseFix } from "../../../Geometry/SpaceParse/ClampSpaceParseFix";
import { CADFiler } from "../../CADFiler";
import { ObjectId } from "../../ObjectId";
import { Positioning, PositioningParam } from "./Positioning";
export declare class PositioningClampSpace extends Positioning {
Objects: ObjectId[];
SelectBoxIndex: number[];
SignalDist: number;
FromSpaceParse(parse: ClampSpaceParse): void;
_SpaceParse: ClampSpaceParseFix;
/**
* 定位
*/
Positioning(param?: PositioningParam): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=PositioningClampSpace.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"PositioningClampSpace.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Positioning/PositioningClampSpace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAGrF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE9D,qBACa,qBAAsB,SAAQ,WAAW;IAEtC,OAAO,EAAE,QAAQ,EAAE,CAAM;IAGzB,cAAc,EAAE,MAAM,EAAE,CAAa;IACrC,UAAU,SAAO;IAE7B,cAAc,CAAC,KAAK,EAAE,eAAe;IAQrC,WAAW,EAAE,kBAAkB,CAAC;IAChC;;MAEE;IACI,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB;IAyB1C,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAgB9B,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAYlC"}

View File

@@ -0,0 +1,8 @@
import { Positioning } from "./Positioning";
/**
* 临时定位
* 在首次绘制时使用2点3点空间时通常不能使用定位,使用临时定位设置给模块后,模块在第一次使用后清空定位.
*/
export declare class PositioningTemporary extends Positioning {
}
//# sourceMappingURL=PositioningTemporary.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"PositioningTemporary.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/Positioning/PositioningTemporary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C;;;GAGG;AACH,qBACa,oBAAqB,SAAQ,WAAW;CAGpD"}

View File

@@ -0,0 +1,17 @@
import { ISpaceParse } from "../../../Geometry/SpaceParse/ISpaceParse";
import { BehindBoardOption, IGrooveOption } from "../../../UI/Store/BoardInterface";
import { TemplateBoardRecord } from "./TemplateBoard";
import { CADFiler } from "../../CADFiler";
/**
* 背板模板
*/
export declare class TemplateBehindBoard extends TemplateBoardRecord {
protected _option: BehindBoardOption;
private grooveoption;
constructor();
set Grooveoption(option: IGrooveOption);
GeneralBoardList(space: ISpaceParse): import("../../Entity/Board").Board[];
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateBehindBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateBehindBoard.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateBehindBoard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C;;GAEG;AACH,qBACa,mBAAoB,SAAQ,mBAAmB;IAExD,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAmC;IACvE,OAAO,CAAC,YAAY,CAKlB;;IAMF,IAAI,YAAY,CAAC,MAAM,EAAE,aAAa,EAIrC;IACD,gBAAgB,CAAC,KAAK,EAAE,WAAW;IAInC,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAoCvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CA2B3B"}

View File

@@ -0,0 +1,21 @@
import { ISpaceParse } from "../../../Geometry/SpaceParse/ISpaceParse";
import { BoardConfigOption, BoardProcessOption } from "../../../UI/Store/BoardInterface";
import { CADFiler } from "../../CADFiler";
import { Board } from "../../Entity/Board";
import { TemplateRecord } from "../TemplateRecord";
/**
* 板件模板的基类.(层板,立板,背板)
*/
export declare class TemplateBoardRecord extends TemplateRecord {
UseBoardProcessOption: boolean;
BoardProcessOption: BoardProcessOption;
DrawBoardCount: number;
protected _option: BoardConfigOption;
get Option(): BoardConfigOption;
set Option(option: BoardConfigOption);
protected GeneralBoardList(space: ISpaceParse): Board[];
protected Update(): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateBoard.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateBoard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAGzF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;GAEG;AACH,qBACa,mBAAoB,SAAQ,cAAc;IAGnD,qBAAqB,UAAS;IAC9B,kBAAkB,EAAE,kBAAkB,CAAC;IAE3B,cAAc,SAAK;IAE/B,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAC;IAMrC,IAAI,MAAM,IAIS,iBAAiB,CADnC;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAKnC;IACD,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE;cAIvC,MAAM;IA8DtB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAMvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAM3B"}

View File

@@ -0,0 +1,13 @@
import { ILatticeOption } from "../../../UI/Store/LatticeInterface";
import { CADFiler } from "../../CADFiler";
import { TemplateRecord } from "../TemplateRecord";
export declare class TemplateLatticeRecord extends TemplateRecord {
private option;
constructor();
get Option(): ILatticeOption;
set Option(option: ILatticeOption);
protected Update(): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateLatticeRecord.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateLatticeRecord.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateLatticeRecord.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBACa,qBAAsB,SAAQ,cAAc;IAErD,OAAO,CAAC,MAAM,CAA+C;;IAM7D,IAAI,MAAM,IAIS,cAAc,CADhC;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,cAAc,EAKhC;cAQe,MAAM;IAiDtB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IA4BvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CA4B3B"}

View File

@@ -0,0 +1,20 @@
import { ISpaceParse } from "../../../Geometry/SpaceParse/ISpaceParse";
import { LayerBoardOption, LayerNailOption } from "../../../UI/Store/BoardInterface";
import { TemplateBoardRecord } from "./TemplateBoard";
import { CADFiler } from "../../CADFiler";
import { Board } from "../../Entity/Board";
/**
* 层板模板
*/
export declare class TemplateLayerBoard extends TemplateBoardRecord {
constructor();
protected _option: LayerBoardOption;
private _nailOption;
get NailOption(): LayerNailOption;
set NailOption(nailOpt: LayerNailOption);
GeneralBoardList(space: ISpaceParse): Board[];
protected Update(): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateLayerBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateLayerBoard.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateLayerBoard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAG3C;;GAEG;AACH,qBACa,kBAAmB,SAAQ,mBAAmB;;IAOvD,SAAS,CAAC,OAAO,EAAE,gBAAgB,CAAkC;IACrE,OAAO,CAAC,WAAW,CAA6C;IAChE,IAAI,UAAU,IAIU,eAAe,CADtC;IACD,IAAI,UAAU,CAAC,OAAO,EAAE,eAAe,EAItC;IAED,gBAAgB,CAAC,KAAK,EAAE,WAAW;cAInB,MAAM;IAiBtB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IA+CvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAoC3B"}

View File

@@ -0,0 +1,12 @@
import { CADFiler } from "../../CADFiler";
import { TemplateRecord } from "../TemplateRecord";
/**
* 左右侧板模板
*/
export declare class TemplateLeftRightBoardRecord extends TemplateRecord {
constructor();
InitBaseParams(): this;
protected Update(): Promise<void>;
ReadFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateLeftRightBoardRecord.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateLeftRightBoardRecord.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateLeftRightBoardRecord.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;GAEG;AACH,qBACa,4BAA6B,SAAQ,cAAc;;IAO5D,cAAc;cAkBE,MAAM;IAgCtB,QAAQ,CAAC,IAAI,EAAE,QAAQ;CAwB1B"}

View File

@@ -0,0 +1,5 @@
import { TemplateRecord } from "../TemplateRecord";
export declare class TemplateSizeBoard extends TemplateRecord {
protected Update(): Promise<void>;
}
//# sourceMappingURL=TemplateSizeBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateSizeBoard.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateSizeBoard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,qBACa,iBAAkB,SAAQ,cAAc;cAEjC,MAAM;CA6BzB"}

View File

@@ -0,0 +1,21 @@
import { BoardProcessOption, TBBoardOption } from "../../../UI/Store/BoardInterface";
import { CADFiler } from "../../CADFiler";
import { TemplateRecord } from "../TemplateRecord";
/**顶底板模板 */
export declare class TemplateTopBottomBoard extends TemplateRecord {
private _topOption;
private _bottomOption;
UseBoardProcessOption: boolean;
BoardProcessOption: BoardProcessOption;
DrawCounts: [number, number, number];
constructor();
get TopOption(): TBBoardOption;
set TopOption(option: TBBoardOption);
get BottomOption(): TBBoardOption;
set BottomOption(option: TBBoardOption);
protected Update(): Promise<void>;
private SetBoardProcess;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateTopBottomBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateTopBottomBoard.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateTopBottomBoard.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAA4B,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAG/G,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,WAAW;AACX,qBACa,sBAAuB,SAAQ,cAAc;IAEtD,OAAO,CAAC,UAAU,CAA+C;IACjE,OAAO,CAAC,aAAa,CAAkD;IACvE,qBAAqB,UAAS;IAC9B,kBAAkB,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAa;;IAM7D,IAAI,SAAS,IAIS,aAAa,CADlC;IACD,IAAI,SAAS,CAAC,MAAM,EAAE,aAAa,EAKlC;IACD,IAAI,YAAY,IAIS,aAAa,CADrC;IACD,IAAI,YAAY,CAAC,MAAM,EAAE,aAAa,EAIrC;cAQe,MAAM;IA4FtB,OAAO,CAAC,eAAe;IAavB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IA0CvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAuC3B"}

View File

@@ -0,0 +1,15 @@
import { ISpaceParse } from "../../../Geometry/SpaceParse/ISpaceParse";
import { VerticalBoardOption } from "../../../UI/Store/BoardInterface";
import { TemplateBoardRecord } from "./TemplateBoard";
import { CADFiler } from "../../CADFiler";
/**
* 立板模板
*/
export declare class TemplateVerticalBoard extends TemplateBoardRecord {
constructor();
protected _option: VerticalBoardOption;
GeneralBoardList(space: ISpaceParse): import("../../Entity/Board").Board[];
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateVerticalBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateVerticalBoard.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateVerticalBoard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C;;GAEG;AACH,qBACa,qBAAsB,SAAQ,mBAAmB;;IAO1D,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAqC;IAC3E,gBAAgB,CAAC,KAAK,EAAE,WAAW;IAInC,QAAQ,CAAC,IAAI,EAAE,QAAQ;IA+BvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAqB3B"}

View File

@@ -0,0 +1,10 @@
import { CADFiler } from "../../CADFiler";
import { TemplateRecord } from "../TemplateRecord";
export declare class TemplateVisualSpace extends TemplateRecord {
IsVisible: boolean;
constructor();
protected Update(): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateVisualSpace.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateVisualSpace.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateVisualSpace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnD,qBACa,mBAAoB,SAAQ,cAAc;IAEvC,SAAS,UAAQ;;cAOb,MAAM;IAiCtB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAOvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAY3B"}

View File

@@ -0,0 +1,13 @@
import { IWineRackOption } from "../../../UI/Store/WineRackInterface";
import { CADFiler } from "../../CADFiler";
import { TemplateRecord } from "../TemplateRecord";
export declare class TemplateWineRackRecord extends TemplateRecord {
private option;
constructor();
get Option(): IWineRackOption;
set Option(option: IWineRackOption);
protected Update(): Promise<void>;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateWineRackRecord.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateWineRackRecord.d.ts","sourceRoot":"","sources":["../../../../../../src/DatabaseServices/Template/ProgramTempate/TemplateWineRackRecord.ts"],"names":[],"mappings":"AAQA,OAAO,EAAiB,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBACa,sBAAuB,SAAQ,cAAc;IAEtD,OAAO,CAAC,MAAM,CAAiD;;IAM/D,IAAI,MAAM,IAIS,eAAe,CADjC;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,EAKjC;cACe,MAAM;IAgDtB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAqCvB,SAAS,CAAC,IAAI,EAAE,QAAQ;CAmC3B"}

View File

@@ -0,0 +1,114 @@
import { Vector3 } from "three";
import { ISpaceParse } from "../../Geometry/SpaceParse/ISpaceParse";
import { INeedUpdateParams } from "../../UI/Components/Template/TemplateComponent";
import { Board } from "../Entity/Board";
import { Entity } from './../Entity/Entity';
import { TemplateAction } from "./Action/TemplateAction";
import { TemplateFilletAction } from "./Action/TemplateFilletAction";
import { TemplateRecord } from "./TemplateRecord";
/**
* 得到最深处的模块节点
*/
export declare function GetDeepestTemplate(brs: Entity[]): TemplateRecord | undefined;
/**
* 获得模块的尺寸
*/
export declare function GetTempateSize(template: TemplateRecord): Vector3;
export declare function GetTempateBoards(template: TemplateRecord): Board[];
export declare function GetTempateEntitys(template: TemplateRecord): Entity[];
/**
* 初始化模块
*
* 如果所有板件都在同一个模块, 那么传回原先的模块(或生成新模块)
* 如果所有板件都不在模块中,那么生成新模块.
* 如果板件在不同的模块中,那么询问用户是否生成新模块.
*
* @param ents 板件列表
* @returns 模块记录
*/
export declare function InitTemplate(ents: Entity[]): Promise<TemplateRecord | undefined>;
/**
* 使用板件更新模块的尺寸
*/
export declare function UpdateTemplateSizeOffBoards(template: TemplateRecord): void;
/**
* 设置模块坐标系
*
* 通常需要调用一下`UpdateTemplateSizeOffBoards`
*/
export declare function SetTempateCoordinate(template: TemplateRecord): Promise<void>;
/**
* 初始化模块的大小动作
*
* 应该已经传入正确的模块大小
* 应该先判断是否存在动作,如果有,则清空它.
* @param template
* @param [useScaleBox=true] 使用比例盒子拉伸动作?如果`=false`则使用夹点拉伸动作.
*/
export declare function InitTempateSizeActions(template: TemplateRecord, useScaleBox?: boolean): void;
/**
* 初始化模块的板厚动作
*
* 如果已经存在动作,则会清空旧的动作.
* @param template
* @param [autoCalculate=true] 自动计算板厚的变化方向,如果为否则交给用户选择
*/
export declare function InitTempateBoardThicknessActions(template: TemplateRecord, autoCalculate?: boolean): Promise<void>;
/**
* 对指定的板厚动作方向进行修改
*
* 大量抄自动初始化板厚动作的代码
*/
export declare function UpdateTempateBoardThicknessAction(template: TemplateRecord): Promise<void>;
/**
* 增加拉伸动作
*
* 返回动作,并不会直接加入到模块中,可以设置完动作属性在加入
* @param [useScaleBox=false] 使用比例盒子,否则使用夹点拽拖
*/
export declare function AddStretchAction(template: TemplateRecord, useScaleBox?: boolean): Promise<TemplateAction>;
/**
* 增加倒角动作
*
* 动作不会直接加到模块中,需要修改动作的参数后在加入
* @param template
* @returns
*/
export declare function AddFilletAction(template: TemplateRecord): Promise<TemplateFilletAction | undefined>;
/**
* 上传模块
* @param template 模块
* @param directoryId 目录id
* @returns 成功?
*/
export declare function UploadTemplate(template: TemplateRecord, directoryId: string): Promise<boolean>;
/**
* 上传更新模块
* @param template 模块
* @param templateId 模块的id
* @returns 成功?
*/
export declare function UploadUpdateTemplate(template: TemplateRecord, templateId: string): Promise<boolean>;
/**
* 删除模块节点,同时会删除其子节点
*/
export declare function DeleteTempate(template: TemplateRecord): void;
export declare function CheckTempalteParamName(name: string, nameSet: Set<string>): boolean;
export declare function GetOnlineTemplate(tid: string, props?: INeedUpdateParams[]): Promise<TemplateRecord>;
export declare function EditorOnlineTemplate(template: TemplateRecord, module_id: string, isCheck: boolean): Promise<void>;
/**仅移除模块节点 */
export declare function RemoveTemplate(temp: TemplateRecord): void;
/**
* 模块替换
* @param oldTemp
* @param newTemp
* @param [reSelectSpace=true]
* @param [extendExpr=true] 继承被替换模块的表达式,默认总是继承,仅当我们拾取空间到虚拟空间时,不继承变量,因为我们需要使用全新变量.
*/
export declare function ReplaceTemplate(oldTemp: TemplateRecord, newTemp: TemplateRecord, reSelectSpace?: boolean, extendExpr?: boolean): Promise<void>;
/**
* 删除当前模块节点
*/
export declare function DeleteCurrentTempate(template: TemplateRecord): void;
export declare function SetTemplatePositionAndSetParent(spaceParse: ISpaceParse, template: TemplateRecord, isAddDeepNode?: boolean): Promise<void>;
//# sourceMappingURL=TempateUtils.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TempateUtils.d.ts","sourceRoot":"","sources":["../../../../../src/DatabaseServices/Template/TempateUtils.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,150 @@
import { Matrix4, Vector3 } from "three";
import { ISpaceParse } from "../../Geometry/SpaceParse/ISpaceParse";
import { CADFiler } from "../CADFiler";
import { Board } from "../Entity/Board";
import { Entity } from "../Entity/Entity";
import { ObjectId } from "../ObjectId";
import { SymbolTableRecord } from "../SymbolTableRecord";
import { TemplateParam } from "./Param/TemplateParam";
import { Positioning } from "./Positioning/Positioning";
import { TemplateSplitType, TemplateType } from "./TemplateType";
export declare const TempateDefaultParamCount: number;
/**
* ### 模板记录
* 模版与实体总是互相关联的,所以添加实体进入模版的时候,应该保证这个记录已经加入到数据库
*
* 保留参数名称列表: L W H RX RY RZ X Y Z
* 保留参数前缀: _ $
*
* #### 批量修改参数值.
* 程序应该只传入expr的值,(禁止直接编辑value).传入后,交由模版进行计算更新.
* 模版内部消化,决定是否保留expr.(当纯数字将被直接计算成value而不保存expr).
*
* 由于`DIV`变量的计算机制,`LWH`变量将不能依赖同层变量,(这可能会导致一些错误)
*
* 当模块节点处于切割空间内时,如果想重新绑定空间,那么空间树的位置将发生变更(实际上不管是不是在切割空间内,空间位置都可能发生变更)
*
*/
export declare class TemplateRecord extends SymbolTableRecord {
Type: TemplateType;
SplitType: TemplateSplitType;
private _Parent;
Children: ObjectId[];
Params: TemplateParam[];
Objects: ObjectId[];
private _Positioning;
constructor();
get Name(): string;
set Name(name: string);
get Parent(): ObjectId;
set Parent(id: ObjectId);
get Root(): TemplateRecord;
get Entitys(): Entity[];
get AllEntitys(): Entity[];
Traverse(callback: (arg0: this) => void): void;
TraverseAsync(callback: (arg0: this) => Promise<void>): Promise<void>;
private _NodeDepthCache;
/** 节点深度,根节点=0 */
get NodeDepth(): number;
/** 模版定位 */
get Positioning(): Positioning;
/**
* 当存在夹层空间定位时,辅助定位表达式将使用夹层空间作为相对空间.
*/
set Positioning(p: Positioning);
/** 初始化基础参数 */
InitBaseParams(): this;
get LParam(): TemplateParam;
get WParam(): TemplateParam;
get HParam(): TemplateParam;
get PXParam(): TemplateParam;
get PYParam(): TemplateParam;
get PZParam(): TemplateParam;
get RXParam(): TemplateParam;
get RYParam(): TemplateParam;
get RZParam(): TemplateParam;
GetParam(paramName: string): TemplateParam | undefined;
SetParamExpr(paramName: string, expr: string | number): void;
DeleteParam(paramName: string): this;
/**
* 通常UI操作的时候,都需要更新整个树,所以隐藏这个API.
* see `UpdateTemplateTree`
*
* 更新当前节点
*
* ### 定位 (大小,方位)
*
* - (放弃)如果当前节点是更新树的最高层(但当前节点不是根节点)
* 那么当存在夹层空间定位的时候,可以不重复进行夹层空间定位,因为此时该空间不会发生变化.
* 补充:如果夹层空间的板件都在上层,那么可以做这个优化,如果定位的板件没在模块中,那么不能进行这个优化.
*
* - [更新优先]在没有实现变量依赖收集(类似mobx)时,我们认为`positioning`的优先级最高.
* 所以`positioning`会被优先更新. `LWH`,`XYZ`.
*
* - 在使用变量定位时,需要传入上层的坐标系,以便进行相对定位.
* 使用空间分析时,已经不需要上层坐标系.
*
* - 辅助定位:帮助空间坐标系进行旋转
* 辅助定位的参数变量将暴露出来.{RX RY RZ}
* 辅助定位作为参数变量时,用户使用值时很难正确的计算值,应~加入交互选择.(辅助计算)
*
* ### 变量表达式计算
*
* - `LWH`将被`positioning`替代,但变量定义仍然正常存在.
*
* - 变量大部分时候都是被批量更新,(同时传入许多参数).
*
*/
protected Update(): Promise<void>;
/**
* 使用PXPYPZ更新空间位置
*/
private UpdatePosition;
/**
* 旋转空间定位,如果旋转成功,那么SpaceSize和SpaceCS都可能被更新
*/
private RotateSpaceCS;
/** 以广度搜索优先更新节点树 */
UpdateTemplateTree(): any;
/** 缓存本节点的变量定义值,当子层需要本层的参数时,可以直接获取 */
protected _CacheParamVars: any;
protected _CacheSpaceCS: Matrix4;
protected _CacheSpaceSize: Vector3;
protected _CatchRootParam: Set<TemplateParam>;
/**
* 本节点可用的所有变量定义.(包括变量继承)
* @param [useCache=true] 当更新当前节点的时候,我们不希望使用缓存,(因为父节点的参数可能已经被更新)
* @returns
*/
GetParameterDefinition(useCache?: boolean): any;
/**
* 变量继承
* - 每继承一层,前缀增加一个`_`
* - 顶层前缀`$`
*
* @returns 继承于父空间的变量定义列表
*/
private GetParentParams;
get SpaceParse(): ISpaceParse;
/**
* 获得当前的模版空间的相对坐标系
* - 存在父节点的时候使用父节点的模版空间坐标系
* - 不存在父节点的时候使用自身的模版空间坐标系
*
* - 空间坐标系将被定位更新
*
* @param [useCache=true] 当更新当前节点的时候,我们不希望使用缓存,(因为父节点的参数可能已经被更新)
*/
private GetTemplateSpaceCS;
/**
* 获得当前模块的实际位置坐标系.
* 使用 GetTemplateSpaceCS 可能会得到不准确的位置.(得到Parent或者已经缓存的位置)
*/
GetTemplateRealitySpaceCS(): Matrix4;
get NeedUpdateParent(): boolean;
protected get PositioningSupportBoards(): Board[];
protected _Version: number;
ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=TemplateRecord.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateRecord.d.ts","sourceRoot":"","sources":["../../../../../src/DatabaseServices/Template/TemplateRecord.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,8 @@
import { ObjectCollection } from "../ObjectCollection";
import { TemplateRecord } from "./TemplateRecord";
import { Status } from "../../Common/Status";
export declare class TemplateTable extends ObjectCollection<TemplateRecord> {
Append(object: TemplateRecord, isCheckObjectCleanly?: boolean): import("../ObjectId").ObjectId;
Add(record: TemplateRecord, isCheckObjectCleanly?: boolean): Status;
}
//# sourceMappingURL=TemplateTable.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateTable.d.ts","sourceRoot":"","sources":["../../../../../src/DatabaseServices/Template/TemplateTable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,qBACa,aAAc,SAAQ,gBAAgB,CAAC,cAAc,CAAC;IAE/D,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,oBAAoB,UAAO;IAU1D,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,oBAAoB,UAAO,GAAG,MAAM;CAQnE"}

View File

@@ -0,0 +1,35 @@
import { Command } from "../../Editor/CommandMachine";
import { TemplateRecord } from "./TemplateRecord";
export declare function SelectTempate(msg?: string): Promise<TemplateRecord>;
export declare class AddTemplateAction {
exec(): Promise<void>;
}
export declare class TemplateAddParam {
exec(): Promise<void>;
}
export declare class TemplateSetCoordinate {
exec(): Promise<void>;
}
export declare class AutoTempateSizeAction {
exec(): Promise<void>;
}
export declare class UpdateTemplate {
exec(): Promise<void>;
}
export declare class UpdateParam2 {
timer: any;
exec(): Promise<void>;
}
export declare class TemplateAttach {
exec(): Promise<void>;
}
export declare class TemplateAttach2 {
exec(): Promise<void>;
}
export declare class TemplateAttach3 {
exec(): Promise<void>;
}
export declare class Command_ShowTemplatePositionBoards implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TemplateTest.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateTest.d.ts","sourceRoot":"","sources":["../../../../../src/DatabaseServices/Template/TemplateTest.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAkB,MAAM,6BAA6B,CAAC;AAWtE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,wBAAsB,aAAa,CAAC,GAAG,SAAU,GAAG,OAAO,CAAC,cAAc,CAAC,CAmB1E;AAED,qBAAa,iBAAiB;IAEpB,IAAI;CAsEb;AAED,qBAAa,gBAAgB;IAEnB,IAAI;CAgBb;AAED,qBAAa,qBAAqB;IAExB,IAAI;CAOb;AAED,qBAAa,qBAAqB;IAExB,IAAI;CAiCb;AAID,qBAAa,cAAc;IAEjB,IAAI;CAiCb;AAqCD,qBAAa,YAAY;IAErB,KAAK,MAAC;IACA,IAAI;CA4Cb;AAED,qBAAa,cAAc;IAEjB,IAAI;CAuDb;AAGD,qBAAa,eAAe;IAElB,IAAI;CA8Eb;AAED,qBAAa,eAAe;IAElB,IAAI;CA8Fb;AAED,qBAAa,kCAAmC,YAAW,OAAO;IAExD,IAAI;CAiBb"}

View File

@@ -0,0 +1,15 @@
/**
* 模版类型
*/
export declare enum TemplateType {
Usual = 0,
Grid = 1,
Array = 2
}
export declare enum TemplateSplitType {
None = -1,
X = 0,
Y = 1,
Z = 2
}
//# sourceMappingURL=TemplateType.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TemplateType.d.ts","sourceRoot":"","sources":["../../../../../src/DatabaseServices/Template/TemplateType.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,oBAAY,YAAY;IAGpB,KAAK,IAAA;IAEL,IAAI,IAAA;IAEJ,KAAK,IAAA;CACR;AAED,oBAAY,iBAAiB;IAEzB,IAAI,KAAK;IACT,CAAC,IAAI;IACL,CAAC,IAAI;IACL,CAAC,IAAI;CACR"}