Esempio n. 1
0
	/// t-->[0,1]
	public static Vector3 GetHermitePoint_T(float t, YamlPositionData preData, YamlPositionData nexData, LerpType lerpType)
	{
		Vector3 position;
		if(lerpType==LerpType.LineLerp)
		{
			position = Vector3.Lerp(preData.value,nexData.value, t);
		}
		else
		{
			position = CalculateHermitePoint(t,nexData.time-preData.time,preData.value,nexData.value,preData.outSlope,nexData.inSlope);
		}
		return position;
	}
Esempio n. 2
0
    void ParsePositionDataToList(YamlSequenceNode node, string key)
    {
        List <YamlSQTData> list     = new List <YamlSQTData>();
        IList <YamlNode>   nodeList = node.Children;

        foreach (YamlMappingNode valueNode in nodeList)
        {
            YamlPositionData postionData = new YamlPositionData();
            postionData.time        = float.Parse(EasyYaml.FindMapNodeByKey("time", valueNode).ToString());
            postionData.value       = GetVector3("value", valueNode);
            postionData.inSlope     = GetVector3("inSlope", valueNode);
            postionData.outSlope    = GetVector3("outSlope", valueNode);
            postionData.tangentMode = float.Parse(EasyYaml.FindMapNodeByKey("tangentMode", valueNode).ToString());
            list.Add(postionData);
        }
        positionInfo.Add(key, list);
    }