예제 #1
0
        public void CompositeShapeTest()
        {
            var c = new CompositeShape();

            Assert.AreEqual(0, c.GetVolume(0.1f, 10));

            c.Children.Add(
                new GeometricObject(
                    new BoxShape(1, 2, 3),
                    new Vector3(10, 10, 10),
                    new Pose(new Vector3(1, 2, 3), RandomHelper.Random.NextQuaternion())));
            c.Children.Add(
                new GeometricObject(
                    new BoxShape(4, 5, 6),
                    new Vector3(2, 2, 2),
                    new Pose(new Vector3(10, -2, 0), RandomHelper.Random.NextQuaternion())));

            var v0 = c.GetVolume(0.001f, 10);

            Assert.AreEqual(10 * 20 * 30 + 8 * 10 * 12, v0);
        }