@manycore/custom-sdk 2.0.0-beta.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.d.ts +419 -181
  2. package/index.js +30 -40
  3. package/package.json +3 -10
package/index.d.ts CHANGED
@@ -4,14 +4,16 @@ import { IServClientService } from 'servkit';
4
4
  import { Number2 as Number2_2 } from '@manycore/custom-miniapp-sdk';
5
5
  import { ServService } from 'servkit';
6
6
 
7
- declare interface AMap<K, V> {
8
- clear(): void;
9
- delete(key: K): boolean;
10
- forEach(callbackfn: (value: V, key: K, map: AMap<K, V>) => void, thisArg?: any): void;
11
- get(key: K): V | undefined;
12
- has(key: K): boolean;
13
- set(key: K, value: V): this;
14
- readonly size: number;
7
+ /**
8
+ * app 配置服务
9
+ */
10
+ export declare class AppConfigService extends BaseService {
11
+ /**
12
+ * 更改获取JSON数据的默认配置信息
13
+ *
14
+ * @param option
15
+ */
16
+ setGetJsonConfig(option: IJsonOutputConfig): void;
15
17
  }
16
18
 
17
19
  /**
@@ -31,6 +33,11 @@ export declare class Application {
31
33
  * 判断当前是否在定制小程序下运行
32
34
  */
33
35
  isInCustomMiniAppMode(): boolean;
36
+ /**
37
+ * 添加调试的utils
38
+ * - 获取已初始化的service
39
+ */
40
+ private createDebugUtils;
34
41
  /**
35
42
  * 启动对接2.0应用
36
43
  *
@@ -158,7 +165,7 @@ export declare class CustomModelService extends BaseService {
158
165
  */
159
166
  getAllCustomModels(): Promise<IParamModelLite[]>;
160
167
  /**
161
- * 根据id获取所有模型
168
+ * 根据id获取指定模型
162
169
  * @param id 模型id
163
170
  * @returns Promise<IParamModelLite | undefined>
164
171
  */
@@ -183,6 +190,7 @@ export declare class CustomModelService extends BaseService {
183
190
  /**
184
191
  * 自定议字段枚举类型
185
192
  */
193
+
186
194
  declare enum EBzPropertyType {
187
195
  /**
188
196
  * 数字类型
@@ -242,20 +250,6 @@ export declare enum ECameraMoveDirection {
242
250
  BACK = "BACK"
243
251
  }
244
252
 
245
- /**
246
- * 线是否顺时针的值
247
- */
248
- declare enum EClockWise {
249
- /**
250
- * 顺时针
251
- */
252
- TRUE = "true",
253
- /**
254
- * 逆时针
255
- */
256
- FALSE = "false"
257
- }
258
-
259
253
  /**
260
254
  * 定制模型类型
261
255
  */
@@ -368,6 +362,20 @@ export declare enum EIntersectedCreatedType {
368
362
  PLANK_FURNITURE = 1
369
363
  }
370
364
 
365
+ /**
366
+ * 支持配置输出的交接数据类型
367
+ */
368
+ export declare enum EIntersectedInfoType {
369
+ /**
370
+ * 交接体
371
+ */
372
+ SHELL = "1",
373
+ /**
374
+ * 贯穿交接体
375
+ */
376
+ THROUGH_SHELL = "3"
377
+ }
378
+
371
379
  /**
372
380
  * 交接数据的数据类型
373
381
  */
@@ -379,7 +387,11 @@ export declare enum EIntersectedType {
379
387
  /**
380
388
  * 交界面
381
389
  */
382
- FACE = "2"
390
+ FACE = "2",
391
+ /**
392
+ * 贯穿交接体
393
+ */
394
+ THROUGH_SHELL = "3"
383
395
  }
384
396
 
385
397
  /**
@@ -464,7 +476,11 @@ export declare enum ELineType {
464
476
  * 椭圆
465
477
  * 当前代码中,暂不支持
466
478
  */
467
- ELLIPSE_ARC = 3
479
+ ELLIPSE_ARC = 3,
480
+ /**
481
+ * 圆
482
+ */
483
+ CIRCLE_CENTER = 4
468
484
  }
469
485
 
470
486
  /**
@@ -485,6 +501,44 @@ export declare enum EModelType {
485
501
  FITTING_MODEL = 'fitting_model',
486
502
  }
487
503
 
504
+ /**
505
+ * 当前参数的类型
506
+ */
507
+ declare enum EParamForm {
508
+ /**
509
+ * 单值, 老数据
510
+ * */
511
+ SINGLE = 0,
512
+ /**
513
+ * 区间
514
+ * */
515
+ RANGE = 1,
516
+ /**
517
+ * 可选
518
+ * */
519
+ OPTION = 2,
520
+ /**
521
+ * 递增
522
+ * */
523
+ STEP = 3,
524
+ /**
525
+ * 复合公式, 可以在公式和值之间切换
526
+ * */
527
+ COMPOUND_FORMULA = 4,
528
+ /**
529
+ * 公式
530
+ * */
531
+ FIXED_FORMULA = 5,
532
+ /**
533
+ * 固定值
534
+ * */
535
+ FIXED_VALUE = 6,
536
+ /**
537
+ * 复合公式, 公式+可选的组合
538
+ * */
539
+ COMPOUND_FORMULA_OPTION = 7
540
+ }
541
+
488
542
  /**
489
543
  * 当前模型的类型
490
544
  */
@@ -582,6 +636,28 @@ declare enum EParamType {
582
636
  BOOLEAN_LIST = "booleanlist"
583
637
  }
584
638
 
639
+ /**
640
+ * 值的单位类型
641
+ */
642
+ declare enum EParamUnitType {
643
+ /**
644
+ * 单位默认值
645
+ */
646
+ DEFAULT = 0,
647
+ /**
648
+ * 长度单位
649
+ */
650
+ LENGTH = 1,
651
+ /**
652
+ * 面积单位
653
+ */
654
+ AREA = 2,
655
+ /**
656
+ * 数量单位
657
+ */
658
+ NUMBER = 3
659
+ }
660
+
585
661
  /**
586
662
  * 板件轮廓路径类型
587
663
  */
@@ -619,7 +695,11 @@ export declare enum EPointType {
619
695
  /**
620
696
  * 椭圆
621
697
  */
622
- ELLIPSE = 4
698
+ ELLIPSE = 4,
699
+ /**
700
+ * 圆心点
701
+ */
702
+ CIRCLE_CENTER = 5
623
703
  }
624
704
 
625
705
  /**
@@ -757,14 +837,12 @@ export declare class FittingDesignService extends BaseService {
757
837
  * ```
758
838
  *
759
839
  * @param autoSave 默认开启自动保存
760
- * @deprecated a legacy api in sdk(version >= 2.0.0).
761
840
  */
762
841
  toggleAutoSave(autoSave?: boolean): void;
763
842
  /**
764
843
  * 获取当前是否开启了自动保存
765
844
  *
766
845
  * @example
767
- * @deprecated a legacy api in sdk(version >= 2.0.0).
768
846
  * ```typescript
769
847
  * fittingDesignService.isAutoSave();
770
848
  * ```
@@ -777,8 +855,8 @@ export declare class FittingDesignService extends BaseService {
777
855
  * ```typescript
778
856
  * fittingDesignService.getFittingDesignData();
779
857
  * ```
858
+ *
780
859
  * @param modelId 方案模型的ID,当没传时,就是获取场景中,正在预览的模型ID的方案数据
781
- * @deprecated a legacy api in sdk(version >= 2.0.0).
782
860
  */
783
861
  getFittingDesignData(modelId?: string): Promise<IFittingDesignData | null>;
784
862
  /**
@@ -797,7 +875,6 @@ export declare class FittingDesignService extends BaseService {
797
875
  *
798
876
  * @param modelid 模型ID,如果为空时,则表示传递的为查询当前正在编辑的模型的方案数据
799
877
  * @param casbin 是否为五金,当modelid为五金的id时,需要为true
800
- * @deprecated a legacy api in sdk(version >= 2.0.0).
801
878
  */
802
879
  getConnectedFittingDesign(modelid?: string, casbin?: boolean): Promise<IFittingDesignData | null>;
803
880
  /**
@@ -823,7 +900,6 @@ export declare class FittingDesignService extends BaseService {
823
900
  *
824
901
  * @param design 孔/槽方案信息
825
902
  * @param option { timeout, save} 调用超时,save 是否立即保存至后端,默认为true
826
- * @deprecated a legacy api in sdk(version >= 2.0.0).
827
903
  */
828
904
  appendFittingDesign(design: Partial<IFittingDesignData>, option?: {
829
905
  /**
@@ -851,7 +927,6 @@ export declare class FittingDesignService extends BaseService {
851
927
  *
852
928
  * @param design 需要保存的方案信息
853
929
  * @param option
854
- * @deprecated a legacy api in sdk(version >= 2.0.0).
855
930
  */
856
931
  saveDesign(design?: IFittingDesignData, option?: {
857
932
  timeout?: number;
@@ -867,25 +942,8 @@ export declare class FittingDesignService extends BaseService {
867
942
  * await fittingDesignService.clearDesign();
868
943
  * ```
869
944
  * @param options
870
- * @deprecated a legacy api in sdk(version >= 2.0.0).
871
945
  */
872
946
  clearDesign(options?: IBaseOptions): Promise<void>;
873
- /**
874
- * 渲染五金孔槽数据到场景中,不影响五金孔槽数据保存
875
- *
876
- * @param option.data 五金孔槽数据
877
- * ```
878
- * const fittingData = getFittingData(); // 获取五金孔槽数据
879
- * viewFitting({ data: fittingData }); // 初次渲染
880
- *
881
- * const newFittingData = getFittingData(); // 新的五金孔槽数据
882
- * viewFitting({ data: newFittingData }); // 更新场景内展示的五金孔槽
883
- * viewFitting({}); // 清除场景内展示的五金孔槽
884
- * ```
885
- */
886
- viewFitting(option?: {
887
- data?: IFittingDesignData;
888
- }): void;
889
947
  }
890
948
 
891
949
  /**
@@ -908,6 +966,16 @@ export declare class FittingDesignService extends BaseService {
908
966
  * @param id 待删除标识信息的模型ID,默认清空所有
909
967
  */
910
968
  clearFittingHint(id?: string | string[]): void;
969
+ /**
970
+ * 设置五金突出展示
971
+ */
972
+ setFittingHardwareHint(conf: Record<string, IHintBase>): void;
973
+ /**
974
+ * 清空当前已经配置的标识信息
975
+ *
976
+ * @param id 待删除标识信息的模型ID,默认清空所有
977
+ */
978
+ clearFittingHardwareHint(id?: string | string[]): void;
911
979
  }
912
980
 
913
981
  /**
@@ -1005,40 +1073,7 @@ export declare class FittingDesignService extends BaseService {
1005
1073
  * 交接信息
1006
1074
  * @vm-type UnknownType
1007
1075
  */
1008
- export declare interface IBaseIntersected {
1009
- /**
1010
- * 当前交接信息所处的板面信息
1011
- */
1012
- plankFaceId: number;
1013
- /**
1014
- * 当前交接信息所有顶点的信息
1015
- * * 如果为交接面,length为4
1016
- * * 如果为交接体,length为8
1017
- */
1018
- points: Number3[];
1019
- /**
1020
- * 当前交接信息产生的元件ID
1021
- */
1022
- linkedModelId: string;
1023
- /**
1024
- * 交接信息产生元件的父母ID
1025
- */
1026
- linkedParentModelId: string;
1027
- /**
1028
- * 交接数据的数据类型
1029
- */
1030
- '@type': EIntersectedType;
1031
- /**
1032
- * @ignore
1033
- * 交接体的shell数据
1034
- */
1035
- shell?: string;
1036
- /**
1037
- * 交接体板面是否需要开槽
1038
- * 当五金与板面产生的交接信息,为板面的部分,则为true
1039
- */
1040
- needGroove?: boolean;
1041
- }
1076
+ export declare type IBaseIntersected = (ICommonIntersected<EIntersectedType.FACE> & IPlankFaceId) | (ICommonIntersected<EIntersectedType.SHELL> & IPlankFaceId) | ICommonIntersected<EIntersectedType.THROUGH_SHELL>;
1042
1077
 
1043
1078
  /**
1044
1079
  * 获取模型数据/交界面/体数据参数
@@ -1046,7 +1081,7 @@ export declare class FittingDesignService extends BaseService {
1046
1081
  export declare interface IBaseOptions {
1047
1082
  /**
1048
1083
  * 最长等待时间(以ms为单位)
1049
- * @default 500000
1084
+ * @default 50000
1050
1085
  */
1051
1086
  timeout?: number;
1052
1087
  /**
@@ -1106,6 +1141,37 @@ export declare class FittingDesignService extends BaseService {
1106
1141
  update?: IUpdateInfo[];
1107
1142
  }
1108
1143
 
1144
+ declare interface ICommonIntersected<T extends EIntersectedType> {
1145
+ /**
1146
+ * 当前交接信息所有顶点的信息
1147
+ * * 如果为交接面,length为4
1148
+ * * 如果为交接体,length为8
1149
+ */
1150
+ points: Number3[];
1151
+ /**
1152
+ * 当前交接信息产生的元件ID
1153
+ */
1154
+ linkedModelId: string;
1155
+ /**
1156
+ * 交接信息产生元件的父母ID
1157
+ */
1158
+ linkedParentModelId: string;
1159
+ /**
1160
+ * 交接数据的数据类型
1161
+ */
1162
+ '@type': T;
1163
+ /**
1164
+ * @ignore
1165
+ * 交接体的shell数据
1166
+ */
1167
+ shell?: string;
1168
+ /**
1169
+ * 交接体板面是否需要开槽
1170
+ * 当五金与板面产生的交接信息,为板面的部分,则为true
1171
+ */
1172
+ needGroove?: boolean;
1173
+ }
1174
+
1109
1175
  /**
1110
1176
  * 场景内的某个模型
1111
1177
  */
@@ -1350,6 +1416,13 @@ export declare class FittingDesignService extends BaseService {
1350
1416
  * @default EProductDirection.XY
1351
1417
  */
1352
1418
  direction?: EProductDirection;
1419
+ /**
1420
+ * 支持配置的交接类型
1421
+ * 默认输出交接面&交接体
1422
+ * 交接面不支持配置(一定输出)
1423
+ * 支持配置输出交接体/贯穿交接体
1424
+ */
1425
+ intersectedInfoType?: EIntersectedInfoType[];
1353
1426
  }
1354
1427
 
1355
1428
  /**
@@ -1370,8 +1443,14 @@ export declare class FittingDesignService extends BaseService {
1370
1443
  force?: boolean;
1371
1444
  /**
1372
1445
  * 模板id
1446
+ * 如果不传,将从配置模板中,获取默认配置
1373
1447
  */
1374
1448
  templateId?: string;
1449
+ /**
1450
+ * 忽略重置默认位置,如果不传入此参数,将会从`AppConfigService`设置的配置中读取
1451
+ * @default false
1452
+ */
1453
+ ignoreResetPosition?: boolean;
1375
1454
  }
1376
1455
 
1377
1456
  export declare interface IGrooveData extends IBaseHoleGrooveData {
@@ -1534,6 +1613,19 @@ export declare class FittingDesignService extends BaseService {
1534
1613
  */
1535
1614
  export declare type IIntersectedResult = IIntersectedData;
1536
1615
 
1616
+ export declare interface IJsonOutputConfig {
1617
+ /**
1618
+ * 默认模板ID
1619
+ */
1620
+ defaultTemplateId?: string;
1621
+
1622
+ /**
1623
+ * 忽略重置默认位置
1624
+ * @default false
1625
+ */
1626
+ ignoreResetPosition?: boolean;
1627
+ }
1628
+
1537
1629
  /**
1538
1630
  * 轮廓路径线段表示
1539
1631
  */
@@ -1682,7 +1774,7 @@ export declare class FittingDesignService extends BaseService {
1682
1774
  * ]
1683
1775
  * },
1684
1776
  * "89D2793C-2B23-41A9-BA6E-4E3FS8490057": {
1685
- * // 自定义高亮配置信息
1777
+ * // 自定议高亮配置信息
1686
1778
  * "hintBorder": {
1687
1779
  * "color": "#234432",
1688
1780
  * "opacity": 0.8
@@ -1712,6 +1804,12 @@ export declare class FittingDesignService extends BaseService {
1712
1804
  invalidateList: string[];
1713
1805
  }
1714
1806
 
1807
+ /** 交互优先级配置 */
1808
+ export declare type InteractionPriorityConfig = Record<
1809
+ Exclude<EElementType, EElementType.PARAM_MODEL_ASSEMBLY>,
1810
+ number
1811
+ >;
1812
+
1715
1813
  /**
1716
1814
  * 获取交接信息
1717
1815
  *
@@ -1764,7 +1862,8 @@ export declare class FittingDesignService extends BaseService {
1764
1862
 
1765
1863
  /**
1766
1864
  * 对定制参数化模型进行精简处理后的结果
1767
- * @name ParamModel
1865
+ * @name CustomModel
1866
+ * @vm-type CustomModel
1768
1867
  */
1769
1868
  declare interface IParamModelLite_2 {
1770
1869
  /**
@@ -1778,63 +1877,10 @@ export declare class FittingDesignService extends BaseService {
1778
1877
  /**
1779
1878
  * 定制模型类型,在 @modelType 基础上进行了细分
1780
1879
  * @public
1880
+ * @readonly
1781
1881
  * @type ECustomModelType
1782
1882
  */
1783
1883
  type: ECustomModelType;
1784
- /**
1785
- * 模型在方案中的名称
1786
- * @readonly
1787
- * @public
1788
- * @type string
1789
- */
1790
- name: string;
1791
- /**
1792
- * 模型的备注信息
1793
- * @readonly
1794
- * @public
1795
- * @typedef Number3
1796
- */
1797
- remark?: string;
1798
- /**
1799
- * 当前位置信息
1800
- * @readonly
1801
- * @public
1802
- * @typedef Number3
1803
- */
1804
- position: Number3;
1805
- /**
1806
- * 当前模型的旋转信息
1807
- * @readonly
1808
- * @public
1809
- * @typedef Number3
1810
- * @deprecated 将废弃,推荐使用 rotation
1811
- */
1812
- rotate: Number3;
1813
- /**
1814
- * 当前模型的旋转信息
1815
- * @readonly
1816
- * @public
1817
- * @typedef Number3
1818
- */
1819
- rotation: Number3;
1820
- /**
1821
- * 当前尺寸信息
1822
- * @readonly
1823
- * @public
1824
- * @typedef Number3
1825
- */
1826
- size: Number3;
1827
- /**
1828
- * 模型当中自定议的参数信息
1829
- * @readonly
1830
- * @protected
1831
- * @typedef AMap<string, IParamModelLiteParam>
1832
- */
1833
- readonly params: AMap<string, IParamModelLiteParam>;
1834
- /**
1835
- * 模型当前用户自定义属性
1836
- */
1837
- readonly bzProperties: AMap<string, IBzParamModelLiteProperty>;
1838
1884
  /**
1839
1885
  * 商品ID,即商品后台的商品ID
1840
1886
  * @readonly
@@ -1878,6 +1924,13 @@ export declare class FittingDesignService extends BaseService {
1878
1924
  * @type boolean
1879
1925
  */
1880
1926
  readonly legal?: boolean;
1927
+ /**
1928
+ * 当前尺寸信息
1929
+ * @readonly
1930
+ * @public
1931
+ * @typedef Number3
1932
+ */
1933
+ readonly size: Number3;
1881
1934
  /**
1882
1935
  * 获取当前模型名称
1883
1936
  */
@@ -1909,17 +1962,15 @@ export declare class FittingDesignService extends BaseService {
1909
1962
  */
1910
1963
  getPosition(): Number3;
1911
1964
  /**
1912
- * 更新当前模型的旋转信息
1913
- * @description 特别说明,定制模型,使用的是右手坐标系,rotate字段中
1914
- * @param rotate {Number3} 旋转的弧度
1915
- * @deprecated 将废弃,推荐使用 rotation
1965
+ * 通过公式设置旋转
1966
+ * @internal
1916
1967
  */
1917
- setRotate(rotate: Number3): void;
1968
+ setPositionFormula(position: Number3Formula): void;
1918
1969
  /**
1919
- * 获取当前模型相对父级的旋转信息
1920
- * @deprecated 将废弃,推荐使用 rotation
1970
+ * 读取模型位置旋转
1971
+ * @internal
1921
1972
  */
1922
- getRotate(): Number3;
1973
+ getPositionFormula(): Number3Formula | undefined;
1923
1974
  /**
1924
1975
  * 更新当前模型的旋转信息
1925
1976
  * @description 特别说明,定制模型,使用的是右手坐标系,rotation字段中
@@ -1930,6 +1981,16 @@ export declare class FittingDesignService extends BaseService {
1930
1981
  * 获取当前模型相对父级的旋转信息
1931
1982
  */
1932
1983
  getRotation(): Number3;
1984
+ /**
1985
+ * 通过公式设置旋转
1986
+ * @internal
1987
+ */
1988
+ setRotationFormula(rotation: Number3Formula): void;
1989
+ /**
1990
+ * 读取模型位置旋转
1991
+ * @internal
1992
+ */
1993
+ getRotationFormula(): Number3Formula | undefined;
1933
1994
  /**
1934
1995
  * 获取当前模型所处的工具线
1935
1996
  */
@@ -2034,6 +2095,10 @@ export declare class FittingDesignService extends BaseService {
2034
2095
  * 获取设计对象id
2035
2096
  */
2036
2097
  getElementId(): ElementId | undefined;
2098
+ /**
2099
+ * 获取当前模型中的板件轮廓信息
2100
+ */
2101
+ getPlankPathAsync(): Promise<IParamModelLitePlankPath | undefined>;
2037
2102
  }
2038
2103
 
2039
2104
  /**
@@ -2041,6 +2106,50 @@ export declare class FittingDesignService extends BaseService {
2041
2106
  * @vm-type IParamType
2042
2107
  */
2043
2108
  declare interface IParamModelLiteParam<T = any> {
2109
+ /**
2110
+ * 获取参数名称
2111
+ */
2112
+ getName(): string;
2113
+ /**
2114
+ * 当前参数描述信息
2115
+ */
2116
+ getDescription(): string | undefined;
2117
+ /**
2118
+ * 获取参数简写名称
2119
+ */
2120
+ getSimpleName(): string | undefined;
2121
+ /**
2122
+ * 获取参数的显示名称
2123
+ */
2124
+ getDisplayName(): string;
2125
+ /**
2126
+ * 当前参数在工具中是否可见
2127
+ */
2128
+ getVisible(): boolean | undefined;
2129
+ /**
2130
+ * 当前字段是否被覆盖
2131
+ */
2132
+ isOverridden(): boolean | undefined;
2133
+ /**
2134
+ * 取消当前字段被覆盖
2135
+ */
2136
+ cancelOverride(): any;
2137
+ /**
2138
+ * 获取当前字段的单位类型
2139
+ */
2140
+ getUnitType(): EParamUnitType | undefined;
2141
+ /**
2142
+ * 获取当前参数类型
2143
+ */
2144
+ getParamForm(): EParamForm | undefined;
2145
+ /**
2146
+ * 判断当前值是否使用复合公式
2147
+ */
2148
+ isUsingMixFormula(): boolean;
2149
+ /**
2150
+ * 重置当前参数使用复合公式
2151
+ */
2152
+ useMixFormula(): void;
2044
2153
  /**
2045
2154
  * 获取当前参数解析后的值内容
2046
2155
  */
@@ -2061,7 +2170,7 @@ export declare class FittingDesignService extends BaseService {
2061
2170
  */
2062
2171
  setParsedValue(value: T): any;
2063
2172
  /**
2064
- * 获取当前参数类型
2173
+ * 获取当前参数值类型
2065
2174
  */
2066
2175
  getType(): EParamType;
2067
2176
  /**
@@ -2090,21 +2199,99 @@ export declare class FittingDesignService extends BaseService {
2090
2199
  */
2091
2200
  getRecommendValues(): NamedValue[];
2092
2201
  /**
2093
- * 获取value展示的值
2202
+ * 当为多布尔值时,展示的内容
2094
2203
  */
2095
2204
  getValueDisplayNames(): string[];
2096
2205
  /**
2097
2206
  * 是否需要将设置的参数覆盖原始参数信息
2098
2207
  * 仅对部分参数设计有效,具体细节,见对应场景
2208
+ * @deprecated 直接调用isOverridden()方法即可
2099
2209
  */
2100
2210
  getPrimitiveOverride(): boolean;
2101
2211
  /**
2102
2212
  * 是否需要将设置的参数覆盖原始参数信息
2213
+ * @deprecated 此逻辑,将在调用setValue时,自动完成此步骤,此方法可以忽略
2103
2214
  * @param value {boolean}
2104
2215
  */
2105
2216
  setPrimitiveOverride(value: boolean): void;
2217
+ /**
2218
+ * 获取公式
2219
+ * @internal
2220
+ */
2221
+ getFormula(): string | undefined;
2222
+ /**
2223
+ * 设置公式
2224
+ * @internal
2225
+ * @param formula
2226
+ */
2227
+ setFormula(formula: string): void;
2228
+ }
2229
+
2230
+ /**
2231
+ * 模型的板件轮廓信息
2232
+ */
2233
+ declare interface IParamModelLitePlankPath {
2234
+ /**
2235
+ * 获取原始外轮廓
2236
+ * 编辑器设置的外轮廓
2237
+ */
2238
+ getOriginOuterPath(): IPathData;
2239
+ /**
2240
+ * 获取原始内轮廓洞
2241
+ * 编辑器设置的内轮廓洞
2242
+ */
2243
+ getOriginInnerHoles(): IPathData[];
2244
+ /**
2245
+ * 获取外轮廓
2246
+ */
2247
+ getOuterPath(): IPathData;
2248
+ /**
2249
+ * 获取内轮廓洞的集合
2250
+ */
2251
+ getInnerHoles(): IPathData[];
2252
+ /**
2253
+ * 设置外轮廓
2254
+ * 全量替换原有的外轮廓
2255
+ */
2256
+ setOuterPath(path: IPathData): void;
2257
+ /**
2258
+ * 设置内轮廓洞
2259
+ * 全量替换原有的内轮廓洞
2260
+ */
2261
+ setInnerHoles(holes: IPathData[]): void;
2262
+ /**
2263
+ * 获取轮廓值
2264
+ * 调用updateAsync后取得准确
2265
+ * 叠加offset后的最终结果
2266
+ */
2267
+ getResult(): IPlankPathResult;
2268
+ }
2269
+
2270
+ /**
2271
+ * 轮廓数据
2272
+ */
2273
+ declare interface IPathData {
2274
+ /**
2275
+ * 轮廓上的点
2276
+ */
2277
+ paramPoints: IPlankPathPoint[];
2278
+ /**
2279
+ * 轮廓上的线
2280
+ */
2281
+ paramPathLines: IPlankPathLine[];
2282
+ /**
2283
+ * other fields
2284
+ */
2285
+ [key: string]: any;
2106
2286
  }
2107
2287
 
2288
+ declare type IPathResultData = IPathData & {
2289
+ /**
2290
+ * 轮廓绕向
2291
+ */
2292
+ clockwise?: boolean;
2293
+ };
2294
+
2108
2295
  /**
2109
2296
  * 板件轮廓描述
2110
2297
  */
@@ -2125,7 +2312,7 @@ export declare class FittingDesignService extends BaseService {
2125
2312
  /**
2126
2313
  * 获取外轮廓路径中心点坐标
2127
2314
  */
2128
- getCenterPoint(): Number2_2;
2315
+ getCenterPoint(): Number2_2 | undefined;
2129
2316
  }
2130
2317
 
2131
2318
  /**
@@ -2144,6 +2331,13 @@ export declare class FittingDesignService extends BaseService {
2144
2331
  modelId: string;
2145
2332
  }
2146
2333
 
2334
+ declare interface IPlankFaceId {
2335
+ /**
2336
+ * 当前交接信息所处的板面信息
2337
+ */
2338
+ plankFaceId: number;
2339
+ }
2340
+
2147
2341
  /**
2148
2342
  * 板件轮廓上的某条闭合路径,例如外轮廓、内部挖洞
2149
2343
  */
@@ -2175,7 +2369,7 @@ export declare class FittingDesignService extends BaseService {
2175
2369
  [key: string]: any;
2176
2370
  }
2177
2371
 
2178
- declare interface IPlankPathLineData {
2372
+ declare interface IPlankPathLine {
2179
2373
  /**
2180
2374
  * 线条类型
2181
2375
  */
@@ -2191,9 +2385,11 @@ export declare class FittingDesignService extends BaseService {
2191
2385
  /**
2192
2386
  * 半径 (只有弧线有)
2193
2387
  */
2194
- radius?: number;
2388
+ radius?: string;
2195
2389
  }
2196
2390
 
2391
+ declare type IPlankPathLineData = ILineBase;
2392
+
2197
2393
  declare interface IPlankPathPathData {
2198
2394
  /**
2199
2395
  * 偏移, 正数扩大路径范围,负数缩小路径范围
@@ -2209,12 +2405,12 @@ export declare class FittingDesignService extends BaseService {
2209
2405
  paramPathLines: IPlankPathLineData[];
2210
2406
  }
2211
2407
 
2212
- declare interface IPlankPathPointData {
2408
+ declare interface IPlankPathPoint {
2213
2409
  /**
2214
2410
  * 点的位置
2215
- *
2216
2411
  * @example
2217
2412
  * "123,-345"
2413
+ * "#W/2,#D/2"
2218
2414
  */
2219
2415
  position: string;
2220
2416
  /**
@@ -2226,9 +2422,11 @@ export declare class FittingDesignService extends BaseService {
2226
2422
  */
2227
2423
  cornerCutDistance?: [string, string];
2228
2424
  /**
2229
- * 是否顺时针, 前端必须保证逆时针
2425
+ * 切圆必传
2426
+ * 轮廓路径顺时针 true=外弧 false=内弧
2427
+ * 轮廓路径逆时针 true=内弧 false=外弧
2230
2428
  */
2231
- clockwise?: EClockWise;
2429
+ clockwise?: boolean;
2232
2430
  /**
2233
2431
  * 半径 (倒圆切圆专用)
2234
2432
  * @example
@@ -2238,7 +2436,8 @@ export declare class FittingDesignService extends BaseService {
2238
2436
  /**
2239
2437
  * 圆心偏移 (切圆专用)
2240
2438
  * @example
2241
- * "345.12"
2439
+ * "0,0"
2440
+ * "#W/2,#D/2"
2242
2441
  */
2243
2442
  offset?: string;
2244
2443
  /**
@@ -2255,6 +2454,22 @@ export declare class FittingDesignService extends BaseService {
2255
2454
  minorRadius?: string;
2256
2455
  }
2257
2456
 
2457
+ declare type IPlankPathPointData = IPointBase;
2458
+
2459
+ /**
2460
+ * 轮廓值
2461
+ */
2462
+ declare interface IPlankPathResult {
2463
+ /**
2464
+ * 外轮廓
2465
+ */
2466
+ outerPath: IPathResultData;
2467
+ /**
2468
+ * 内轮廓洞
2469
+ */
2470
+ innerHoles: IPathResultData[];
2471
+ }
2472
+
2258
2473
  /**
2259
2474
  * 轮廓路径端点表示
2260
2475
  */
@@ -2459,6 +2674,10 @@ export declare class FittingDesignService extends BaseService {
2459
2674
  * 交接体展示时,使用的颜色
2460
2675
  */
2461
2676
  intersectedBodyColor: number;
2677
+ /**
2678
+ * 贯穿交接体展示时,使用的颜色
2679
+ */
2680
+ intersectedThroughColor: number;
2462
2681
  /**
2463
2682
  * 五金与柜体之间,交接面产生的颜色
2464
2683
  */
@@ -2915,7 +3134,7 @@ export declare class FittingDesignService extends BaseService {
2915
3134
  * ]
2916
3135
  * },
2917
3136
  * "89D2793C-2B23-41A9-BA6E-4E3FS8490057": {
2918
- * // 自定义标识颜色
3137
+ * // 自定议标识颜色
2919
3138
  * "hintBorder": {
2920
3139
  * "color": "#234432",
2921
3140
  * "opacity": 0.8
@@ -2986,7 +3205,6 @@ export declare class FittingDesignService extends BaseService {
2986
3205
  * ```
2987
3206
  *
2988
3207
  * @param options
2989
- * @deprecated a legacy api in sdk(version >= 2.0.0).
2990
3208
  */
2991
3209
  getParamData(options?: IGetParamModelJsonOption): Promise<any>;
2992
3210
  /**
@@ -3013,14 +3231,12 @@ export declare class FittingDesignService extends BaseService {
3013
3231
  * 获取方案顶层模型列表
3014
3232
  * @param options
3015
3233
  * @param options.ignoreCategory 真分类id过滤,默认值 CUSTOM_MODEL_CATEGORY_FILTER
3016
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3017
3234
  */
3018
3235
  getTopParamModels(options?: ITopParamModelListOption): Promise<ITopParamModelDataResponse>;
3019
3236
  /**
3020
3237
  * 获取模型缩略图信息
3021
3238
  * @param modelId
3022
3239
  * @returns 模型缩略图信息
3023
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3024
3240
  */
3025
3241
  getParamModelPhotoById(modelId: string | string[]): Promise<IParamModelPhotoResponse[]>;
3026
3242
  }
@@ -3042,7 +3258,6 @@ export declare class FittingDesignService extends BaseService {
3042
3258
  * 主要是用来与场景交互的,监听当前选中的对象, 获取选中的内容
3043
3259
  *
3044
3260
  * @example
3045
- * @deprecated a legacy service in sdk(version >= 2.0.0).
3046
3261
  * ```typescript
3047
3262
  * const viewerSelectionService = application.getService(ModelViewerSelectionService);
3048
3263
  * ```
@@ -3056,7 +3271,6 @@ export declare class FittingDesignService extends BaseService {
3056
3271
  private hasWatchSelectionChange;
3057
3272
  /**
3058
3273
  * 获取当前选中的数据
3059
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3060
3274
  */
3061
3275
  getSelected(): ISelected;
3062
3276
  /**
@@ -3064,7 +3278,6 @@ export declare class FittingDesignService extends BaseService {
3064
3278
  * 同时选中多个模型暂未支持,请勿使用
3065
3279
  * @param option ISetSelectedByIdOption
3066
3280
  * @example
3067
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3068
3281
  * ```
3069
3282
  * const viewerSelectionService = application.getService(ModelViewerSelectionService);
3070
3283
  * const selectOption = {
@@ -3081,7 +3294,6 @@ export declare class FittingDesignService extends BaseService {
3081
3294
  * 同时取消多个模型暂未支持,请勿使用
3082
3295
  * @param option
3083
3296
  * @example
3084
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3085
3297
  * ```
3086
3298
  * const viewerSelectionService = application.getService(ModelViewerSelectionService);
3087
3299
  * const selectOption = {
@@ -3115,19 +3327,16 @@ export declare class FittingDesignService extends BaseService {
3115
3327
  /**
3116
3328
  * 监听当前选中内容
3117
3329
  * @param fn
3118
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3119
3330
  */
3120
3331
  on(fn: (param: ISelected) => any): void;
3121
3332
  /**
3122
3333
  * 取消监听选中变化
3123
3334
  * @param fn
3124
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3125
3335
  */
3126
3336
  off(fn?: (param: ISelected) => any): void;
3127
3337
  /**
3128
3338
  * 监听当前选中的内容(触发一次后自动取消)
3129
3339
  * @param fn
3130
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3131
3340
  */
3132
3341
  once(fn: (param: ISelected) => any): void;
3133
3342
  /**
@@ -3223,26 +3432,14 @@ export declare class FittingDesignService extends BaseService {
3223
3432
  export declare class ModelViewerService extends BaseService {
3224
3433
  /**
3225
3434
  * 将工具方案中,选中的模型,加载到对接 2.0 小程序中展示
3226
- *
3227
- * 此方法,会成Application.start方法中,默认执行
3228
- *
3229
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3230
3435
  */
3231
3436
  viewSelected(): Promise<void>;
3232
3437
  /**
3233
3438
  * 指定模型的 ID,将当前模型加载到工具方案当中
3234
3439
  *
3235
3440
  * @param id 模型ID
3236
- * @deprecated a legacy api in sdk(version >= 2.0.0).
3237
3441
  */
3238
3442
  viewModelById(id: string | string[]): Promise<void>;
3239
- /**
3240
- * 通过模型id渲染指定模型
3241
- * >目前仅支持顶层模型、组合渲染
3242
- */
3243
- viewParamModel({ id }: {
3244
- id: string;
3245
- }): Promise<void>;
3246
3443
  /**
3247
3444
  * 重置视图展示视角
3248
3445
  */
@@ -3257,6 +3454,11 @@ export declare class FittingDesignService extends BaseService {
3257
3454
  * @param flag
3258
3455
  */
3259
3456
  toggleModelTransparent(flag: boolean): void;
3457
+ /**
3458
+ * 设置模型为全透明模式
3459
+ * @param flag
3460
+ */
3461
+ toggleModelFullTransparent(flag: boolean): void;
3260
3462
  /**
3261
3463
  * 配置模型展示信息
3262
3464
  * - 交界面、交接体颜色
@@ -3274,6 +3476,24 @@ export declare class FittingDesignService extends BaseService {
3274
3476
  * > example: 调用工具API修改模型材质纹理方向(或其他属性)后,调用该API可手动同步模型修改到小程序渲染场景中(效果同退出小程序后重新进入),如果小程序中不存在任意模型,则抛出错误.
3275
3477
  */
3276
3478
  refreshModel(): Promise<void>;
3479
+ /**
3480
+ * 修改场景中可交互对象的[优先级](https://manual.kujiale.com/custom-sdk#/mini-app/annotation/index?id=%e4%ba%a4%e4%ba%92%e4%bc%98%e5%85%88%e7%ba%a7)配置
3481
+ * > 配置生效必须重新渲染模型
3482
+ * @example
3483
+ * ```
3484
+ * const viewer = getApplication().getService(ModelViewerService);
3485
+ * viewer.setInteractionPriority({ hole: 10, groove: 10, paramModel: 5 });
3486
+ * viewer.viewSelected(); // 重新渲染模型
3487
+ * viewer.viewModelById('xx'); // 指定渲染某个模型
3488
+ * ```
3489
+ *
3490
+ * @param options
3491
+ */
3492
+ setInteractionPriority(options: Partial<InteractionPriorityConfig>): void;
3493
+ /**
3494
+ * 获取场景中可交互对象的优先级配置
3495
+ */
3496
+ getInteractionPriority(): InteractionPriorityConfig;
3277
3497
  }
3278
3498
 
3279
3499
  /**
@@ -3311,6 +3531,24 @@ export declare class FittingDesignService extends BaseService {
3311
3531
  z: number;
3312
3532
  }
3313
3533
 
3534
+ /**
3535
+ * 设置旋转/位置
3536
+ */
3537
+ declare interface Number3Formula {
3538
+ /**
3539
+ * X轴方向上的公式
3540
+ */
3541
+ x: string;
3542
+ /**
3543
+ * Y轴方向上的公式
3544
+ */
3545
+ y: string;
3546
+ /**
3547
+ * Z轴方向上的公式
3548
+ */
3549
+ z: string;
3550
+ }
3551
+
3314
3552
  /**
3315
3553
  * 底层板件轮廓服务,支持对模型json中轮廓解析为特定的类,暴露对轮廓数据查看、计算、修改的方法
3316
3554
  *