/// <summary> /// Creates a convex hull of the input data. /// </summary> /// <typeparam name="TVertex"></typeparam> /// <param name="data"></param> /// <param name="config">If null, default ConvexHullComputationConfig is used.</param> /// <returns></returns> public static ConvexHull <TVertex, DefaultConvexFace <TVertex> > Create <TVertex>(IList <TVertex> data, ConvexHullComputationConfig config = null) where TVertex : IVertex { return(ConvexHull <TVertex, DefaultConvexFace <TVertex> > .Create(data, config)); }
/// <summary> /// Creates a convex hull of the input data. /// </summary> /// <param name="data"></param> /// <param name="config">If null, default ConvexHullComputationConfig is used.</param> /// <returns></returns> public static ConvexHull <DefaultVertex, DefaultConvexFace <DefaultVertex> > Create(IList <double[]> data, ConvexHullComputationConfig config = null) { var points = data.Select(p => new DefaultVertex { Position = p.ToArray() }).ToList(); return(ConvexHull <DefaultVertex, DefaultConvexFace <DefaultVertex> > .Create(points, config)); }
/// <summary> /// Creates a convex hull of the input data. /// </summary> /// <typeparam name="TVertex"></typeparam> /// <typeparam name="TFace"></typeparam> /// <param name="data"></param> /// <param name="config">If null, default ConvexHullComputationConfig is used.</param> /// <returns></returns> public static ConvexHull <TVertex, TFace> Create <TVertex, TFace>(IList <TVertex> data, ConvexHullComputationConfig config = null) where TVertex : IVertex where TFace : ConvexFace <TVertex, TFace>, new() { return(ConvexHull <TVertex, TFace> .Create(data, config)); }