本文整理汇总了C#中Motion.AddPose方法的典型用法代码示例。如果您正苦于以下问题:C# Motion.AddPose方法的具体用法?C# Motion.AddPose怎么用?C# Motion.AddPose使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Motion
的用法示例。
在下文中一共展示了Motion.AddPose方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LoadBvhMotion
public void LoadBvhMotion(Uri uri, Single scale, Axis flipAxis, bool yRotate)
{
var text = File.ReadAllText(uri.LocalPath);
var bvh = MMIO.Bvh.BvhParse.Execute(text, true);
var motion = new Motion(Path.GetFileName(uri.LocalPath), bvh.Fps);
foreach (var frame in bvh.Frames)
{
var it = ((IEnumerable<Single>)frame).GetEnumerator();
var pose = new Pose();
pose.Values = new Dictionary<string, Transform>();
foreach (var node in bvh.Root.Traverse((node, level) => node).Where(x => x.Name != "EndSite"))
{
pose.Values[node.Name] = ToTransform(it, node.Channels, scale, flipAxis, yRotate);
}
if (it.MoveNext())
{
throw new ArgumentException();
}
motion.AddPose(pose);
}
motion.LastFrame = FrameToTimeSpan(bvh.Frames.Length, bvh.Fps);
RootMotion.Children.Add(new Node<Motion>(motion));
}