/// <summary> /// /// </summary> /// <param name="field"></param> /// <param name="points"></param> /// <param name="stepSize"></param> /// <param name="stepCount"></param> /// <param name="mode"></param> private PolylineCurve[] SolveInstanceImpl(IField3d <Vec3d> field, List <Point3d> points, double stepSize, int stepCount) { var result = new PolylineCurve[points.Count]; Parallel.For(0, points.Count, i => { var pts = field.IntegrateFrom(points[i], stepSize, _mode).Take(stepCount).Select(p => (Point3d)p); result[i] = new PolylineCurve(pts); }); return(result); }