public Point(double x, double y, double z, double xn, double yn, double zn, int r, int g, int b, int a)
 {
     this.location = new Vector3Df(x, y, z);
     this.normal   = new Vector3Df(xn, yn, zn).normalize();
     this.colour   = new Color();
     this.colour   = Color.FromArgb(a, r, g, b);
 }
 public Point(double x, double y, double z, double xn, double yn, double zn, float r, float g, float b, float a)
 {
     this.location = new Vector3Df(x, y, z);
     this.normal   = new Vector3Df(xn, yn, zn).normalize();
     this.colour   = new Color();
     this.colour   = Color.FromArgb((int)a * 255, (int)r * 255, (int)g * 255, (int)b * 255);
 }
 public static double diff(Vector3Df l, Vector3Df m)
 {
     // TODO Auto-generated method stub
     return(Math.Abs(l.x - m.x) + Math.Abs(l.y - m.y) + Math.Abs(l.z - m.z));
 }
 public static double dot(Vector3Df a, Vector3Df b)
 {
     return(a.x * b.x + a.y * b.y + a.z * b.z);
 }
 public static double diff(Point o, Point a)
 {
     return(Vector3Df.diff(o.location, a.location));
 }
 public Point(double x, double y, double z, Color col)
 {
     // TODO: Complete member initialization
     this.location = new Vector3Df(x, y, z);
     this.colour   = col;
 }
 public Point(double x, double y, double z, float r, float g, float b)
 {
     this.location = new Vector3Df(x, y, z);
     this.colour   = new Color();
     this.colour   = Color.FromArgb((int)r * 255, (int)g * 255, (int)b * 255);
 }
 public Point(double x, double y, double z, double xn, double yn, double zn)
 {
     this.location = new Vector3Df(x, y, z);
     this.normal   = new Vector3Df(xn, yn, zn).normalize();
 }