Esempio n. 1
0
File: Ray.cs Progetto: tgy/CSharp
 public Ray(Vector3D origin, Vector3D direction, double intensity)
 {
     Origin = origin;
     double n = direction.Norm();
     Direction = new Vector3D(direction.X/n, direction.Y/n, direction.Z/n);
     Intensity = intensity;
 }
Esempio n. 2
0
        public Ray(Vector3D origin, Vector3D direction, double intensity)
        {
            Origin = origin;
            double n = direction.Norm();

            Direction = new Vector3D(direction.X / n, direction.Y / n, direction.Z / n);
            Intensity = intensity;
        }
Esempio n. 3
0
        public static double ReflectedRayAngleCos(Ray ray, Vector3D intersectionNormale)
        {
            double cos = Vector3D.Scalar(ray.Direction, intersectionNormale) / (ray.Direction.Norm() * intersectionNormale.Norm());

            return(Math.Pow(-Math.Log(cos + 1), 2));
        }
Esempio n. 4
0
File: Scene.cs Progetto: tgy/CSharp
 public static double ReflectedRayAngleCos(Ray ray, Vector3D intersectionNormale)
 {
     double cos = Vector3D.Scalar(ray.Direction, intersectionNormale)/(ray.Direction.Norm()*intersectionNormale.Norm());
     return Math.Pow(-Math.Log(cos + 1), 2);
 }