Пример #1
0
        private LJJSPoint GetDuiShuPointZB(KeDuChiItem duiShuKDC, LJJSPoint convertPt, JDStruc jdstruc, LJJSPoint lrptstart)
        {
            double Xpt = DuiShuOper.XGetDSZuoBiaoValue(lrptstart.XValue, duiShuKDC.KDir, duiShuKDC.KParm, convertPt.XValue, duiShuKDC.KMin);
            double Ypt = ZuoBiaoOper.GetJSZongZBValue(jdstruc.JDPtStart.YValue, convertPt.YValue, jdstruc.JDtop, FrameDesign.ValueCoordinate);

            return(new LJJSPoint(Xpt, Ypt));
        }
Пример #2
0
        private void AddPerYYWZHatch(string yYWZ, double gWJS, double T2jzz, double jdTop)
        {
            double gwjsZuoBiaoY = ZuoBiaoOper.GetJSZongZBValue(ptStart.YValue, gWJS, jdTop, FrameDesign.ValueCoordinate);
            string subsql       = this.hcgzItemDesignStruc.ClosedArea_Field_YYWZ + @"='" + yYWZ + @"'";

            if (null != kdcItem)
            {
                double           sfsStartX = kdcItem.KMin;
                double           sfsEndX   = T2jzz;
                double           kdsStartX = T2jzz;
                double           kdsEndX   = kdcItem.KMax;
                List <LJJSPoint> sfslst    = GetClosedAreaDRS(sfsStartX, sfsEndX, kdcItem, subsql, gwjsZuoBiaoY);
                double           xt2       = DuiShuOper.XGetDSZuoBiaoValue(ptStart.XValue, 1, kdcItem.KParm, T2jzz, kdcItem.KMin);
                double           ytmp      = endy;
                List <LJJSPoint> kdslst    = GetClosedAreaDRS(kdsStartX, kdsEndX, kdcItem, subsql, gwjsZuoBiaoY);

                kdslst.Add(new LJJSPoint(xt2, gwjsZuoBiaoY));
                double ytmpkd = starty;

                sfslst.Add(new LJJSPoint(xt2, (ytmp + ytmpkd) * 0.5 * HCGZLTXiShu + gwjsZuoBiaoY));
                sfslst.Add(new LJJSPoint(xt2, gwjsZuoBiaoY));
                kdslst.Add(new LJJSPoint(xt2, (ytmp + ytmpkd) * 0.5 * HCGZLTXiShu + gwjsZuoBiaoY));

                AreaHatch.AddStandardAreaHatch(DrawCommonData.activeDocument, sfslst, this.hcgzItemDesignStruc.SFLTColor, this.hcgzItemDesignStruc.SFLTColor);
                AreaHatch.AddStandardAreaHatch(DrawCommonData.activeDocument, kdslst, hcgzItemDesignStruc.KDLTColor, hcgzItemDesignStruc.KDLTColor);
            }
        }
        private LJJSPoint GetDuiShuPointZB(KeDuChiItem duiShuKDC, double yvalue, Hashtable drawht, JDStruc jdstruc, LJJSPoint lrptstart)
        {
            double xvalue = (double)drawht[yvalue];

            double Xpt = DuiShuOper.XGetDSZuoBiaoValue(lrptstart.XValue, duiShuKDC.KDir, duiShuKDC.KParm, xvalue, duiShuKDC.KMin);
            double Ypt = ZuoBiaoOper.GetJSZongZBValue(jdstruc.JDPtStart.YValue, yvalue, jdstruc.JDtop, FrameDesign.ValueCoordinate);

            return(new LJJSPoint(Xpt, Ypt));
        }
 private void DrawDuiShuStickLine(LJJSPoint jdStartPt, KeDuChiItem kdc, double xVal, double yVal, double jdStartJS)
 {
     ZuoBiaoOper zbopp   = new ZuoBiaoOper(FrameDesign.ValueCoordinate);
     double      duishuX = DuiShuOper.XGetDSZuoBiaoValue(jdStartPt.XValue, kdc.KDir, kdc.KParm, xVal, kdc.KMin);
     double      duishuY = ZuoBiaoOper.GetJSZongZBValue(jdStartPt.YValue, yVal, jdStartJS, FrameDesign.ValueCoordinate);
     LJJSPoint   ptend   = new LJJSPoint(duishuX, duishuY);
     LJJSPoint   ptstart = new LJJSPoint(jdStartPt.XValue, ptend.YValue);
     ulong       objid   = Line.BuildCommonSoldLine(ptstart, ptend, Color.Black.ToArgb(), kdc.kLineWidth);
     //
 }
        private void AddChaoJieBZ(double xval, LJJSPoint jdStartPt, double BzJS, double jdStartJS, double blcvalue, KeDuChiItem drawkdc, double lRWidth)
        {
            Layer.Layer_SetToCurrent(drawkdc.KName);
            double chaojiepty = ZuoBiaoOper.GetJSZongZBValue(jdStartPt.YValue, BzJS, jdStartJS, blcvalue);

            LJJSPoint chaojiept = new LJJSPoint(jdStartPt.XValue + drawkdc.KDir * lRWidth, chaojiepty);
            ChaoJieBZ cjbz      = new ChaoJieBZ(xval, chaojiept);

            cjbz.DrawChaoJieBiaoZhu(drawkdc.KDir);
        }
        private void AddPerYYWZHatch(string yYWZ, double gWJS, LJJSPoint ptStart, double jdTop)
        {
            double gwjsZuoBiaoY = ZuoBiaoOper.GetJSZongZBValue(ptStart.YValue, gWJS, jdTop, FrameDesign.ValueCoordinate);
            string subsql       = this.itemDesignStruc.ClosedArea_Field_YYWZ + @"='" + yYWZ + @"'";

            if (null != kdcItem)
            {
                List <LJJSPoint> sfslst             = GetClosedAreaDRS(kdcItem, subsql, gwjsZuoBiaoY, ptStart);
                List <LJJSPoint> HorBoundaryLineLst = new List <LJJSPoint>();
                HorBoundaryLineLst.Add(new LJJSPoint(ptStart.XValue, gwjsZuoBiaoY));
                HorBoundaryLineLst.Add(new LJJSPoint(ptStart.XValue + this.lineRoadEnvironment.LineRoadWidth, gwjsZuoBiaoY));
                CurveHatch curveHatch = new CurveHatch(kdcItem, this.lineRoadEnvironment.LineRoadWidth);
                curveHatch.CurvesBuildExec(sfslst, itemDesignStruc.HatchDic[0], HorBoundaryLineLst);
            }
        }
