コード例 #1
0
        public void TestAviaoTrajetoria2_2()
        {
            var posicaoRadar = new Vetor(50000, 50000, 0);

            double anguloEntrada = Math.PI * 2 / 4;
            double extra         = Util.Rnd(new Random().NextDouble(), -75, -10, 10, 75);

            var aviao = new Trajetoria2(posicaoRadar, anguloEntrada, Util.Grau2Rad(extra));

            Assert.IsTrue(10000 - (aviao.Origem - posicaoRadar).SetZ(0).Mag() < 0.000001);

            Console.WriteLine("Angulo: {0}", aviao.AnguloEntrada * 180 / Math.PI);
            Console.WriteLine("Angulo Extra: {0}", aviao.AnguloExtra * 180 / Math.PI);

            for (double i = 0; i < 12; i += 0.5)
            {
                Console.WriteLine("Posicao em {0,10:f2}: {1,10:f2}  ::: {2,10:f2}", i, aviao.PosicaoEm(i), (aviao.PosicaoEm(i).SetZ(0) - posicaoRadar).Mag());
            }
        }
コード例 #2
0
        public void TestAviaoTrajetoria2()
        {
            var posicaoRadar = new Vetor(50000, 50000, 0);

            double anguloEntrada = Math.PI * 2 / 4;
            double anguloExtra   = 10 * Math.PI / 180d;

            var aviao = new Trajetoria2(posicaoRadar, anguloEntrada, anguloExtra);

            Assert.IsTrue(10000 - (aviao.Origem - posicaoRadar).SetZ(0).Mag() < 0.000001);

            Console.WriteLine("Angulo: {0}", aviao.AnguloEntrada * 180 / Math.PI);
            Console.WriteLine("Angulo Extra: {0}", aviao.AnguloExtra * 180 / Math.PI);

            for (double i = 0; i < 12; i += 0.5)
            {
                Console.WriteLine("Posicao em {0,10:f2}: {1,10:f2}  ::: {2,10:f2}", i, aviao.PosicaoEm(i), (aviao.PosicaoEm(i).SetZ(0) - posicaoRadar).Mag());
            }
        }