<div dir="ltr">Resending this without html formatting to ensure proper transmission:<div class="gmail_extra"><div><br></div><div><div>30.2.4 defines how sequencer values are assigned to key intervals:</div><div><br></div><div><a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#SequencingEvents">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#SequencingEvents</a></div><div><br></div><div>(−infinity, t0), [t0, t1), [t1, t2), ... , [tn-1, +infinity)</div><div><br></div><div>are the intervals.</div><div><br></div><div>The square bracket [ seems to indicate that the limiting value does not belong to the interval. Is that the case ?</div><div><br></div><div>For example, in the second interval [t0, t1) t0 does not belong to the interval but t1 does.</div><div>I have seen other notations where this interval would be described as ]t0, t1] which I would offer as a suggestion for an improvement.</div><div><br></div><div>The next question is about the piecewise function definition:</div><div><br></div><div> f(t) = v_n, if t_n <= t < t_(n-1)</div><div><br></div><div>Given that the keys t_i are given in a monotonically non-decreasing order, t_n is always larger (or equal to) than t_(n-1). Therefore, a t larger than t_n can never be smaller than t_(n-1). But this is the condition described in the function for value v_n. There is no possible t which can fulfill this condition.</div><div>Presumably this condition was designed as:</div><div><br></div><div> f(t) = v_n, if t_n >= t > t_(n-1)</div><div><br></div><div>If this is the case I can submit a spec. comment but I very much would appreciate additional eyes on that since it seems like a rather fundamental oversight. Did I overlook something ?</div><div><br></div><div>The Interpolator component spec. may provide additional insight:</div><div><br></div><div><a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/interp.html#Linearinterpolation">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/interp.html#Linearinterpolation</a></div><div><br></div><div>Here the equivalent piecewise function definition is:</div><div><br></div><div>f(t) = linterp(t, v_i, v_(i+1)),    if t_i <= t <= t_(i+1),</div><div><br></div><div>Note that the interval condition here is between t_i and t_(i+1) and not t_(i-1). So this is correct. But why change for Sequencer to t_(n-1) ? Perhaps there is a reason ?</div><div><br></div><div>Also note that i is used rather than n which is also more correct since n is reserved for the fixed, total number of keys, whereas i is the variable index depending on the whatever time t is considered.</div><div><br></div><div>-Andreas</div></div><div class="gmail_quote"><br></div>-- <br><div class="gmail_signature">Andreas Plesch<br>Waltham, MA 02453</div>
</div></div>