public void SkeletonLayerTest() { var input = new SkeletonLayer { Bones = new [] { new SkeletonBone { Name = "test", Parent = "", Position = new float[] { 1, 2, 3 }, RotationAngle = 42, RotationAxis = new float[] { 3, 4, 5 } }, new SkeletonBone { Name = "test2", Parent = "test", Position = new float[] { 12, 12, 33 }, RotationAngle = 42, RotationAxis = new float[] { 31, 24, 1.4f } }, }, }; var serializer = new SkeletonLayerHandler(); var output = (SkeletonLayer)serializer.Reserialize(input); Assert.That(output.Bones.Length, Is.EqualTo(input.Bones.Length)); foreach (var inputBone in input.Bones) { var outputBone = output.Bones.FirstOrDefault(x => x.Name == inputBone.Name); Assert.That(outputBone, Is.Not.Null); Assert.That(outputBone.Parent, Is.EqualTo(inputBone.Parent)); Assert.That(outputBone.RotationAngle, Is.EqualTo(inputBone.RotationAngle)); Assert.That(outputBone.RotationAxis, Is.EquivalentTo(inputBone.RotationAxis)); Assert.That(outputBone.Position, Is.EquivalentTo(inputBone.Position)); } }
public static void SetSkeletonLayer(this UIView This, SkeletonLayer skeletonLayer) { This.SetAssociatedObject(AssociatedKeys.SkeletonLayer, skeletonLayer); }