fix(righttool): fix
This commit is contained in:
56
components/label/config/performance.ts
Normal file
56
components/label/config/performance.ts
Normal file
@@ -0,0 +1,56 @@
|
||||
const parseEnvInt = (
|
||||
value: string | undefined,
|
||||
fallback: number,
|
||||
min: number,
|
||||
max: number
|
||||
) => {
|
||||
if (!value) return fallback
|
||||
const parsed = Number.parseInt(value, 10)
|
||||
if (!Number.isFinite(parsed)) return fallback
|
||||
return Math.min(max, Math.max(min, parsed))
|
||||
}
|
||||
|
||||
export const labelimagePerformanceConfig = {
|
||||
// 单次渲染的路径切片大小。越小越丝滑,越大越快完成。
|
||||
polygonRenderBatchSize: parseEnvInt(
|
||||
process.env.NEXT_PUBLIC_LABELIMAGE_POLYGON_BATCH_SIZE,
|
||||
12,
|
||||
1,
|
||||
200
|
||||
),
|
||||
// 每帧渲染预算(毫秒)。越小越不卡操作,越大越快完成绘制。
|
||||
polygonRenderBatchBudgetMs: parseEnvInt(
|
||||
process.env.NEXT_PUBLIC_LABELIMAGE_POLYGON_BATCH_BUDGET_MS,
|
||||
6,
|
||||
1,
|
||||
33
|
||||
),
|
||||
// 切帧准备超过该阈值后才显示轻量提示,避免短切换频繁闪动提示。
|
||||
frameSwitchLoadingDelayMs: parseEnvInt(
|
||||
process.env.NEXT_PUBLIC_LABELIMAGE_FRAME_SWITCH_LOADING_DELAY_MS,
|
||||
120,
|
||||
0,
|
||||
1000
|
||||
),
|
||||
// 切帧时新旧图层的交叉淡入时长(毫秒)。设为 0 可关闭淡入。
|
||||
rasterCrossfadeDurationMs: parseEnvInt(
|
||||
process.env.NEXT_PUBLIC_LABELIMAGE_RASTER_CROSSFADE_MS,
|
||||
90,
|
||||
0,
|
||||
400
|
||||
),
|
||||
// 容器尺寸连续变化时,延迟提交 canvas 实际宽高,减少频繁重置导致的白闪。
|
||||
resizeCommitDebounceMs: parseEnvInt(
|
||||
process.env.NEXT_PUBLIC_LABELIMAGE_RESIZE_COMMIT_DEBOUNCE_MS,
|
||||
90,
|
||||
0,
|
||||
500
|
||||
),
|
||||
// 容器尺寸变更后的视觉缓动时长(毫秒),用于降低“跳变感”。
|
||||
resizeInterpolationDurationMs: parseEnvInt(
|
||||
process.env.NEXT_PUBLIC_LABELIMAGE_RESIZE_INTERPOLATION_MS,
|
||||
100,
|
||||
0,
|
||||
400
|
||||
),
|
||||
} as const
|
||||
Reference in New Issue
Block a user