CameraMoveOptions.easing ​

Contract 2.0.0 · package sha256 a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e · generated from configurator-runtime.d.ts by services/onsite-scripter/scripts/build-contract-docs.mjs; edit the source, not this file.

Property of CameraMoveOptions · stable · since 2.0.0

ts
easing?: Easing | 'damped';

The move's time curve: an Easing, or 'damped', a critically damped spring with no overshoot, which is 1.x's transition: true glide. A damped move covers the share 1 − (1 + ωt)·e^(−ωt) of the way, ω = 2π / durationMs (the pace of SwiftUI's Spring(duration:, bounce: 0)), divided by its value at durationMs, 1 − (1 + 2π)·e^(−2π) ≈ 0.9864, so it lands exactly at durationMs and resolves there. Its clock is the drawn frames, as 1.x's glide's was: each drawn frame advances it by the time since the previous drawn frame, at most 1/15 s, so the first frame after the display rested advances it 1/15 s. Taking over a running damped move, it starts with the velocity that move drew, and no value it moves (a view's target, angles, distance and focal offset; a lens's values) passes its new end: one the velocity carries there stops at it, at rest, and the move lands when all have, at durationMs at the latest. Taking over a move with another curve, or the camera's damping after a shopper's gesture, it starts from rest. 1.x's glide with controls.smoothTime s is { durationMs: round(1000π × s), easing: 'damped' } (spec Appendix C.3). Precedent: Unity Mathf.SmoothDamp; SwiftUI Spring(duration:bounce:).

Default: 'easeInOut'

Generic-API test (spec 3.1) ​

Rule Result
1. Neutral name pass: easing names no product
2. A precedent not recorded: no ledger row (coverage.json) names this member or its owner
3. Two apps, or labs not recorded: no ledger row names this member or its owner
4. The cheaper fix first not recorded per member (Appendix B decides it per need)