chart.isometric-rank-bars
2.5D 排行柱
Isometric Rank Bars
- 范围
- 效果
- 复杂度
- 高级
- 建议时长
- 3.8s
- 画幅
- 16:9 · 9:16 · 1:1
Live preview
真实渲染预览
实机渲染 · HyperFrames
Purpose
这个动效用来做什么
多项数据按数值排序为带可见顶面与侧面的排行柱,并在最终聚焦冠军。
Multiple values sort into rank bars with visible top and side faces before the winner is focused.
Inputs
可替换参数
values必填 · number-listValues to sort into descending rank order.
- 默认值
[82,64,91,53,74]
labels必填 · stringPipe-delimited labels matching source values.
- 默认值
ATLAS|NOVA|EMBER|PULSE|VECTOR
headline必填 · stringRanking headline.
- 默认值
Weekly signal rank
Motion timeline
归一化动作时间线
所有事件都使用 0 到 1 的归一化进度:0 是镜头开始,1 是镜头结束;事件可以重叠,适配器再把相同比例映射到秒或帧。
stage.fadeopacity.fade
0.06–0.22bars.revealcollection.reveal
0.16–0.66bars.staggercollection.stagger
0.16–0.66winner.settlespring.settle
0.64–0.84stage.holdstate.hold
0.86–1.00Copy to Agent
复制执行上下文
三个版本共享同一份可机器校验核心;引擎标签只追加已验证 Adapter 路由、能力与实现纪律。
<!-- motion-registry-context:{"format":"1.0.0","recipe_id":"chart.isometric-rank-bars","recipe_version":"0.2.0","recipe_source":"recipes/chart/isometric-rank-bars/recipe.yaml"} -->
# Motion Registry Context
<!-- motion-registry-section:recipe-identity:start -->
## Recipe identity
- Recipe ID: chart.isometric-rank-bars
- Schema version: 0.2.0
- Recipe source: recipes/chart/isometric-rank-bars/recipe.yaml
<!-- motion-registry-section:recipe-identity:end -->
<!-- motion-registry-section:motion-intent:start -->
## Motion intent and scope
- Purpose (zh): 多项数据按数值排序为带可见顶面与侧面的排行柱,并在最终聚焦冠军。
- Purpose (en): Multiple values sort into rank bars with visible top and side faces before the winner is focused.
- Scope: effect
- Complexity: advanced
- Subjects: chart
- Intents: compare, emphasize
- Use cases: data-story, knowledge-video, social-video, presentation
- Recipe capabilities: rank-sort, isometric-faces, rank-labels, winner-focus
<!-- motion-registry-section:motion-intent:end -->
<!-- motion-registry-section:inputs:start -->
## Inputs
- values: number-list (required; default=[82,64,91,53,74]) — Values to sort into descending rank order.
- labels: string (required; default=ATLAS|NOVA|EMBER|PULSE|VECTOR) — Pipe-delimited labels matching source values.
- headline: string (required; default=Weekly signal rank) — Ranking headline.
<!-- motion-registry-section:inputs:end -->
<!-- motion-registry-section:normalized-timeline:start -->
## Normalized motion timeline (0 to 1)
- 0.06–0.22 · stage.fade · opacity.fade → stage · parameters={"from":0,"to":1}
- 0.16–0.66 · bars.reveal · collection.reveal → bars · parameters={"order":"source","opacity_from":0,"opacity_to":1}
- 0.16–0.66 · bars.stagger · collection.stagger → bars · parameters={"order":"source","fraction":0.12}
- 0.64–0.84 · winner.settle · spring.settle → winner · parameters={"from":0.8,"to":1,"strength":"normal"}
- 0.86–1.00 · stage.hold · state.hold → stage · parameters={}
<!-- motion-registry-section:normalized-timeline:end -->
<!-- motion-registry-section:output-envelope:start -->
## Output envelope
- Aspect ratios: 16:9, 9:16, 1:1
- Duration: min 3s; preferred 3.8s; max 5s
<!-- motion-registry-section:output-envelope:end -->
<!-- motion-registry-section:acceptance:start -->
## Acceptance constraints
- sorted-ranks: Visible bars are sorted descending by value and carry rank labels.
- isometric-faces: Every bar has a visible top face and side face that stay geometrically attached while the bar grows.
- winner-focus: Only the highest ranked bar receives the final focus treatment.
- stable-hold: The ranking remains still and readable during the final hold.
<!-- motion-registry-section:acceptance:end -->
<!-- motion-registry-section:handoff-invariants:start -->
## Handoff invariants
- Preserve the subject, input meaning, event order, overlaps, final state, and approximate normalized timing.
- Keep the implementation deterministic and retain a readable, stable final hold.
- Treat the Recipe document as the source of truth; do not infer engine APIs in this shared core.
<!-- motion-registry-section:handoff-invariants:end -->Engine implementations
引擎实现
gsap-timeline
已验证HyperFrames
- Composition
rank-bars- 入口文件
index.html- 确定性
- 是
- lint通过
- validate通过
- inspect通过
- render通过
frame-based
已验证Remotion
- Composition
IsometricRankBars- 入口文件
IsometricRankBars.tsx- 确定性
- 是
- typecheck通过
- build通过
- render通过
frame-based
已验证Three.js
- Composition
ThreeIsometricRankBars- 入口文件
ThreeIsometricRankBars.tsx- 确定性
- 是
- typecheck通过
- build通过
- render通过
Source, reference & rights
来源与使用边界
- 再分发状态
- original
- 来源说明
- Self-authored G8 2.5D ranking design.
- Recipe 文件
recipes/chart/isometric-rank-bars/recipe.yaml
参考
无外部参考;该 Recipe 与测试素材为项目原创。
Verification
验收标准
sorted-ranksVisible bars are sorted descending by value and carry rank labels.
isometric-facesEvery bar has a visible top face and side face that stay geometrically attached while the bar grows.
winner-focusOnly the highest ranked bar receives the final focus treatment.
stable-holdThe ranking remains still and readable during the final hold.
3 个实现已通过真实渲染理解验证模型