private static void ExecuteRotationMatrixInput(BoneViewModel bone) { var q = bone.Bone.Orientation; var m = new Matrix(new Quaternion(q.A, q.B, q.C, q.D)); var dialog = new MatrixInputDialog(m, "Rotation Matrix Input"); bool result = dialog.ShowDialog() ?? false; if (result) { bone.Rotation = new EulerAngle(dialog.Value); } }