IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
|
|
|
|
| 654 | 654 | } |
| 655 | 655 | |
| 656 | 656 | protected static double calcX(Node p1) { |
| 657 | | double lat1, lon1, lat2, lon2; |
| 658 | | double dlon, dlat; |
| 659 | | |
| 660 | | lat1 = p1.getCoor().lat() * Math.PI / 180.0; |
| 661 | | lon1 = p1.getCoor().lon() * Math.PI / 180.0; |
| 662 | | lat2 = lat1; |
| 663 | | lon2 = 0; |
| 664 | | |
| 665 | | dlon = lon2 - lon1; |
| 666 | | dlat = lat2 - lat1; |
| 667 | | |
| 668 | | double a = Math.pow(Math.sin(dlat/2), 2) + Math.cos(lat1) * Math.cos(lat2) * Math.pow(Math.sin(dlon/2), 2); |
| 669 | | double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); |
| 670 | | return 6367000 * c; |
| | 657 | return Math.toRadians(p1.getCoor().lat()) * 6367000; |
| 671 | 658 | } |
| 672 | 659 | |
| 673 | 660 | protected static double calcY(Node p1) { |
| 674 | | double lat1, lon1, lat2, lon2; |
| 675 | | double dlon, dlat; |
| 676 | | |
| 677 | | lat1 = p1.getCoor().lat() * Math.PI / 180.0; |
| 678 | | lon1 = p1.getCoor().lon() * Math.PI / 180.0; |
| 679 | | lat2 = 0; |
| 680 | | lon2 = lon1; |
| 681 | | |
| 682 | | dlon = lon2 - lon1; |
| 683 | | dlat = lat2 - lat1; |
| 684 | | |
| 685 | | double a = Math.pow(Math.sin(dlat/2), 2) + Math.cos(lat1) * Math.cos(lat2) * Math.pow(Math.sin(dlon/2), 2); |
| 686 | | double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); |
| 687 | | return 6367000 * c; |
| | 661 | return Math.toRadians(p1.getCoor().lon()) * 6367000 * Math.cos(Math.toRadians(p1.getCoor().lat())); |
| 688 | 662 | } |
| 689 | 663 | |
| 690 | 664 | /** |