* 坐标转换坐标点 * @param fromProjection 源坐标系 * @param toProjection 目标坐标系 * @param coordinates 坐标点
(fromProjection, toProjection, coordinates)
| 515 | * @param coordinates 坐标点 |
| 516 | */ |
| 517 | function transformCoordinate(fromProjection, toProjection, coordinates) { |
| 518 | if (fromProjection === toProjection) { |
| 519 | return coordinates; |
| 520 | } |
| 521 | // proj4缺陷,EPSG:4214的坐标x为180,转换后变成-179. |
| 522 | if (fromProjection === 'EPSG:4214' && toProjection === 'EPSG:4326' && coordinates[0] === 180) { |
| 523 | const newCoordinate = transformCoodinates({ |
| 524 | coordinates, |
| 525 | sourceProjection: fromProjection, |
| 526 | destProjection: toProjection, |
| 527 | proj4 |
| 528 | }); |
| 529 | newCoordinate[0] = 180; |
| 530 | return newCoordinate; |
| 531 | } |
| 532 | return transformCoodinates({ |
| 533 | coordinates, |
| 534 | sourceProjection: fromProjection, |
| 535 | destProjection: toProjection, |
| 536 | proj4 |
| 537 | }); |
| 538 | } |
| 539 | |
| 540 | /** |
| 541 | * 坐标转换坐标---点线面,多点,多线,多面 |
no test coverage detected