Пример #7
0
        public List <LJJSPoint> GetDrawZuoPtCol(Hashtable drawht, double addPtXvalue)
        {
            List <LJJSPoint> drawptcol = new List <LJJSPoint>();
            ArrayList        al;//完成排序的绘图点;

            if (null == drawht)
            {
                return(drawptcol);
            }
            if (_keDuChiItem.KStyle == KDCStyle.DuiShu)           //对数项;
            {
                drawht = HashUtil.MoveHashTableZeroValue(drawht); //去掉数据中的0值;
            }

            al = HashUtil.GetHastablePaiXuList(drawht);//完成排序的绘图点;
            if (null != al && al.Count > 1)
            {
                int    last      = al.Count - 1;
                double firstptJS = (double)al[0];
                double lastptJS  = (double)al[last];

                double firstPtY = ZuoBiaoOper.GetJSZongZBValue(_jdptstart.YValue, firstptJS, _jdstruc.JDtop, FrameDesign.ValueCoordinate);
                double lastPtY  = ZuoBiaoOper.GetJSZongZBValue(_jdptstart.YValue, lastptJS, _jdstruc.JDtop, FrameDesign.ValueCoordinate);

                drawptcol.Add(new LJJSPoint(addPtXvalue, firstPtY + 0.0001));

                for (int i = 0; i < al.Count; i++)
                {
                    double jsvalue = (double)al[i];
                    double xvalue  = (double)drawht[jsvalue];
                    if (_keDuChiItem.KStyle == KDCStyle.DuiShu)//对数项;
                    {
                        drawptcol.Add(GetDuiShuPointZB(_keDuChiItem, new LJJSPoint(xvalue, jsvalue), _jdstruc, _jdptstart));
                    }
                    else
                    {
                        drawptcol.Add(GetPtZBByKDC(_keDuChiItem, _jdptstart, new LJJSPoint(xvalue, jsvalue), _jdstruc.JDtop));
                    }
                }
                drawptcol.Add(new LJJSPoint(addPtXvalue, lastPtY - 0.0001));
            }

            return(drawptcol);
        }