/// <summary>
        /// 构建2D或者3D图形数据点
        /// </summary>
        /// <param name="xAxis">X轴</param>
        /// <param name="yAxis">Y轴</param>
        /// <param name="size">大小</param>
        /// <param name="color">颜色</param>
        /// <param name="names">名称</param>
        /// <param name="zAxis">Z轴</param>
        /// <param name="solid">是否填充</param>
        /// <param name="shape">图形形状</param>
        /// <returns></returns>
        public static List <PointData> CreatePointDatas(double[] xAxis, double[] yAxis, double size = 1,
                                                        System.Windows.Media.SolidColorBrush color  = null,
                                                        string[] names = null, double[] zAxis = null, bool solid = false, PointSharp shape = PointSharp.Pyramid)
        {
            if (xAxis == null || yAxis == null || yAxis.Length != xAxis.Length)
            {
                return(null);
            }

            if (color == null)
            {
                color = System.Windows.Media.Brushes.Black;
            }

            if (zAxis != null && zAxis.Length != xAxis.Length)
            {
                return(null);
            }

            //如果有提供名称,名称数量必须与坐标数量相同
            if (names != null && names.Length != xAxis.Length)
            {
                return(null);
            }

            var retDatas = new List <PointData>();

            for (int i = 0; i < xAxis.Length; i++)
            {
                string name   = names == null ? null : names[i];
                double zvalue = zAxis == null ? 1 : zAxis[i];

                retDatas.Add(new PointData(name, xAxis[i], yAxis[i], zvalue, size, color, solid, shape));
            }

            return(retDatas);
        }
 /// <summary>
 /// 创建图像点数据
 /// </summary>
 /// <param name="name">名称</param>
 /// <param name="x"></param>
 /// <param name="y"></param>
 /// <param name="z"></param>
 /// <param name="size">大小</param>
 /// <param name="color">颜色</param>
 /// <param name="solid">是否填充</param>
 /// <param name="shape">形状</param>
 public PointData(string name, double x, double y, double z, double size, System.Windows.Media.SolidColorBrush color, bool solid = false, PointSharp shape = PointSharp.Pyramid)
 {
     this.name       = name;
     this.centerX    = x;
     this.centerY    = y;
     this.centerZ    = z;
     this.size       = size;
     this.color      = color;
     this.solid      = solid;
     this.pointSharp = shape;
     this.key        = Guid.NewGuid();
 }