コード例 #1
0
        /// <summary>
        /// 添加普通类型的棒线,是与对数类型相区别;
        /// </summary>
        /// <param name="jdstruc">绘制棒线的井段范围</param>
        /// <param name="drawht">绘制棒线的数据,hashtable的key为y值也就是井深,X为棒线的横向取值</param>
        private void AddNormalStickLineToFigure(JDStruc jdstruc, Hashtable drawht)
        {
            bool        ifinkdc  = false;
            double      jdtop    = jdstruc.JDtop;
            double      jdbottom = jdstruc.JDBottom;
            KeDuChiItem drawkdc;
            LJJSPoint   lrptstart;
            int         kdccount = m_KDCList.Count;

            foreach (DictionaryEntry de in drawht)
            {
                ifinkdc = false;
                double xval = (double)de.Value;
                for (int i = 0; i < m_KDCList.Count; i++)
                {
                    drawkdc = m_KDCList[i];
                    if (ZuoBiaoOper.IfInKeDuChi(xval, drawkdc))//假如棒线横向坐标值在刻度尺范围内则绘制棒线;
                    {
                        Layer.Layer_SetToCurrent(drawkdc.KName);
                        lrptstart = ZuoBiaoOper.UpdateLRStartPt(drawkdc.KDir, jdstruc.JDPtStart, lineRoadEnvironment.LineRoadWidth);
                        DrawStickLine(lrptstart, drawkdc, xval, (double)de.Key, jdtop);
                        ifinkdc = true;
                        break;
                    }
                }
                if (ifinkdc == false)//棒线横向坐标不再刻度吃范围内,添加超界标注;
                {
                    lrptstart = ZuoBiaoOper.UpdateLRStartPt(m_KDCList[kdccount - 1].KDir, jdstruc.JDPtStart, lineRoadEnvironment.LineRoadWidth);
                    if (lineItemStruct.LineItemChaoJie == CJQXChaoJie.BiaoZhu)//添加标注信息;
                    {
                        AddChaoJieBZ(xval, jdstruc.JDPtStart, (double)de.Key, jdstruc.JDtop, FrameDesign.ValueCoordinate, m_KDCList[kdccount - 1], lineRoadEnvironment.LineRoadWidth);
                    }
                }
            }
        }
コード例 #2
0
        //single paint



        private KeDuChiItem PointIfChaoJie(double yval, Hashtable drawht)
        {
            KeDuChiItem drawkdc = null;

            double xval = (double)drawht[yval];

            for (int j = 0; j < m_KDCList.Count; j++)
            {
                KeDuChiItem tmpdrawkdc = m_KDCList[j];
                if (ZuoBiaoOper.IfInKeDuChi(xval, tmpdrawkdc))
                {
                    drawkdc = tmpdrawkdc;
                    break;
                }
            }
            return(drawkdc);
        }