PEG vobscene_interp--tjl:

Author: Tuomas J. Lukka
Last-Modified:2002-12-19
Revision: 1.7
Status: Implemented
Affects-PEGs:vob_considerations--benja, vobcoorder_parents--tjl, vobscene_hierarchies_clicks--tjl
Type:Architecture
Scope:Limited
Stakeholders:mudyc, benja

As witnessed by mudyc, vobscene interpolation needs a bit of adjustment: it is very easy to accidentally get non-interpolating behaviour, especially when reparenting coordinate systems.

This PEG clarifies the relationship of the different hierarchies and sets simple principles for interpolation.

Issues

Principles

In the following, vs1.cs is a coordinate system of the first vobscene.

Changes

If two completely unrelated coordinate systems are to be interpolated, linear (or other) interpolation of the transformed points shall be used as a fallback. This means that a point x will be transformed as:

interp.cs(x) = (1-fract)*vs1.cs(x) + fract*vs2.cs(x)

where interp.cs is the interpolated coordinate system at fraction fract and cs(x) is x transformed according to cs.

We shall not define the exact circumstances when this shall happen; we shall define one circumstance where this shall not happen: if the types of the coordinate systems, their parents and their keys are identical in the two vobscenes, then parameterwise interpolation shall be used.