public void TestPatternSphericalMapping3D()
        {
            (double u, double v)uv;

            uv = TextureMap.SphericalMap(new Point(0, 0, -1));
            Assert.AreEqual(uv, (0.0, 0.5));

            uv = TextureMap.SphericalMap(new Point(1, 0, 0));
            Assert.AreEqual(uv, (0.25, 0.5));

            uv = TextureMap.SphericalMap(new Point(0, 0, 1));
            Assert.AreEqual(uv, (0.5, 0.5));

            uv = TextureMap.SphericalMap(new Point(-1, 0, 0));
            Assert.AreEqual(uv, (0.75, 0.5));

            uv = TextureMap.SphericalMap(new Point(0, 1, 0));
            Assert.AreEqual(uv, (0.5, 1.0));

            uv = TextureMap.SphericalMap(new Point(0, -1, 0));
            Assert.AreEqual(uv, (0.5, 0.0));

            uv = TextureMap.SphericalMap(new Point(MathHelper.SQRT2 / 2.0, MathHelper.SQRT2 / 2.0, 0.0));
            Assert.AreEqual(uv, (0.25, 0.75));
        }