fret_core/scene/
replay.rs1use super::*;
2
3impl SceneRecording {
4 pub fn replay_ops(&mut self, ops: &[SceneOp]) {
5 self.ops.reserve(ops.len());
6 for &op in ops {
7 self.fingerprint = mix_scene_op(self.fingerprint, op);
8 self.ops.push(op);
9 }
10 }
11
12 pub fn replay_ops_translated(&mut self, ops: &[SceneOp], delta: Point) {
13 if delta.x.0 == 0.0 && delta.y.0 == 0.0 {
14 self.replay_ops(ops);
15 return;
16 }
17
18 self.replay_ops_transformed(ops, Transform2D::translation(delta));
19 }
20
21 pub fn replay_ops_transformed(&mut self, ops: &[SceneOp], transform: Transform2D) {
22 self.with_transform(transform, |scene| scene.replay_ops(ops));
23 }
24}