/// <summary> /// Returns a random vector which has components within the given interval. /// </summary> /// <param name="random"></param> /// <param name="interval"></param> /// <returns></returns> public static Vec3d NextVec3d(this Random random, Interval1d interval) { return(new Vec3d( interval.Evaluate(random.NextDouble()), interval.Evaluate(random.NextDouble()), interval.Evaluate(random.NextDouble()))); }
/// <summary> /// /// </summary> /// <param name="point"></param> /// <returns></returns> public Vec3d Evaluate(Vec3d point) { point.X = X.Evaluate(point.X); point.Y = Y.Evaluate(point.Y); point.Z = Z.Evaluate(point.Z); return(point); }
/// <summary> /// /// </summary> /// <param name="point"></param> /// <returns></returns> public Vec2d Evaluate(Vec2d point) { point.X = X.Evaluate(point.X); point.Y = Y.Evaluate(point.Y); return(point); }