function frameTwoTargets
cinematic.ts:800
frameTwoTargets(camera: UniverseVector, primary: { at: UniverseVector; x: number; y: number }, secondary: { at: UniverseVector; x: number; y: number }, fovDeg: number, aspect: number) → Quat
The orientation that puts two world-space targets at two screen positions — the match-cut solver.
The reference edit specifies compositions as screen coordinates ("planet at (0.66, 0.55), sun at (0.45, 0.43)"), and reproducing one from a camera position is exactly the TRIAD problem: build one basis from the world directions, one from the desired view directions, and the rotation between them is the answer. The primary target lands exactly; the secondary lands exactly only if the camera position gives the pair the same angular separation the screen asks for — position controls separation, orientation controls placement, and the solver deliberately does not blur that split.
- cameraUniverseVector
- Undocumented
- primary{ at: UniverseVector; x: number; y: number }
- Undocumented
- secondary{ at: UniverseVector; x: number; y: number }
- Undocumented
- fovDegnumber
- Undocumented
- aspectnumber
- Undocumented
ReturnsQuat