Exemplo n.º 1
0
        public void ContainsPoint()
        {
            var sphere = new Sphere(Vector.Zero, 1.0);

            Assert.IsTrue(sphere.ContainsPoint(Vector.Zero));
            Assert.IsTrue(sphere.ContainsPoint(Vector.Right * 0.999));
            Assert.IsFalse(sphere.ContainsPoint(Vector.Right));
            Assert.IsFalse(sphere.ContainsPoint(Vector.Right * 1.0001));
            Assert.IsFalse(sphere.ContainsPoint(Vector.Right * 2));
        }
Exemplo n.º 2
0
        public void SphereCastTest([NUnit.Framework.Range(0, 1000, 250)] int pointAmount)
        {
            GenerateTestCollection(pointAmount, out var instance, out var items, out var origin, out var size);

            for (var i = 0; i < 10; i++)
            {
                var sphere = new Sphere(RandomInAabb(origin, size), Random.Range(0.1f, size.magnitude));

                var castResult = instance.ShapeCast(sphere).ToArray();
                var reference  = items.Where(item => sphere.ContainsPoint(item.Value))
                                 .ToDictionary(item => item.Key, item => item.Value);

                TestForSetEquality(castResult, reference);
            }
        }