子发射器

This commit is contained in:
tianmo committed 2026-10-22 16:49:53 +08:00
1 parent d4ebb18777
commit d224939efd
33 files changed
+5690 -1355

No files matched your search

+5 -1
View File
@@ -6,7 +6,7 @@ const bundled = await build({
contents: [
"export { bakeLoopFrames, closeLoopFrameSeam } from './src/core/loopFrameBaker.ts'",
"export { loopPlaybackRange, loopSegmentTiming } from './src/core/loopSegmentTiming.ts'",
"export { normalizePlaybackRange, resizePlaybackRange } from './src/timeline/playbackRange.ts'",
"export { normalizePlaybackRange, resizePlaybackRange, resolvePlaybackRange } from './src/timeline/playbackRange.ts'",
].join('\n'),
resolveDir: process.cwd(),
sourcefile: 'timeline-test-entry.ts',
@@ -52,6 +52,10 @@ const normalized = api.normalizePlaybackRange(10, 10, 100)
if (normalized.start !== 10 || normalized.end !== 11) throw new Error('播放范围必须至少包含两个帧位置')
const resized = api.resizePlaybackRange({ start: 5, end: 59 }, 60, 90)
if (resized.start !== 5 || resized.end !== 89) throw new Error('全范围播放没有随总时长扩展')
const abOff = api.resolvePlaybackRange(false, 5, 54, 139)
if (abOff.start !== 0 || abOff.end !== 138) throw new Error('AB 关闭时应播放完整时间轴')
const abOn = api.resolvePlaybackRange(true, 5, 54, 139)
if (abOn.start !== 5 || abOn.end !== 54) throw new Error('AB 开启时应播放用户输入区间')
function state(x) {
return [{