public override void AddItemTitle()
        {
            CurveItemTitleClass title = new CurveItemTitleClass();

            title.showName           = this.lineItemStruct.CurveItemShowName;
            title.isKDCShow          = this.lineItemStruct.KDCIfShow;
            title.itemTitlePos       = this.lineItemStruct.LineItemTitlePos;
            title.firstKDCStartHeigh = this.lineItemStruct.FirstKDCStartHeigh;
            title.curveItemUnit      = this.lineItemStruct.LineItemUnit;
            title.curveUnitPos       = this.lineItemStruct.UnitPosition;
            title.showNameVSKDCHeigh = this.lineItemStruct.LINameVSKDCHeigh;
            LJJSCAD.DrawingOper.AddItemTitle.AddLineItemTitleToFig(LineRoadStartPt, lineRoadEnvironment.LineRoadWidth, title);
        }
        public override void AddItemTitle()
        {
            CurveItemTitleClass title = new CurveItemTitleClass();

            title.showName           = this.itemDesignStruc.ItemShowName;
            title.isKDCShow          = true;
            title.itemTitlePos       = this.itemDesignStruc.ItemShowNamePosition;
            title.firstKDCStartHeigh = this.itemDesignStruc.FirstKDCStartHeigh;
            title.curveItemUnit      = this.itemDesignStruc.TitleUint;
            title.curveUnitPos       = this.itemDesignStruc.TitleUnitPosition;
            title.showNameVSKDCHeigh = this.itemDesignStruc.ItemNameVSKDCHeigh;
            //和曲线项添加绘图项头部一样;
            LJJSCAD.DrawingOper.AddItemTitle.AddLineItemTitleToFig(LineRoadStartPt, lineRoadEnvironment.LineRoadWidth, title);
        }
