Ejemplo n.º 1
0
        private void AtualizarRepresentacaoBalanca(EquacaoEmConstrucao equacaoEmConstrucao)
        {
            var representacao = equacaoEmConstrucao.ObterRepresentacao();

            AreaDropEsquerda.Children.Clear();
            //  AreaDropDireita.Children.Clear();

            if (representacao.IncognitasEsquerda != 0)
            {
                var peso = new TrianguloArrastavel
                {
                    TipoTermo = TipoTermo.Incognita,
                    Valor     = representacao.IncognitasEsquerda
                };
                AreaDropEsquerda.Children.Add(peso);
            }

            if (representacao.UnidadesEsquerda != 0)
            {
                var peso = new TrianguloArrastavel
                {
                    TipoTermo = TipoTermo.Unidade,
                    Valor     = representacao.UnidadesEsquerda
                };
                AreaDropEsquerda.Children.Add(peso);
            }

            /*if (representacao.IncognitasDireita != 0)
             * {
             *  var peso = new TrianguloArrastavel
             *  {
             *      TipoTermo = TipoTermo.Incognita,
             *      Valor = representacao.IncognitasDireita
             *  };
             *  AreaDropDireita.Children.Add(peso);
             * }
             *
             * if (representacao.UnidadesDireita != 0)
             * {
             *  var peso = new TrianguloArrastavel
             *  {
             *      TipoTermo = TipoTermo.Unidade,
             *      Valor = representacao.UnidadesDireita
             *  };
             *  AreaDropDireita.Children.Add(peso);
             * }
             */
            AreaDropEsquerda.UpdateLayout();
            //  AreaDropDireita.UpdateLayout();
        }
        private void AtualizarRepresentacaoBalanca(Equacao equacao)
        {
            var representacao = equacao.ObterSnapshot();

            AreaDropEsquerda.Children.Clear();
            //AreaDropDireita.Children.Clear();

            if (representacao.IncognitasEsquerda != 0)
            {
                var peso = new TrianguloArrastavel
                {
                    TipoTermo = TipoTermo.Incognita,
                    Valor     = representacao.IncognitasEsquerda,
                };
                AreaDropEsquerda.Children.Add(peso);
            }

            if (representacao.UnidadesEsquerda != 0)
            {
                var peso = new TrianguloArrastavel
                {
                    TipoTermo = TipoTermo.Unidade,
                    Valor     = representacao.UnidadesEsquerda
                };
                AreaDropEsquerda.Children.Add(peso);
            }

            //if (representacao.IncognitasDireita != 0)
            //{
            //    var peso = new TrianguloArrastavel
            //    {
            //        TipoTermo = TipoTermo.Incognita,
            //        Valor = representacao.IncognitasDireita
            //    };
            //    AreaDropDireita.Children.Add(peso);
            //}

            //if (representacao.UnidadesDireita != 0)
            //{
            //    var peso = new TrianguloArrastavel
            //    {
            //        TipoTermo = TipoTermo.Unidade,
            //        Valor = representacao.UnidadesDireita
            //    };
            //    AreaDropDireita.Children.Add(peso);
            //}

            AreaDropEsquerda.UpdateLayout();
            //AreaDropDireita.UpdateLayout();
        }
Ejemplo n.º 3
0
        private void AdicionarPesoEReavaliarObjetivo(TrianguloArrastavel trianguloArrastavel, Lado lado, EquacaoEmConstrucao equacaoEmConstrucao)
        {
            //equacaoEmConstrucao.Adicionar(trianguloArrastavel.Texto, lado);
            AtualizarEquilibrioBalanca(equacaoEmConstrucao);
            AtualizarRepresentacaoBalanca(equacaoEmConstrucao);

            var equacaoAtual = ControladorJogo.ObterEquacaoAtual().EquacaoProcessada;

            if (equacaoEmConstrucao.EhQuivalente(equacaoAtual))
            {
                this.ObterViewModel().AvancarParaEtapaDeResolucao();
                //Dispatcher.BeginInvoke(new Action(delegate
                //{
                //    this.ObterViewModel().AvancarParaEtapaDeResolucao();
                //}), DispatcherPriority.Send, TimeSpan.FromMilliseconds(2000));
            }
        }