| | |
| | | private static boolean isEqual(double a,double b){ |
| | | return (Math.abs(a-b)<1e-3); |
| | | } |
| | | private static Point rotatePoint(Point oldPoint,Point centre,double degree){ |
| | | public static Point rotatePoint(Point oldPoint,Point centre,double degree){ |
| | | |
| | | Point newPoint = new Point(0.0,0.0); |
| | | newPoint.setX(getdouble((oldPoint.getX()-centre.getX())*cos(toRadians(degree)) - |
| | | (oldPoint.getY()-centre.getY())*sin(toRadians(degree)) + centre.getX(),6)) ; |
| | | (oldPoint.getY()-centre.getY())*sin(toRadians(degree)) + centre.getX(),4)) ; |
| | | newPoint.setY(getdouble( (oldPoint.getX()-centre.getX())*sin(toRadians(degree)) |
| | | + (oldPoint.getY()-centre.getY())*cos(toRadians(degree)) + centre.getY(),6)); |
| | | + (oldPoint.getY()-centre.getY())*cos(toRadians(degree)) + centre.getY(),4)); |
| | | return newPoint; |
| | | } |
| | | |
| | |
| | | return b.setScale(reserve, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| | | } |
| | | |
| | | |
| | | public static double YawOf(Point p1, Point p2) |
| | | { |
| | | double deg = 0.0; |
| | | |
| | | if (Math.abs(p1.getY() - p2.getY()) <= 1e-3) { |
| | | if (p1.getX() > p2.getX()) { |
| | | deg = 90; |
| | | } else { |
| | | deg = 270; |
| | | } |
| | | } else if (Math.abs(p1.getX() - p2.getX()) <= 1e-3) { |
| | | if (p1.getY() > p2.getY()) { |
| | | deg = 0; |
| | | } else { |
| | | deg = 180; |
| | | } |
| | | } else { |
| | | deg = Math.atan(Math.abs(p1.getX() - p2.getX()) / |
| | | Math.abs(p1.getY() - p2.getY())); |
| | | |
| | | deg = Math.toDegrees(deg); |
| | | |
| | | if (p1.getX() > p2.getX() && |
| | | p1.getY() > p2.getY()) { |
| | | |
| | | } else if (p1.getX() < p2.getX() && |
| | | p1.getY() > p2.getY()) { |
| | | deg = 360 - deg; |
| | | } else if (p1.getX() < p2.getX() && |
| | | p1.getY() < p2.getY()) { |
| | | deg = 180 + deg; |
| | | } else if (p1.getX() > p2.getX() && |
| | | p1.getY() < p2.getY()) { |
| | | deg = 180 - deg; |
| | | } |
| | | } |
| | | |
| | | return deg; |
| | | } |
| | | |
| | | public static String formatTimeYYMMDDHHmmSS(long begin_time) { |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |