|
@@ -195,70 +195,64 @@ public class TurnPointCalculator implements ITurnPointCalculator {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
- public NextPoint vacancy(Object qs, Object gc, Object sj, Double bmd, String range, Object step){
|
|
|
- NextPoint np = new NextPoint();
|
|
|
- String dev="-6,6";
|
|
|
- if(StringUtils.isNotEmpty(range)){
|
|
|
- dev=range.replaceAll("[\\[\\]]","");
|
|
|
+ public void vacancy(LevelInfo levelInfo,NextPoint np){
|
|
|
+ if(StringUtils.isNotEmpty(levelInfo.getDx())){
|
|
|
+ levelInfo.setDx(levelInfo.getDx().replaceAll("[\\[\\]]",""));
|
|
|
+ }else{
|
|
|
+ levelInfo.setDx("-6,6");
|
|
|
}
|
|
|
String dx;
|
|
|
- double cD=Double.parseDouble(step.toString());
|
|
|
+// double cD=Double.parseDouble(step.toString());
|
|
|
double min=0.5d;
|
|
|
do{
|
|
|
- dx= CustomFunction.rangeList(1,0,dev,1,0,1).get(0).toString();
|
|
|
+ dx= CustomFunction.rangeList(1,0,levelInfo.getDx(),1,0,1).get(0).toString();
|
|
|
}while (StringUtils.isEquals(0,dx));
|
|
|
double hd;
|
|
|
boolean hasNp=true;
|
|
|
- if(StringUtils.isNotEmpty(bmd,gc)){
|
|
|
- hd=Double.parseDouble(bmd.toString())-Double.parseDouble(gc.toString());
|
|
|
- if(hd>min&&hd<cD){
|
|
|
+ if(StringUtils.isNotEmpty(levelInfo.getSightHeight(),np.getSc())){
|
|
|
+ hd=levelInfo.getSightHeight()-Double.parseDouble(np.getSc());
|
|
|
+ if(hd>min&&hd<levelInfo.getStep()){
|
|
|
hasNp=false;
|
|
|
}
|
|
|
- np.setSc(StringUtils.handleNull(gc));
|
|
|
+// np.setSc(StringUtils.handleNull(gc));
|
|
|
}
|
|
|
- if(StringUtils.isNotEmpty(gc)&&StringUtils.isEmpty(sj,qs)){
|
|
|
+ if(StringUtils.isNotEmpty(np.getSc())&&StringUtils.isEmpty(np.getQ(),np.getSj())){
|
|
|
/*010*/
|
|
|
if(!hasNp){
|
|
|
- np.setQ(CustomFunction.calculate(bmd,gc,3,2).toString());
|
|
|
+ np.setQ(CustomFunction.calculate(levelInfo.getSightHeight(),np.getSc(),3,2).toString());
|
|
|
}
|
|
|
- }else if(StringUtils.isNotEmpty(gc,sj)&&StringUtils.isEmpty(qs)){
|
|
|
+ }else if(StringUtils.isNotEmpty(np.getSc(),np.getSj())&&StringUtils.isEmpty(np.getQ())){
|
|
|
/*011*/
|
|
|
if(!hasNp){
|
|
|
- np.setQ(CustomFunction.calculate(bmd,gc,3,2).toString());
|
|
|
+ np.setQ(CustomFunction.calculate(levelInfo.getSightHeight(),np.getSc(),3,2).toString());
|
|
|
}
|
|
|
- np.setSj(sj.toString());
|
|
|
- }else if(StringUtils.isNotEmpty(gc,qs)&&StringUtils.isEmpty(sj)){
|
|
|
+ }else if(StringUtils.isNotEmpty(np.getSc(),np.getQ())&&StringUtils.isEmpty(np.getSj())){
|
|
|
/*110*/
|
|
|
- np.setQ(qs.toString());
|
|
|
- }else if(StringUtils.isNotEmpty(sj)&&StringUtils.isEmpty(gc,qs)){
|
|
|
+// np.setQ(qs.toString());
|
|
|
+ }else if(StringUtils.isNotEmpty(np.getSj())&&StringUtils.isEmpty(np.getSc(),np.getQ())){
|
|
|
/*001*/
|
|
|
- np.setSj(sj.toString());
|
|
|
+// np.setSj(sj.toString());
|
|
|
np.setSc(StringUtils.number2String(Double.parseDouble(np.getSj())+Double.parseDouble(dx)/1000,3));
|
|
|
- hd=Double.parseDouble(bmd.toString())-Double.parseDouble(np.getSc());
|
|
|
- if(hd>min&&hd<cD){
|
|
|
+ hd=levelInfo.getSightHeight()-Double.parseDouble(np.getSc());
|
|
|
+ if(hd>min&&hd<levelInfo.getStep()){
|
|
|
hasNp=false;
|
|
|
}
|
|
|
if(!hasNp){
|
|
|
- np.setQ(CustomFunction.calculate(bmd,np.getSc(),3,2).toString());
|
|
|
+ np.setQ(CustomFunction.calculate(levelInfo.getSightHeight(),np.getSc(),3,2).toString());
|
|
|
}
|
|
|
- }else if(StringUtils.isNotEmpty(qs,bmd)&&StringUtils.isEmpty(gc,sj)){
|
|
|
+ }else if(StringUtils.isNotEmpty(np.getQ(),levelInfo.getSightHeight())&&StringUtils.isEmpty(np.getSc(),np.getSj())){
|
|
|
/*100*/
|
|
|
- np.setQ(qs.toString());
|
|
|
- np.setSc(StringUtils.number2String(bmd-Double.parseDouble(np.getQ()),3));
|
|
|
- }else if(StringUtils.isNotEmpty(qs,sj)&&StringUtils.isEmpty(gc)){
|
|
|
+// np.setQ(qs.toString());
|
|
|
+ np.setSc(StringUtils.number2String(levelInfo.getSightHeight()-Double.parseDouble(np.getQ()),3));
|
|
|
+ }else if(StringUtils.isNotEmpty(np.getQ(),np.getSj())&&StringUtils.isEmpty(np.getSc())){
|
|
|
/*101*/
|
|
|
- np.setQ(qs.toString());
|
|
|
- np.setSc(StringUtils.number2String(Double.parseDouble(sj.toString())+Double.parseDouble(dx)/1000,3));
|
|
|
- }else if(StringUtils.isNotEmpty(qs,sj,gc)){
|
|
|
+// np.setQ(qs.toString());
|
|
|
+ np.setSc(StringUtils.number2String(Double.parseDouble(np.getSj())+Double.parseDouble(dx)/1000,3));
|
|
|
+ }else if(StringUtils.isNotEmpty(np.getQ(),np.getSc(),np.getSj())){
|
|
|
/*111*/
|
|
|
- np.setQ(qs.toString());
|
|
|
- np.setSc(gc.toString());
|
|
|
- }
|
|
|
- if(np.getSc()==null){
|
|
|
- /*实测高程一定不能为空*/
|
|
|
- return null;
|
|
|
+// np.setQ(qs.toString());
|
|
|
+// np.setSc(gc.toString());
|
|
|
}
|
|
|
- return np;
|
|
|
}
|
|
|
|
|
|
}
|