Beispiel #3
0
        public static void AddLineItemTitleToFig(LJJSPoint lrPtStart, double lrWidth, CurveItemTitleClass cureveItemTitle)
        {
            AttachmentPoint    inserPos    = AttachmentPoint.BottomCenter;
            int                kdcdirec    = 0;
            List <KeDuChiItem> kdcitemlist = (List <KeDuChiItem>)KeDuChiManage.LineItemKDCHt[cureveItemTitle.showName];

            double xstart = lrPtStart.XValue;
            double ystart = lrPtStart.YValue + cureveItemTitle.firstKDCStartHeigh;
            double xend   = lrPtStart.XValue + lrWidth;
            double yend   = ystart;
            double xvalue;


            string lineitemid = cureveItemTitle.showName.Replace("_", "");

            lineitemid = lineitemid.Replace(" ", "");
            if (cureveItemTitle.isKDCShow)
            {
                for (int i = 0; i < kdcitemlist.Count; i++)
                {
                    KeDuChiItem kdc = kdcitemlist[i];
                    kdcdirec = kdc.KDir;
                    Layer.CreateLayer(kdc.KName, kdc.KCol, kdc.KLineStyle);
                    Layer.Layer_SetToCurrent(kdc.KName);


                    ystart = ystart + _kdcspace * i;
                    yend   = yend + _kdcspace * i;
                    xstart = lrPtStart.XValue;
                    xend   = lrPtStart.XValue + lrWidth;
                    if (kdc.KDir.Equals(-1))
                    {
                        xend   = lrPtStart.XValue;
                        xstart = lrPtStart.XValue + lrWidth;
                    }
                    LJJSPoint ptstart = new LJJSPoint(xstart, ystart);
                    LJJSPoint ptend   = new LJJSPoint(xend, yend);
                    if ((kdc.KStyle == KDCStyle.DengCha) || (kdc.KStyle == KDCStyle.DengFen))
                    {
                        kdc.AddNormalKDCToFigure(ptstart, ptend);
                    }
                    else if (kdc.KStyle == KDCStyle.DuiShu)//对数刻度尺;
                    {
                        kdc.AddDuiShuKDCToFigure(ptstart, ptend);
                    }
                }
            }
            yend = yend + cureveItemTitle.showNameVSKDCHeigh;
            LJJSPoint ptlinameposition;

            if (cureveItemTitle.itemTitlePos.Equals(ItemTitlePos.Left))
            {
                xvalue   = lrPtStart.XValue + 0.5;
                inserPos = AttachmentPoint.BottomLeft;
            }
            else if (cureveItemTitle.itemTitlePos.Equals(ItemTitlePos.Right))
            {
                xvalue   = lrPtStart.XValue + lrWidth - 0.5;
                inserPos = AttachmentPoint.BottomRight;
            }
            else
            {
                xvalue = lrPtStart.XValue + lrWidth * 0.5;
            }
            ptlinameposition = new LJJSPoint(xvalue, yend);

            //单位绘制(绘制该线道的单位)
            if (!string.IsNullOrEmpty(cureveItemTitle.curveItemUnit))
            {
                LJJSPoint        unitpospt;
                CJQXUnitPosition qxunitpos = cureveItemTitle.curveUnitPos;
                if (qxunitpos == CJQXUnitPosition.RightPos)//右侧,绘图项标题右侧
                {
                    int namelen = cureveItemTitle.showName.Length;
                    unitpospt = new LJJSPoint(lrPtStart.XValue + lrWidth * 0.5 + namelen * FrameDesign.PictureItemTxtHeight * 0.6 + 0.8, yend);
                    LJJSText.AddHorCommonText(cureveItemTitle.curveItemUnit, unitpospt, Color.Black.ToArgb(), AttachmentPoint.BottomLeft, FrameDesign.PictureItemTxtHeight * 0.6, FrameDesign.PictureItemFont);
                }
                else if (qxunitpos == CJQXUnitPosition.AtRight)//居右,线道右侧
                {
                    unitpospt = new LJJSPoint(lrPtStart.XValue + lrWidth, yend);
                    LJJSText.AddHorCommonText(cureveItemTitle.curveItemUnit, unitpospt, Color.Black.ToArgb(), AttachmentPoint.BottomRight, FrameDesign.PictureItemTxtHeight * 0.6, FrameDesign.PictureItemFont);
                }
                else
                {
                    unitpospt = new LJJSPoint(lrPtStart.XValue + lrWidth * 0.5, yend - FrameDesign.PictureItemTxtHeight * 1.4);
                    LJJSText.AddHorCommonText(cureveItemTitle.curveItemUnit, unitpospt, Color.Black.ToArgb(), AttachmentPoint.BottomCenter, FrameDesign.PictureItemTxtHeight * 0.6, FrameDesign.PictureItemFont);
                }
            }
            LJJSText.AddHorCommonText(cureveItemTitle.showName, ptlinameposition, Color.Black.ToArgb(), inserPos, TextFontManage.ItemName);
            //  ArxCSHelper.AddMText(liShowName, FrameDesign.PictureItemTxtHeight, ptlinameposition, Color.Black.ToArgb(), AttachmentPoint.BottomCenter, DrawingFrameData._drawitemTextStyle);

            /*     if (lis.LiSubClass.Equals("yqsbhd"))
             *   {
             *       YSBHDItemDraw._ysbhdirection = 1;
             *       if (kdcdirec != 0)
             *       {
             *           YSBHDItemDraw._ysbhdirection = kdcdirec;
             *       }
             *       //加载油水饱和度
             *       YSBHDItemDraw.LoadYSBHDLt();
             *       //完成返回
             *       LJJSPoint ysbhdtemp = new LJJSPoint(ptlinameposition.XValue, lis.LINameVSKDCHeigh - 2 * DrawingFrameData._drawitemTextHeigh, 0);//坐标中点
             *       double measure = YSBHDItemDraw._lt_YSLineRoad.Count * YSBHDItemDraw.YSBHDTitleHeigh;//总宽度是measure
             *       LJJSPoint ysbhdstart = new LJJSPoint(ysbhdtemp.XValue - 0.5 * measure + 0.5 * YSBHDItemDraw.YSBHDTitleHeigh, ysbhdtemp.YValue, 0);//起始点就是最前面那个
             *
             *       for (int i = 0; i < YSBHDItemDraw._lt_YSLineRoad.Count; i++)
             *       {
             *           //绘制名称
             *           ArxCSHelper.AddMText(YSBHDItemDraw._lt_YSLineRoad[i].YSBHDName, DrawingFrameData._drawitemTextHeigh
             *               , ysbhdstart, AttachmentPoint.MiddleCenter, DrawingFrameData._drawitemTextStyle);
             *           //绘制下面的代表线
             *           LJJSPoint ptstart = new LJJSPoint(ysbhdstart.XValue - 0.5 * DrawingFrameData._drawitemTextHeigh, ysbhdstart.YValue - DrawingFrameData._drawitemTextHeigh);
             *           LJJSPoint ptend = new LJJSPoint(ysbhdstart.XValue + 0.5 * DrawingFrameData._drawitemTextHeigh, ysbhdstart.YValue - DrawingFrameData._drawitemTextHeigh);
             *           ArxCSHelper.AddLWPolyline(ptstart, ptend, 0.03, AutoCADColor.Black.ToArgb(), YSBHDItemDraw._lt_YSLineRoad[i].YSBHDLineKind);
             *
             *           ysbhdstart = new LJJSPoint(ysbhdstart.XValue + YSBHDItemDraw.YSBHDTitleHeigh, ysbhdstart.YValue, 0);
             *       }
             *       return;
             *   }*/
        }