Ejemplo n.º 1
0
        public static void UpdateModelMatrixInverted(RenderableList root)
        {
            var inverted = Matrix.Invert(root.Matrix);

            foreach (var dummy in root.GetAllChildren().OfType <Kn5RenderableList>())
            {
                dummy.ModelMatrixInverted = inverted;
            }

            foreach (var dummy in root.GetAllChildren().OfType <IKn5RenderableObject>())
            {
                dummy.ModelMatrixInverted = inverted;
            }
        }
Ejemplo n.º 2
0
        public static bool SetCockpitLrActive([NotNull] RenderableList parent, bool value)
        {
            var changed = false;

            foreach (var child in parent.GetAllChildren().OfType <Kn5RenderableList>())
            {
                switch (child.OriginalNode.Name)
                {
                case "COCKPIT_LR":
                case "STEER_LR":
                case "SHIFT_LD":
                    if (child.IsEnabled != value)
                    {
                        child.IsEnabled = value;
                        changed         = true;
                    }
                    break;

                case "COCKPIT_HR":
                case "STEER_HR":
                case "SHIFT_HD":
                    if (child.IsEnabled != !value)
                    {
                        child.IsEnabled = !value;
                        changed         = true;
                    }
                    break;
                }
            }

            return(changed);
        }
Ejemplo n.º 3
0
 public static RenderableList GetParent([NotNull] this IRenderableObject child, [NotNull] RenderableList root)
 {
     return(root.GetAllChildren().OfType <RenderableList>().FirstOrDefault(x => x.Contains(child)));
 }