コード例 #1
0
        private void AddContinuousLineToFigure(JDStruc jdstruc, Hashtable drawht, int index, List <Hashtable> drawhtList)
        {
            //fff

            Color curr_color = AddLineHatchManager.get_Color_By_CurveItemShowName(this.lineItemStruct);

            if (null == m_KDCList || m_KDCList.Count == 0)
            {
                return;
            }

            ArrayList al;//完成排序的绘图点;

            ArrayList al1 = null;

            if (m_KDCList[0].KStyle == KDCStyle.DuiShu)           //对数项;
            {
                drawht = HashUtil.MoveHashTableZeroValue(drawht); //去掉数据中的0值;
                al     = HashUtil.GetHastablePaiXuList(drawht);   //完成排序的绘图点;
                if (al.Count < 2)
                {
                    return;
                }
                AddDuiShuContinuousToFigure(m_KDCList[0], al, jdstruc, drawht, curr_color);//添加对数类型折线
                return;
            }
            else//普通项
            {
                al = HashUtil.GetHastablePaiXuList(drawht);//完成排序的绘图点; 将所有y值即depth由小到大排序

                /**
                 * if (drawhtList != null)
                 * {
                 *  al1 = HashUtil.GetHastablePaiXuList(drawhtList[1]);
                 * }**/
                if (al.Count < 2)
                {
                    return;
                }

                if (lineItemStruct.LiSubClass.Equals("msev") == false && lineItemStruct.LiSubClass.Equals("mseh") == false && lineItemStruct.LiSubClass.Equals("wxcs2") == false && lineItemStruct.LiSubClass.Equals("jgl") == false)
                {                                                                             //不是填充垂向功和切向功 或者 填充物性指数交汇和进给量的情况
                    this.AddNormalContinuousToFigure(al, jdstruc, drawht, curr_color, index); //画边缘线
                }

                //填充物性指数交汇和进给量

                #region
                if (lineItemStruct.LiSubClass.Equals("wxcs2"))
                {
                    if (DrawPointContainer.list[index].WXCSJiaoHuiList == null)
                    {
                        this.AddNormalContinuousToFigure(al, jdstruc, drawht, curr_color, index); //Blue
                    }



                    if (null != DrawPointContainer.list[index].WXCSJiaoHuiList && null != DrawPointContainer.list[index].JinGeiLiangList)
                    {
                        //Gai

                        Color wxcs_jiaohui_color = AddLineHatchManager.get_Color_By_CurveItemShowName("物性指数交汇");
                        Color jgl_color          = AddLineHatchManager.get_Color_By_CurveItemShowName("进给量");

                        AddLineHatchManager.Gei_Qu_Xian_De_Jiao_Dian_Nei_Bu_Tu_Se_Quicker(wxcs_jiaohui_color, jgl_color, DrawPointContainer.list[index].WXCSJiaoHuiList, DrawPointContainer.list[index].JinGeiLiangList, lineItemStruct, index);
                    }
                }

                if (lineItemStruct.LiSubClass.Equals("jgl"))
                {
                    if (DrawPointContainer.list[index].JinGeiLiangList == null)
                    {
                        this.AddNormalContinuousToFigure(al, jdstruc, drawht, curr_color, index); // Green
                    }



                    if (null != DrawPointContainer.list[index].WXCSJiaoHuiList && null != DrawPointContainer.list[index].JinGeiLiangList)
                    {
                        //Gai
                        Color wxcs_jiaohui_color = AddLineHatchManager.get_Color_By_CurveItemShowName("物性指数交汇");
                        Color jgl_color          = AddLineHatchManager.get_Color_By_CurveItemShowName("进给量");
                        AddLineHatchManager.Gei_Qu_Xian_De_Jiao_Dian_Nei_Bu_Tu_Se_Quicker(wxcs_jiaohui_color, jgl_color, DrawPointContainer.list[index].WXCSJiaoHuiList, DrawPointContainer.list[index].JinGeiLiangList, lineItemStruct, index);
                    }
                }
                #endregion
                //填充垂向功和切向功
                #region

                if (lineItemStruct.LiSubClass.Equals("msev"))
                {
                    if (DrawPointContainer.list[index].msevList == null)
                    {
                        this.AddNormalContinuousToFigure(al, jdstruc, drawht, curr_color, index);
                    }



                    if (null != DrawPointContainer.list[index].msevList && null != DrawPointContainer.list[index].msehList)
                    {
                        //Gai

                        Color msev_color = AddLineHatchManager.get_Color_By_CurveItemShowName("垂向功");
                        Color mseh_color = AddLineHatchManager.get_Color_By_CurveItemShowName("切向功");

                        AddLineHatchManager.Gei_Qu_Xian_De_Jiao_Dian_Nei_Bu_Tu_Se_Quicker(mseh_color, msev_color, DrawPointContainer.list[index].msehList, DrawPointContainer.list[index].msevList, lineItemStruct, index);
                    }
                }

                if (lineItemStruct.LiSubClass.Equals("mseh"))
                {
                    if (DrawPointContainer.list[index].msehList == null)
                    {
                        this.AddNormalContinuousToFigure(al, jdstruc, drawht, curr_color, index);
                    }



                    if (null != DrawPointContainer.list[index].msevList && null != DrawPointContainer.list[index].msehList)
                    {
                        //Gai

                        Color mseh_color = AddLineHatchManager.get_Color_By_CurveItemShowName("切向功");
                        Color msev_color = AddLineHatchManager.get_Color_By_CurveItemShowName("垂向功");
                        AddLineHatchManager.Gei_Qu_Xian_De_Jiao_Dian_Nei_Bu_Tu_Se_Quicker(mseh_color, msev_color, DrawPointContainer.list[index].msehList, DrawPointContainer.list[index].msevList, lineItemStruct, index);
                    }
                }
                #endregion
                //TO BE DONE
                string sb = lineItemStruct.LiSubClass;
                if (lineItemStruct.LiSubClass == "wxcs")    //物性指数涂色
                {
                    if (this.lrptstartName.Equals("wxcs"))
                    {
                        if (DrawPointContainer.list[index].wxcsList == null)
                        {
                            DrawPointContainer.list[index].wxcsList = new List <LJJSPoint>();
                        }
                        //suizuan
                        AddLineHatchManager.Gei_Qu_Xian_Tu_Se(al, jdstruc, drawht, DrawPointContainer.list[index].wxcsList, this.lrptstart); //在此给画好的曲线填充颜色
                        //1118 wxcs
                        this.AddNormalContinuousToFigure(al, jdstruc, drawht, Color.Black, index);                                           //填充颜色后,边缘线消失,需要再画一次

                        /**
                         * if (drawhtList != null)
                         * {
                         *  this.AddNormalContinuousToFigure(al, jdstruc, drawhtList[1], Color.Blue, index,null);
                         * }**/
                    }
                    else
                    {
                        MessageBox.Show("不知道线道起点坐标,无法显示涂色");
                    }
                }
            }
        }