public PBPointInfo(int stepIndex, PBPointType type, string animInfo, string tipInfo) { StepIndex = stepIndex; PointType = type; AnimInfo = animInfo; TipInfo = tipInfo; }
private static void ProcessKeyframes(XmlNode nodeKeys, List <PPKeyFrameInfo> keyframeInfos, Dictionary <int, PPAnimNodeInfo> animNodeInfos) { XmlNodeList keyframeNodes = nodeKeys.SelectNodes("keyframe"); for (int i = 0; i < keyframeNodes.Count; i++) { XmlNode keyFrameNode = keyframeNodes[i]; PPKeyFrameInfo keyFrameInfo = new PPKeyFrameInfo(); keyFrameInfo.index = int.Parse(keyFrameNode.Attributes["index"].Value); PBPointInfo pointInfo = null; if (keyFrameNode.Attributes["keyPointType"] != null) { PBPointType pointType = (PBPointType)int.Parse(keyFrameNode.Attributes["keyPointType"].Value); string pointInfoStr = null; if (pointType != PBPointType.None && keyFrameNode.Attributes["keyPointInfo"] != null) { pointInfoStr = keyFrameNode.Attributes["keyPointInfo"].Value; } string pointTipStr = null; if (pointType != PBPointType.None && keyFrameNode.Attributes["keyPointTip"] != null) { pointTipStr = keyFrameNode.Attributes["keyPointTip"].Value; } pointInfo = new PBPointInfo(keyFrameInfo.index, pointType, pointInfoStr, pointTipStr); } else if (keyFrameNode.Attributes["custom"] != null) { //兼容旧版本逻辑 pointInfo = new PBPointInfo(keyFrameInfo.index, PBPointType.GuidePoint, keyFrameNode.Attributes["custom"].Value, null); } keyFrameInfo.pointInfo = pointInfo; ProcessFrameItems(keyFrameNode.SelectNodes("item"), keyFrameInfo, animNodeInfos); keyframeInfos.Add(keyFrameInfo); } }