Пример #1
0
        // Calcula projeção
        // Dado o segundo vetor retorna a projeção do primeiro no segundo.
        public void projecao(Vetor2D vec2)
        {
            double projX = (vec2.getX() * (((x * vec2.getX()) + (y * vec2.getY())) / ((Math.Pow(vec2.getX(), 2)) + (Math.Pow(vec2.getY(), 2)))));
            double projY = (vec2.getY() * (((x * vec2.getX()) + (y * vec2.getY())) / ((Math.Pow(vec2.getX(), 2)) + (Math.Pow(vec2.getY(), 2)))));

            Console.WriteLine("Projeção vetorial = (" + Math.Round(projX, 2) + " " + Math.Round(projY, 2) + ")");
        }
Пример #2
0
 // Calcula angulo
 // Dado o segundo vetor retorna o angulo entre o primeiro e o segundo vetor.
 public double angulo(Vetor2D vec2)
 {
     return((Math.Acos(escalar(vec2) / (modulo() * modulo(vec2))) * 180) / Math.PI);
 }
Пример #3
0
 // Calcula escalar
 // Dado o segundo vetor retorna o escalar entre o primeiro e o segundo vetor.
 public double escalar(Vetor2D vec2)
 {
     return((x * vec2.getX()) + (y * vec2.getY()));
 }
Пример #4
0
 public double modulo(Vetor2D vec2)
 {
     return(Math.Sqrt(Math.Pow(vec2.getX(), 2) + Math.Pow(vec2.getY(), 2)));
 }
Пример #5
0
 public Vetor2D projVetor(Vetor2D vet1)
 {
     return(vet1.multiplica(prodEscalar(vet1) / Math.Pow(vet1.norma(), 2)));
 }
Пример #6
0
        public Vetor2D soma(Vetor2D vet1)
        {
            Vetor2D aux = new Vetor2D(x + vet1.getX(), y + vet1.getY());

            return(aux);
        }
Пример #7
0
        public Vetor2D multiplica(double escalar)
        {
            Vetor2D aux = new Vetor2D(escalar * x, escalar * y);

            return(aux);
        }
Пример #8
0
 public double angulo(Vetor2D vet1)
 {
     return(Math.Acos(prodEscalar(vet1) / (norma() * vet1.norma())));
 }
Пример #9
0
 public double prodEscalar(Vetor2D vet1)
 {
     return(x * vet1.getX() + y * vet1.getY());
 }