public static JDStruc GetJDStruc(LJJSPoint jdPtStart, double lrWidth, string jdStr) { JDStruc jdStruc = new JDStruc(); if (!string.IsNullOrEmpty(jdStr) && jdPtStart != null) { jdStruc.JDPtStart = jdPtStart; string[] jdarr = jdStr.Split(DrawCommonData.jdSplitter); if (jdarr.Count() > 1) { jdStruc.JDtop = StrUtil.StrToDouble(jdarr[0], "井段起始为空,请检查井段设计", "井段起始为非数值型,请检查井段设计"); jdStruc.JDBottom = StrUtil.StrToDouble(jdarr[1], "井段终止为空,请检查井段设计", "井段终止为非数值型,请检查井段设计"); jdStruc.JDHeight = JDOper.GetJDDrawingHeight(jdStruc.JDtop, jdStruc.JDBottom, FrameDesign.ValueCoordinate);//井深就是差值乘以比例尺 } } return(jdStruc); }
/// <summary> /// 获得线道控制点数据,包括每条线道的井段Lst,线道的宽度等信息。 /// </summary> /// <param name="lineRoadModelLst"></param> /// <returns></returns> public static List <LineRoadControlData> getLineRoadControlDataLst(List <LineRoadDesignClass> lineRoadModelLst) { double xLrPtStart = DrawCommonData.xStart; double yLrptStart = DrawCommonData.yStart; List <LineRoadControlData> lrRoadContorlDataLst = new List <LineRoadControlData>(); for (int i = 0; i < lineRoadModelLst.Count; i++) { LJJSPoint lPtStart = new LJJSPoint(xLrPtStart, yLrptStart); LineRoadDesignClass tmpLrModel = lineRoadModelLst[i]; LineRoadControlData tmpLrControlData = new LineRoadControlData(); tmpLrControlData.LineRoadId = tmpLrModel.LineRoadId; tmpLrControlData.LineRoadWidth = tmpLrModel.LineRoadWidth; tmpLrControlData.LineRoadJDStructLst = JDOper.GetLineRoadJDLst(lPtStart, tmpLrModel.LineRoadWidth); //获得2560-2590,2660-2690 lrRoadContorlDataLst.Add(tmpLrControlData); xLrPtStart = xLrPtStart + tmpLrModel.LineRoadWidth; } return(lrRoadContorlDataLst); //only depth -> 2560-2590 2660-2690 }