feat(All):Initial
This commit is contained in:
Vendored
+93
@@ -0,0 +1,93 @@
|
||||
declare namespace ITHREEScene {
|
||||
interface SceneJSON extends import("three").SceneJSON {
|
||||
object: Object3DJSONObject,
|
||||
images?: Array<ImageJSON | string>;
|
||||
geometries?: import("three").BufferGeometryJSON[];
|
||||
textures?: import("three").TextureJSON[];
|
||||
materials?: import("three").MaterialJSON[];
|
||||
skeletons?: import("three").SkeletonJSON[];
|
||||
animations?: import("three").AnimationClipJSON[];
|
||||
}
|
||||
|
||||
interface Object3DJSONObject{
|
||||
"uuid": string,
|
||||
"type": "Scene",
|
||||
"name": string,
|
||||
"layers": number,
|
||||
"matrix": number[],
|
||||
"up": [0 | 1, 0 | 1, 0 | 1],
|
||||
"background"?: string,
|
||||
"environment"?: string,
|
||||
"environmentType"?: "ModelViewer";
|
||||
"backgroundRotation"?: [number, number, number, string],
|
||||
"environmentRotation"?: [number, number, number, string],
|
||||
"children"?: Array<string | import("three").Object3DJSONObject>
|
||||
}
|
||||
|
||||
interface ImageJSON {
|
||||
uuid: string;
|
||||
url: import("three").SerializedImage;
|
||||
}
|
||||
|
||||
interface MeshJSON extends import("three").MeshJSON {
|
||||
images: ImageJSON[];
|
||||
geometries: import("three").BufferGeometryJSON[];
|
||||
textures: import("three").TextureJSON[];
|
||||
materials: import("three").MaterialJSON[];
|
||||
skeletons?: import("three").SkeletonJSON[];
|
||||
animations?: import("three").AnimationClipJSON[];
|
||||
}
|
||||
}
|
||||
|
||||
declare interface ISceneScript {
|
||||
"name": string,
|
||||
"source": string
|
||||
}
|
||||
|
||||
declare interface ISceneJson {
|
||||
metadata: {},
|
||||
camera: {
|
||||
"metadata": {
|
||||
"version": number,
|
||||
"type": "Object",
|
||||
"generator": "Object3D.toJSON"
|
||||
},
|
||||
"object": {
|
||||
"uuid": string,
|
||||
"type": "PerspectiveCamera",
|
||||
"name": string,
|
||||
"layers": number,
|
||||
"matrix": number[],
|
||||
"up": [0 | 1, 0 | 1, 0 | 1],
|
||||
"fov": number,
|
||||
"zoom": number,
|
||||
"near": number,
|
||||
"far": number,
|
||||
"focus": number,
|
||||
"aspect": number,
|
||||
"filmGauge": number,
|
||||
"filmOffset": number
|
||||
}
|
||||
},
|
||||
scene: {
|
||||
"uuid": string,
|
||||
"metadata": {
|
||||
"version": number,
|
||||
"type": "Object",
|
||||
"generator": "Object3D.toJSON"
|
||||
},
|
||||
"textures": Array<import('three').Texture>,
|
||||
"images": string[],
|
||||
"object": ITHREEScene.Object3DJSONObject,
|
||||
"geometries"?: Array<any>,
|
||||
//groupChildren?: Array<string>
|
||||
},
|
||||
scripts: {
|
||||
[uuid: string]: ISceneScript[]
|
||||
},
|
||||
controls: {
|
||||
state: string
|
||||
},
|
||||
totalZipNumber: number,
|
||||
sceneInfo: IAppProject.SceneInfo,
|
||||
}
|
||||
Vendored
+6
@@ -0,0 +1,6 @@
|
||||
declare namespace IScript {
|
||||
interface IStruct {
|
||||
name: string;
|
||||
source: string;
|
||||
}
|
||||
}
|
||||
Vendored
+106
@@ -0,0 +1,106 @@
|
||||
/**
|
||||
* 扩展three.js类型声明
|
||||
*/
|
||||
import * as THREE from 'three';
|
||||
|
||||
declare module 'three' {
|
||||
interface Object3D extends THREE.Object3D{
|
||||
// 是否被忽略,仅用于显示(选中、场景树、打包等都会忽略)
|
||||
ignore?: boolean;
|
||||
|
||||
// 元数据
|
||||
metaData: {
|
||||
material?: string | Array<string> | THREE.Material
|
||||
};
|
||||
|
||||
// 是否为粒子发射器代理对象
|
||||
isEmitterProxy?: boolean;
|
||||
|
||||
// 此Object3D被操控时的代理对象
|
||||
proxy?: THREE.Object3D;
|
||||
|
||||
// 粒子发射器
|
||||
emitter?:any;
|
||||
|
||||
// 广告牌配置
|
||||
options?:any;
|
||||
|
||||
// html面板
|
||||
isHtmlPanel?: boolean;
|
||||
isHtmlSprite?: boolean;
|
||||
|
||||
// 3D Tiles
|
||||
isTilesGroup?: boolean;
|
||||
isTiles?: boolean;
|
||||
|
||||
//IFC模型
|
||||
isIFC?: boolean;
|
||||
|
||||
// CSS3D/CSS2D
|
||||
element:HTMLElement;
|
||||
|
||||
// 当前所处模型树层级
|
||||
groupLayer?:number;
|
||||
|
||||
// 在对象以及后代中执行的回调函数,仅对满足条件的对象执行
|
||||
traverseByCondition(callback: (Object3D) => void, condition: (Object3D) => boolean):void;
|
||||
|
||||
// 判断 parentObj 是否是 当前对象 的任意层级祖先(包括祖父、曾祖父等)
|
||||
isAncestor(parentObj:Object3D):boolean;
|
||||
|
||||
/* 变更的声明 */
|
||||
animations: Array<THREE.AnimationAction>;
|
||||
|
||||
// /* 以下补充THREE.Object3D自身缺少的声明 */
|
||||
// isInstancedMesh?: boolean;
|
||||
// count?:number;
|
||||
// instanceMatrix?: THREE.InstancedBufferAttribute;
|
||||
// instanceColor?:THREE.Color;
|
||||
// isBatchedMesh?:boolean;
|
||||
// perObjectFrustumCulled?:boolean;
|
||||
// sortObjects?:boolean;
|
||||
// _drawRanges?:any;
|
||||
// _reservedRanges?:any;
|
||||
// _visibility?: boolean;
|
||||
// _active?: boolean;
|
||||
// _bounds?: any;
|
||||
// _maxInstanceCount?: number;
|
||||
// _maxVertexCount?: number;
|
||||
// _maxIndexCount?: number;
|
||||
// _geometryInitialized?: boolean;
|
||||
// _geometryCount?: number;
|
||||
// _matricesTexture?: THREE.Texture;
|
||||
// _colorsTexture?: THREE.Texture;
|
||||
// boundingSphere?: THREE.Sphere;
|
||||
// boundingBox?: THREE.Box3;
|
||||
// isScene?: boolean;
|
||||
// material:THREE.Material | THREE.Material[];
|
||||
|
||||
/* 强制解决three本身类型声明产生的各种问题 */
|
||||
[key:string]:any;
|
||||
}
|
||||
|
||||
interface Camera{
|
||||
isPerspectiveCamera?:boolean;
|
||||
|
||||
updateProjectionMatrix:() => void;
|
||||
}
|
||||
|
||||
interface Material {
|
||||
// 从另一个材质中复制相同的属性(材质类型可能不同)
|
||||
copyAttr(source:THREE.Material):void;
|
||||
}
|
||||
|
||||
interface Object3DJSONObject{
|
||||
environmentType?: "ModelViewer";
|
||||
environment?: string;
|
||||
options?: {
|
||||
[key: string]: any
|
||||
}
|
||||
}
|
||||
|
||||
interface BufferGeometry {
|
||||
//BVH boundsTree 屬性
|
||||
boundsTree: any;
|
||||
}
|
||||
}
|
||||
Vendored
+17
@@ -0,0 +1,17 @@
|
||||
declare namespace IAppConfig {
|
||||
interface Shortcuts {
|
||||
translate: string;
|
||||
rotate: string;
|
||||
scale: string;
|
||||
undo: string;
|
||||
focus: string;
|
||||
}
|
||||
|
||||
interface Config {
|
||||
theme: 'os' | 'dark' | 'light';
|
||||
mainColor: string;
|
||||
history: boolean;
|
||||
shortcuts: Shortcuts;
|
||||
roamingCharacter: string;
|
||||
}
|
||||
}
|
||||
Vendored
+169
@@ -0,0 +1,169 @@
|
||||
declare namespace IAppProject {
|
||||
interface Renderer {
|
||||
fps: number;
|
||||
antialias: boolean;
|
||||
toneMapping: import("three").ToneMapping; //number;
|
||||
toneMappingExposure: number;
|
||||
shadow: {
|
||||
enabled: boolean;
|
||||
type: import("three").ShadowMapType; //number;
|
||||
};
|
||||
}
|
||||
|
||||
interface CSM{
|
||||
enabled: boolean;
|
||||
fade: boolean;
|
||||
maxFar: number;
|
||||
mode: "practical" | "logarithmic" | "uniform";
|
||||
shadowMapSize: 256 | 512 | 1024 | 2048 | 4096 | 8192 | 16384;
|
||||
lightDirectionX: number;
|
||||
lightDirectionY: number;
|
||||
lightDirectionZ: number;
|
||||
lightIntensity: number;
|
||||
lightColor: string;
|
||||
}
|
||||
|
||||
interface Effect {
|
||||
enabled: boolean;
|
||||
Outline: {
|
||||
enabled: boolean;
|
||||
edgeStrength: number;
|
||||
edgeGlow: number;
|
||||
edgeThickness: number;
|
||||
pulsePeriod: number;
|
||||
usePatternTexture: boolean;
|
||||
visibleEdgeColor: string;
|
||||
hiddenEdgeColor: string;
|
||||
};
|
||||
FXAA: {
|
||||
enabled: boolean;
|
||||
};
|
||||
UnrealBloom: {
|
||||
enabled: boolean;
|
||||
threshold: number;
|
||||
strength: number;
|
||||
radius: number;
|
||||
};
|
||||
Bokeh: {
|
||||
enabled: boolean;
|
||||
focus: number;
|
||||
aperture: number;
|
||||
maxblur: number;
|
||||
};
|
||||
Pixelate: {
|
||||
enabled: boolean;
|
||||
pixelSize: number;
|
||||
normalEdgeStrength: number;
|
||||
depthEdgeStrength: number;
|
||||
};
|
||||
Halftone: {
|
||||
enabled: boolean;
|
||||
shape: number;
|
||||
radius: number;
|
||||
rotateR: number;
|
||||
rotateG: number;
|
||||
rotateB: number;
|
||||
scatter: number;
|
||||
blending: number;
|
||||
blendingMode: number;
|
||||
greyscale: boolean;
|
||||
};
|
||||
LUT:{
|
||||
enabled: boolean;
|
||||
lut:string;
|
||||
intensity: number;
|
||||
};
|
||||
Afterimage:{
|
||||
enabled: boolean;
|
||||
damp: number;
|
||||
}
|
||||
}
|
||||
|
||||
interface Weather {
|
||||
fog: {
|
||||
enabled: boolean;
|
||||
type: 'Fog' | 'FogExp2',
|
||||
color: string;
|
||||
near: number;
|
||||
far: number;
|
||||
density: number;
|
||||
};
|
||||
rain: {
|
||||
enabled: boolean;
|
||||
speed: number;
|
||||
color: string;
|
||||
size: number;
|
||||
radian: number;
|
||||
alpha: number;
|
||||
};
|
||||
snow: {
|
||||
enabled: boolean;
|
||||
size: number;
|
||||
density: number;
|
||||
speed: number;
|
||||
alpha: number;
|
||||
accumulation: boolean;
|
||||
};
|
||||
}
|
||||
|
||||
interface SceneInfo {
|
||||
id: string;
|
||||
sceneType: string;
|
||||
sceneName: string;
|
||||
sceneIntroduction: string;
|
||||
sceneVersion: number;
|
||||
projectType: number;
|
||||
coverPicture: string;
|
||||
hasDrawing: boolean;
|
||||
zip: string,
|
||||
zipSize: string,
|
||||
cesiumConfig?: {
|
||||
token: "",
|
||||
mapType: 'satellite' | 'vector',
|
||||
map: "Amap" | "Tianditu",
|
||||
// 是否需要标记图
|
||||
markMap: boolean,
|
||||
// 底图是天地图时的天地图密匙
|
||||
tiandituTk: string
|
||||
};
|
||||
}
|
||||
|
||||
interface DrawingMark {
|
||||
x: number,
|
||||
y: number,
|
||||
w: number,
|
||||
h: number,
|
||||
color?:string,
|
||||
modelUuid?: string,
|
||||
modelPath?: string
|
||||
}
|
||||
|
||||
interface DrawingImgInfo {
|
||||
width: number,
|
||||
height: number
|
||||
}
|
||||
|
||||
interface Drawing {
|
||||
isUploaded: boolean;
|
||||
imgSrc:string;
|
||||
isCad: boolean;
|
||||
layers: ICad.DxfLayers;
|
||||
isDrawingRect:boolean;
|
||||
selectedRectIndex: number;
|
||||
markList: DrawingMark[];
|
||||
imgInfo: DrawingImgInfo;
|
||||
}
|
||||
|
||||
interface Config {
|
||||
xr: boolean;
|
||||
renderer: Renderer;
|
||||
csm: CSM;
|
||||
effect: Effect;
|
||||
weather: Weather;
|
||||
}
|
||||
|
||||
interface Info extends Config{
|
||||
sceneInfo: SceneInfo;
|
||||
drawing: Drawing;
|
||||
}
|
||||
}
|
||||
Vendored
+45
@@ -0,0 +1,45 @@
|
||||
declare interface IDrawingMark {
|
||||
x: number,
|
||||
y: number,
|
||||
w: number,
|
||||
h: number,
|
||||
color?:string,
|
||||
modelUuid?: string,
|
||||
modelPath?: string
|
||||
}
|
||||
|
||||
declare interface IDrawingImgInfo {
|
||||
width: number,
|
||||
height: number
|
||||
}
|
||||
|
||||
declare interface IDrawingInfo {
|
||||
imgSrc:string;
|
||||
markList:IDrawingMark[];
|
||||
imgInfo:IDrawingImgInfo;
|
||||
}
|
||||
|
||||
declare namespace ICad{
|
||||
interface DxfLayer{
|
||||
name: string,
|
||||
color: number,
|
||||
colorIndex: number,
|
||||
frozen: boolean, // 冻结
|
||||
visible: boolean,
|
||||
//entities: any[]
|
||||
}
|
||||
|
||||
interface DxfLayers{
|
||||
[name:string]: DxfLayer
|
||||
}
|
||||
|
||||
interface Data {
|
||||
id:number,
|
||||
fileName :string,
|
||||
thumbnail:string,
|
||||
filePath:string,
|
||||
converterFilePath:string,
|
||||
conversionStatus :number,
|
||||
createTime :string,
|
||||
}
|
||||
}
|
||||
Vendored
+13
@@ -0,0 +1,13 @@
|
||||
declare namespace IPlugin{
|
||||
interface Item {
|
||||
// 插件名称
|
||||
name:string;
|
||||
// 插件icon
|
||||
icon:string;
|
||||
// 插件ems js地址
|
||||
src?:string;
|
||||
}
|
||||
|
||||
// 内置插件相关声明...
|
||||
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
declare namespace IBillboard {
|
||||
interface options {
|
||||
name: string;
|
||||
position: number[],
|
||||
image:{
|
||||
url?:string,
|
||||
visible:boolean,
|
||||
width:number,
|
||||
height:number,
|
||||
rotate:number,
|
||||
margin:number,
|
||||
position:string,
|
||||
top:boolean,
|
||||
},
|
||||
text:{
|
||||
value:string,
|
||||
visible:boolean,
|
||||
fontSize:number,
|
||||
fontColor:string,
|
||||
fontFamily?:string,
|
||||
fontWeight:string | number,
|
||||
fontStyle:string,
|
||||
lineGap:number,
|
||||
padding:number,
|
||||
align:string,
|
||||
baseline:string,
|
||||
strokeWidth:number,
|
||||
strokeColor:string,
|
||||
fill:boolean,
|
||||
fillColor:string,
|
||||
}
|
||||
}
|
||||
}
|
||||
+257
@@ -0,0 +1,257 @@
|
||||
declare namespace IParticle {
|
||||
interface Config {
|
||||
attr: {
|
||||
position: { x: number, y: number, z: number },
|
||||
rotation: { x: number, y: number, z: number },
|
||||
scale: number,
|
||||
// 总发射次数
|
||||
totalEmitTimes: number;
|
||||
// 发射器的阻尼系数
|
||||
damping: number;
|
||||
// 发射器的寿命(ms)
|
||||
life: number;
|
||||
// 发射粒子的数量范围
|
||||
numPan: {
|
||||
min: number;
|
||||
max: number;
|
||||
},
|
||||
// 每次粒子发射之间的时间间隔(s)
|
||||
timePan: {
|
||||
a: number;
|
||||
b: number;
|
||||
}
|
||||
},
|
||||
init: {
|
||||
// 粒子质量
|
||||
mass: {
|
||||
min: number;
|
||||
max: number;
|
||||
// 确定是否对质量值进行平均
|
||||
center: boolean;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 粒子的生命值属性
|
||||
life: {
|
||||
min: number;
|
||||
max: number;
|
||||
center: boolean;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 粒子的半径属性
|
||||
radius: {
|
||||
width: number;
|
||||
height: number;
|
||||
center: boolean;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 粒子的旋转属性
|
||||
rotation: {
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
useEmitterRotation: boolean;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 粒子起始区域(从此区域中随机设置初始化粒子的起始位置属性)
|
||||
position: {
|
||||
isEnabled: boolean;
|
||||
// 可生成起始粒子的区域
|
||||
zone: BoxZone | LineZone | MeshZone | PointZone | SphereZone | null
|
||||
},
|
||||
// 粒子的速度属性
|
||||
velocity: {
|
||||
isEnabled: boolean;
|
||||
velocity: RadialVelocity | PolarVelocity | VectorVelocity | null
|
||||
}
|
||||
// 粒子主体
|
||||
body: {
|
||||
isEnabled: boolean;
|
||||
body: {
|
||||
// 粒子的形状,Sprite | Mesh | Point
|
||||
type: 'Sprite' | 'Mesh' | 'Point';
|
||||
uuid: string;
|
||||
} | null;
|
||||
}
|
||||
},
|
||||
// 行为类(behaviours)负责管理粒子在被发射之后的行为。也就是说,粒子在被发射出来之后,它的运动轨迹、速度变化、颜色变化等行为特征是由这些行为类来控制和管理的
|
||||
behaviour: {
|
||||
// 随时间改变粒子颜色的行为。
|
||||
color: {
|
||||
colorA: number | string;
|
||||
colorB: number | string;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 缩放粒子的行为
|
||||
scale: {
|
||||
scaleA: number;
|
||||
scaleB: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 对粒子应用阿尔法转换效果的行为
|
||||
alpha: {
|
||||
alphaA: number;
|
||||
alphaB: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 迫使粒子沿特定轴线运动的行为,fx,fy,fz在计算时会 * 100
|
||||
force: {
|
||||
fx: number;
|
||||
fy: number;
|
||||
fz: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 旋转粒子的行为
|
||||
rotate: {
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 导致粒子在三维空间中随机坐标漂移的行为
|
||||
randomDrift: {
|
||||
driftX: number;
|
||||
driftY: number;
|
||||
driftZ: number;
|
||||
delay: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 使粒子弹起的行为
|
||||
spring: {
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
// 弹跳系数
|
||||
spring: number;
|
||||
// 弹跳摩擦
|
||||
friction: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 使粒子被吸引到目标位置的行为
|
||||
attraction:{
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
force: number;
|
||||
radius: number;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
},
|
||||
// 使粒子远离与其碰撞的其他粒子的行为
|
||||
collision:{
|
||||
useMass: boolean;
|
||||
life: number;
|
||||
easing: string;
|
||||
isEnabled: boolean;
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
interface Object3DJSON {
|
||||
uuid: string;
|
||||
type: string;
|
||||
name: string;
|
||||
// 粒子发射器JSON
|
||||
emitter: {
|
||||
// 粒子发射器配置
|
||||
config: Config;
|
||||
// 粒子发射器系统名称
|
||||
system: string;
|
||||
// 粒子发射器用到的初始化器类型
|
||||
useInitializers: string[];
|
||||
// 粒子发射器初始化器对象中用到的Sprite或Mesh JSON
|
||||
bodyObjectJSON: import('three').Object3DJSON | null;
|
||||
// 粒子发射器用到的行为类型
|
||||
useBehaviours: string[];
|
||||
};
|
||||
children: [];
|
||||
}
|
||||
|
||||
// 盒型区域
|
||||
interface BoxZone {
|
||||
type: 'BoxZone';
|
||||
depth: number;
|
||||
height: number;
|
||||
width: number;
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
}
|
||||
|
||||
// 线性区域
|
||||
interface LineZone {
|
||||
type: 'LineZone';
|
||||
x1: number;
|
||||
x2: number;
|
||||
y1: number;
|
||||
y2: number;
|
||||
z1: number;
|
||||
z2: number;
|
||||
}
|
||||
|
||||
// 网格(Mesh)区域
|
||||
interface MeshZone {
|
||||
type: 'MeshZone';
|
||||
mesh: any;
|
||||
scale: number;
|
||||
}
|
||||
|
||||
// 点区域
|
||||
interface PointZone {
|
||||
type: 'PointZone';
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
}
|
||||
|
||||
// 球区域
|
||||
interface SphereZone {
|
||||
type: 'SphereZone';
|
||||
radius: number;
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
}
|
||||
|
||||
// 径向速度:物体在其半径矢量方向上的速度分量
|
||||
interface RadialVelocity {
|
||||
type: 'RadialVelocity';
|
||||
radius: number;
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
theta: number;
|
||||
}
|
||||
|
||||
// 极坐标速度
|
||||
interface PolarVelocity {
|
||||
type: 'PolarVelocity';
|
||||
radius: number;
|
||||
theta: number;
|
||||
phi: number;
|
||||
tha: number;
|
||||
}
|
||||
|
||||
// 矢量速度
|
||||
interface VectorVelocity {
|
||||
type: 'VectorVelocity';
|
||||
x: number;
|
||||
y: number;
|
||||
z: number;
|
||||
theta: number;
|
||||
}
|
||||
}
|
||||
Vendored
+25
@@ -0,0 +1,25 @@
|
||||
declare namespace ITiles{
|
||||
interface options{
|
||||
// tiles地址
|
||||
url:string;
|
||||
// tiles group名称
|
||||
name?:string;
|
||||
// 加载的3d tiles由于坐标原因,一般不在原点。此配置项为true则重置回原点
|
||||
reset2origin?:boolean;
|
||||
// 是否开启tiles的debug模式
|
||||
debug?:boolean;
|
||||
// 目标屏幕空间误差(以像素为单位)
|
||||
errorTarget?: number;
|
||||
// LRU缓存:TilesRenderer 的实用程序类,用于跟踪当前使用的项目,以便渲染的项目不会被卸载
|
||||
LRUCache?:{
|
||||
// 缓存项的最大数量。如果当前缓存项的数量等于此值,则无法再缓存任何项
|
||||
maxSize?:number;
|
||||
// 缓存项的最小数量。超过此数量,若缓存数据未被使用,则会将其卸载。
|
||||
minSize?:number;
|
||||
// 最大缓存大小(以字节为单位)。如果当前缓存的字节数等于此值,则无法再缓存任何项目。
|
||||
maxBytesSize?:number;
|
||||
// 最小缓存大小(以字节数为单位)。超过此大小的缓存数据(如果未使用)将被卸载。
|
||||
minBytesSize?:number;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
declare interface IPreviewSetting {
|
||||
container?: HTMLElement;
|
||||
hdr?: string;
|
||||
request?:IViewerRequest;
|
||||
control:IViewerControl
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
declare interface IViewerGrid {
|
||||
enabled:boolean;
|
||||
color: number | string;
|
||||
row:number;
|
||||
column:number;
|
||||
}
|
||||
|
||||
declare interface IViewerControl {
|
||||
minAzimuthAngle:number;
|
||||
maxAzimuthAngle: number;
|
||||
minDistance: number;
|
||||
maxDistance:number;
|
||||
maxPolarAngle:number;
|
||||
minPolarAngle:number;
|
||||
maxZoom:number;
|
||||
minZoom:number;
|
||||
dollySpeed:number;
|
||||
dollyToCursor:boolean;
|
||||
}
|
||||
|
||||
declare interface IViewerRequest {
|
||||
baseUrl?:string;
|
||||
}
|
||||
|
||||
declare interface IViewerSetting {
|
||||
container?: HTMLElement;
|
||||
hdr?: string;
|
||||
enableEdit?: boolean;
|
||||
enableScript?: boolean;
|
||||
request?:IViewerRequest;
|
||||
grid:IViewerGrid;
|
||||
control:IViewerControl
|
||||
}
|
||||
Vendored
+1
@@ -0,0 +1 @@
|
||||
/// <reference types="vite/client" />
|
||||
Reference in New Issue
Block a user