public override void Update(KeyPoint kp) { int i = m_Value.IndexOf(kp); if (i != -1) { Vector3KeyPoint vkp = kp as Vector3KeyPoint; m_DataSource.SetValue(i, kp.Time, vkp.m_Value); } }
public void Bind(NDistributionVector3Curve curve) { m_DataSource = curve; GetStream().Clear(); for (int j = 0; j < m_DataSource.KeyCount; ++j) { Vector3KeyPoint kp = new Vector3KeyPoint(); kp.Time = m_DataSource.GetTime(j); kp.m_Value = m_DataSource.GetValue(j); m_Value.Add(kp); } }
public override void AddKeyPoint(float time) { Vector3 v = m_DataSource.GetValue(time); m_DataSource.AddKey(v, time); Vector3KeyPoint kp = new Vector3KeyPoint(); kp.m_Value = v; kp.Time = time; m_Value.Add(kp); KeyPointComparer kpc = new KeyPointComparer(); m_Value.Sort(kpc); }