Exemple #1
0
        public void ShouldReturnZeroIfOneVectorHasAllComponentsEqualsZero()
        {
            PVector vectorA       = new PVector(0, 0, 0);
            PVector vectorB       = new PVector(1, 1, 1);
            float   expectedTheta = 0f;

            float actualTheta = vectorA.AngleBetween(vectorB);


            Assert.Equal(expectedTheta, actualTheta);
            actualTheta = vectorB.AngleBetween(vectorA);
            Assert.Equal(expectedTheta, actualTheta);
        }
Exemple #2
0
        public void ShouldReturnAngleBetweenVectorsOnXYPlane()
        {
            PVector vectorA = new PVector(1, 0);
            PVector vectorB = new PVector(0, 1);

            float expectedTheta = (float)Math.PI / 2;
            float actualTheta   = vectorA.AngleBetween(vectorB);

            Assert.Equal(expectedTheta, actualTheta);


            vectorA = new PVector(2, 7);
            vectorB = new PVector(1, -4);

            float expectedThetaInDegrees = 150.01836f;
            float actualThetaInDegrees   = Helpers.ConvertionHelper.RadiansToDegrees(vectorA.AngleBetween(vectorB));

            Assert.Equal(expectedThetaInDegrees, actualThetaInDegrees);
        }