gl-draw 0.18.15 → 0.18.17
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.
- package/dist/index.d.ts +199 -10
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -99,7 +99,9 @@ export declare class AmbientLightObject extends BaseObject<AmbientLight> {
|
|
|
99
99
|
constructor(lightOrColor?: AmbientLight | string | number, intensity?: number);
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
declare
|
|
102
|
+
declare const _analysisCategoryKeys: readonly ["geometries", "materials", "textures", "images"];
|
|
103
|
+
|
|
104
|
+
declare function analyzeSceneExport(sceneJson: any, exportReport?: SceneExportReport): SceneJsonSizeAnalysis;
|
|
103
105
|
|
|
104
106
|
declare function applyTextureColorSpace({ node, material, texture, }: ColorCorrectionOptions): void;
|
|
105
107
|
|
|
@@ -1721,6 +1723,13 @@ declare class EventDispatcher {
|
|
|
1721
1723
|
dispatchEvent(event: DispatcherEvent): void;
|
|
1722
1724
|
}
|
|
1723
1725
|
|
|
1726
|
+
declare interface ExportBaseObjectOptions {
|
|
1727
|
+
checkTextures?: boolean;
|
|
1728
|
+
includeHiddenChildren?: boolean;
|
|
1729
|
+
includeUnusedUnlockedMListMaterials?: boolean;
|
|
1730
|
+
includeAnalysisMeta?: boolean;
|
|
1731
|
+
}
|
|
1732
|
+
|
|
1724
1733
|
/**
|
|
1725
1734
|
* Custom ExtrudeGeometry extending Three.js ExtrudeGeometry.
|
|
1726
1735
|
*/
|
|
@@ -1910,7 +1919,7 @@ export declare class Lead extends Pick_2 {
|
|
|
1910
1919
|
setSize(width: number, height: number): void;
|
|
1911
1920
|
eraseAll(): void;
|
|
1912
1921
|
private _serializer;
|
|
1913
|
-
exportBaseObject(...args: Parameters<SceneSerializer['exportBaseObject']>):
|
|
1922
|
+
exportBaseObject(...args: Parameters<SceneSerializer['exportBaseObject']>): Object3DJSON;
|
|
1914
1923
|
restoreBaseObject(...args: Parameters<SceneSerializer['restoreBaseObject']>): Promise<BaseObject<Object3D<Object3DEventMap>>>;
|
|
1915
1924
|
dispose(): void;
|
|
1916
1925
|
}
|
|
@@ -2190,10 +2199,13 @@ declare class MList {
|
|
|
2190
2199
|
pencil: Pencil;
|
|
2191
2200
|
private materials;
|
|
2192
2201
|
fixBaseObjects: Map<string, BaseObject>;
|
|
2202
|
+
private lockedKeys;
|
|
2193
2203
|
private materialBaseObjectMap;
|
|
2194
2204
|
private static _emptyGeometry;
|
|
2195
2205
|
constructor(pencil: Pencil);
|
|
2196
|
-
add(key: string, material: Material
|
|
2206
|
+
add(key: string, material: Material, ops?: {
|
|
2207
|
+
locked?: boolean;
|
|
2208
|
+
}): void;
|
|
2197
2209
|
get(key: string): Material | undefined;
|
|
2198
2210
|
getByName(name: string): Material | undefined;
|
|
2199
2211
|
getKey(material: Material): string | undefined;
|
|
@@ -2213,6 +2225,12 @@ declare class MList {
|
|
|
2213
2225
|
addBaseObjectMap(object: BaseObject): void;
|
|
2214
2226
|
rmBaseObjectMap(object: BaseObject, targetMaterial?: Material | Material[]): void;
|
|
2215
2227
|
getBaseObjectMap(material: Material): Set<BaseObject<Object3D<Object3DEventMap>>>;
|
|
2228
|
+
setLocked(key: string, locked?: boolean): boolean;
|
|
2229
|
+
lock(key: string): boolean;
|
|
2230
|
+
unlock(key: string): boolean;
|
|
2231
|
+
isLocked(key: string): boolean;
|
|
2232
|
+
isMaterialUsed(key: string): boolean;
|
|
2233
|
+
shouldExportFixBaseObject(key: string, includeUnusedUnlockedMaterials?: boolean): boolean;
|
|
2216
2234
|
syncChangeMaterial(oldMaterial: Material, material: Material): void;
|
|
2217
2235
|
dispose(): void;
|
|
2218
2236
|
}
|
|
@@ -2837,6 +2855,155 @@ declare class ScanEffect_2 {
|
|
|
2837
2855
|
stop(): void;
|
|
2838
2856
|
}
|
|
2839
2857
|
|
|
2858
|
+
declare interface SceneExportReasonStat {
|
|
2859
|
+
code: SceneExportSkipReasonCode;
|
|
2860
|
+
label: string;
|
|
2861
|
+
count: number;
|
|
2862
|
+
}
|
|
2863
|
+
|
|
2864
|
+
declare interface SceneExportReport {
|
|
2865
|
+
generatedAt: string;
|
|
2866
|
+
summary: {
|
|
2867
|
+
skippedCount: number;
|
|
2868
|
+
skippedObjectCount: number;
|
|
2869
|
+
skippedMaterialCount: number;
|
|
2870
|
+
lockRequiredMaterialCount: number;
|
|
2871
|
+
reasonStats: SceneExportReasonStat[];
|
|
2872
|
+
};
|
|
2873
|
+
objects: SceneExportSkippedObjectReportItem[];
|
|
2874
|
+
materials: SceneExportSkippedMaterialReportItem[];
|
|
2875
|
+
items: SceneExportSkippedReportItem[];
|
|
2876
|
+
}
|
|
2877
|
+
|
|
2878
|
+
declare interface SceneExportReportAction {
|
|
2879
|
+
type: 'lock-material';
|
|
2880
|
+
label: string;
|
|
2881
|
+
hint: string;
|
|
2882
|
+
key: string;
|
|
2883
|
+
command: string;
|
|
2884
|
+
}
|
|
2885
|
+
|
|
2886
|
+
declare interface SceneExportReportViewCard {
|
|
2887
|
+
key: string;
|
|
2888
|
+
label: string;
|
|
2889
|
+
value: number;
|
|
2890
|
+
tone?: 'default' | 'warning';
|
|
2891
|
+
}
|
|
2892
|
+
|
|
2893
|
+
declare interface SceneExportReportViewItem {
|
|
2894
|
+
id: string;
|
|
2895
|
+
title: string;
|
|
2896
|
+
subtitle?: string;
|
|
2897
|
+
reasonLabel: string;
|
|
2898
|
+
reasonDetail: string;
|
|
2899
|
+
tags: string[];
|
|
2900
|
+
action?: SceneExportSkippedReportItem['action'];
|
|
2901
|
+
}
|
|
2902
|
+
|
|
2903
|
+
declare interface SceneExportReportViewModel {
|
|
2904
|
+
cards: SceneExportReportViewCard[];
|
|
2905
|
+
sections: SceneExportReportViewSection[];
|
|
2906
|
+
}
|
|
2907
|
+
|
|
2908
|
+
declare interface SceneExportReportViewSection {
|
|
2909
|
+
key: 'objects' | 'materials';
|
|
2910
|
+
title: string;
|
|
2911
|
+
emptyText: string;
|
|
2912
|
+
count: number;
|
|
2913
|
+
items: SceneExportReportViewItem[];
|
|
2914
|
+
}
|
|
2915
|
+
|
|
2916
|
+
declare interface SceneExportSkippedMaterialReportItem extends SceneExportSkippedReportItemBase {
|
|
2917
|
+
category: 'material';
|
|
2918
|
+
name: string;
|
|
2919
|
+
locked: boolean;
|
|
2920
|
+
used: boolean;
|
|
2921
|
+
}
|
|
2922
|
+
|
|
2923
|
+
declare interface SceneExportSkippedObjectReportItem extends SceneExportSkippedReportItemBase {
|
|
2924
|
+
category: 'object';
|
|
2925
|
+
name: string;
|
|
2926
|
+
objectType: string;
|
|
2927
|
+
hiddenBy?: {
|
|
2928
|
+
key: string;
|
|
2929
|
+
title: string;
|
|
2930
|
+
};
|
|
2931
|
+
}
|
|
2932
|
+
|
|
2933
|
+
declare type SceneExportSkippedReportItem = SceneExportSkippedObjectReportItem | SceneExportSkippedMaterialReportItem;
|
|
2934
|
+
|
|
2935
|
+
declare interface SceneExportSkippedReportItemBase {
|
|
2936
|
+
id: string;
|
|
2937
|
+
category: 'object' | 'material';
|
|
2938
|
+
key: string;
|
|
2939
|
+
title: string;
|
|
2940
|
+
subtitle?: string;
|
|
2941
|
+
reasonCode: SceneExportSkipReasonCode;
|
|
2942
|
+
reasonLabel: string;
|
|
2943
|
+
reasonDetail: string;
|
|
2944
|
+
action?: SceneExportReportAction;
|
|
2945
|
+
}
|
|
2946
|
+
|
|
2947
|
+
declare type SceneExportSkipReasonCode = 'node-object' | 'select-hide' | 'hidden-self' | 'hidden-parent' | 'unused-unlocked-material';
|
|
2948
|
+
|
|
2949
|
+
declare type SceneJsonAnalysisCategoryKey = (typeof _analysisCategoryKeys)[number];
|
|
2950
|
+
|
|
2951
|
+
declare interface SceneJsonAnalysisCategorySummary {
|
|
2952
|
+
key: SceneJsonAnalysisCategoryKey;
|
|
2953
|
+
label: string;
|
|
2954
|
+
count: number;
|
|
2955
|
+
size: SceneJsonSizeInfo;
|
|
2956
|
+
topItems: SceneJsonAnalysisCategoryTopItem[];
|
|
2957
|
+
}
|
|
2958
|
+
|
|
2959
|
+
declare interface SceneJsonAnalysisCategoryTopItem {
|
|
2960
|
+
uuid: string;
|
|
2961
|
+
type?: string;
|
|
2962
|
+
name?: string;
|
|
2963
|
+
usedBy: string;
|
|
2964
|
+
size: SceneJsonSizeInfo;
|
|
2965
|
+
}
|
|
2966
|
+
|
|
2967
|
+
declare interface SceneJsonAnalysisEmptyImage {
|
|
2968
|
+
uuid: string;
|
|
2969
|
+
usedBy: string;
|
|
2970
|
+
}
|
|
2971
|
+
|
|
2972
|
+
declare interface SceneJsonAnalysisExportReportSummary {
|
|
2973
|
+
summary: SceneExportReport['summary'];
|
|
2974
|
+
viewModel: SceneExportReportViewModel;
|
|
2975
|
+
}
|
|
2976
|
+
|
|
2977
|
+
declare interface SceneJsonAnalysisObjectGraphSummary {
|
|
2978
|
+
structureSize: SceneJsonSizeInfo;
|
|
2979
|
+
options?: SceneJsonAnalysisObjectOptionsSummary;
|
|
2980
|
+
}
|
|
2981
|
+
|
|
2982
|
+
declare interface SceneJsonAnalysisObjectOptionItem {
|
|
2983
|
+
key: string;
|
|
2984
|
+
type: string;
|
|
2985
|
+
size: SceneJsonSizeInfo;
|
|
2986
|
+
}
|
|
2987
|
+
|
|
2988
|
+
declare interface SceneJsonAnalysisObjectOptionsSummary {
|
|
2989
|
+
totalSize: SceneJsonSizeInfo;
|
|
2990
|
+
sharedRefCount: number;
|
|
2991
|
+
topItems: SceneJsonAnalysisObjectOptionItem[];
|
|
2992
|
+
}
|
|
2993
|
+
|
|
2994
|
+
declare interface SceneJsonAnalysisSharedOptionsEntry {
|
|
2995
|
+
index: number;
|
|
2996
|
+
size: SceneJsonSizeInfo;
|
|
2997
|
+
}
|
|
2998
|
+
|
|
2999
|
+
declare interface SceneJsonAnalysisSharedOptionsPool {
|
|
3000
|
+
count: number;
|
|
3001
|
+
size: SceneJsonSizeInfo;
|
|
3002
|
+
topEntries: SceneJsonAnalysisSharedOptionsEntry[];
|
|
3003
|
+
totalReferences: number;
|
|
3004
|
+
duplicatesEliminated: number;
|
|
3005
|
+
}
|
|
3006
|
+
|
|
2840
3007
|
/**
|
|
2841
3008
|
* 场景 JSON 引用回溯工具
|
|
2842
3009
|
* 从 sceneJson 中构建 uuid -> 可读路径 的映射表
|
|
@@ -2862,6 +3029,20 @@ declare class SceneJsonRefTracer {
|
|
|
2862
3029
|
private _traceTextures;
|
|
2863
3030
|
}
|
|
2864
3031
|
|
|
3032
|
+
declare interface SceneJsonSizeAnalysis {
|
|
3033
|
+
total: SceneJsonSizeInfo;
|
|
3034
|
+
exportReport?: SceneJsonAnalysisExportReportSummary;
|
|
3035
|
+
emptyUrlImages: SceneJsonAnalysisEmptyImage[];
|
|
3036
|
+
categories: SceneJsonAnalysisCategorySummary[];
|
|
3037
|
+
sharedOptionsPool?: SceneJsonAnalysisSharedOptionsPool;
|
|
3038
|
+
objectGraph?: SceneJsonAnalysisObjectGraphSummary;
|
|
3039
|
+
}
|
|
3040
|
+
|
|
3041
|
+
declare interface SceneJsonSizeInfo {
|
|
3042
|
+
bytes: number;
|
|
3043
|
+
mbStr: string;
|
|
3044
|
+
}
|
|
3045
|
+
|
|
2865
3046
|
declare class ScenePages extends OrigonPages<Scene> {
|
|
2866
3047
|
options: Options_4;
|
|
2867
3048
|
get scene(): Scene<Object3DEventMap>;
|
|
@@ -2883,12 +3064,11 @@ declare class SceneSerializer {
|
|
|
2883
3064
|
private get prefabGroup();
|
|
2884
3065
|
private get mList();
|
|
2885
3066
|
private get objects();
|
|
2886
|
-
exportCompressBaseObject(root: BaseObject,
|
|
2887
|
-
|
|
2888
|
-
|
|
2889
|
-
|
|
2890
|
-
|
|
2891
|
-
}): string;
|
|
3067
|
+
exportCompressBaseObject(root: BaseObject, options?: ExportBaseObjectOptions): Promise<ArrayBuffer>;
|
|
3068
|
+
exportBaseObject(root: BaseObject, { checkTextures, includeHiddenChildren, includeUnusedUnlockedMListMaterials, includeAnalysisMeta, }?: ExportBaseObjectOptions): Object3DJSON;
|
|
3069
|
+
private _getSkippedObjectReportItem;
|
|
3070
|
+
private _findHiddenAncestor;
|
|
3071
|
+
private _getBaseObjectTitle;
|
|
2892
3072
|
restoreBaseObject(target: BaseObject, data: string | ArrayBuffer | Object3DJSON, registry?: Record<string, new (...args: any[]) => any>, roomEnvMap?: any, createIfNeeded?: boolean): Promise<BaseObject<Object3D<Object3DEventMap>>>;
|
|
2893
3073
|
private _restoreFixBaseObjects;
|
|
2894
3074
|
private _eraseNonCoreObjects;
|
|
@@ -2899,6 +3079,15 @@ declare class SceneSerializer {
|
|
|
2899
3079
|
* 根据 objectType 和 registry 创建 BaseObject 实例
|
|
2900
3080
|
*/
|
|
2901
3081
|
private _createInstance;
|
|
3082
|
+
/**
|
|
3083
|
+
* 还原前克隆输入,避免修改调用方持有的数据对象。
|
|
3084
|
+
* 如果 structuredClone 失败,会输出首个不可复制的属性路径。
|
|
3085
|
+
*/
|
|
3086
|
+
private _cloneRestoreInput;
|
|
3087
|
+
private _findStructuredCloneFailure;
|
|
3088
|
+
private _appendClonePath;
|
|
3089
|
+
private _cloneObject3dUserData;
|
|
3090
|
+
private _normalizeStructuredCloneInput;
|
|
2902
3091
|
/**
|
|
2903
3092
|
* 安全地克隆 options,过滤掉不可序列化的 Three.js 对象
|
|
2904
3093
|
*/
|
|
@@ -3058,7 +3247,7 @@ declare class UseMaterial extends PointerEvent_2 {
|
|
|
3058
3247
|
|
|
3059
3248
|
export declare const utils: {
|
|
3060
3249
|
applyTextureColorSpace: typeof applyTextureColorSpace;
|
|
3061
|
-
|
|
3250
|
+
analyzeSceneExport: typeof analyzeSceneExport;
|
|
3062
3251
|
CacheManager: typeof CacheManager;
|
|
3063
3252
|
cartographicToCartesian: typeof cartographicToCartesian;
|
|
3064
3253
|
WGS84: {
|