| | 488 | |
|---|
| | 489 | // Modified by Thomas RAFFIN (SIRAP) |
|---|
| | 490 | // If the rectangle is not in the same proportions as the map, |
|---|
| | 491 | // To leave the coeff Y / X unghanged, we need to made $geoNewCoeff = $geo0Coeff... |
|---|
| | 492 | $geo0Coeff = $this->mapheight / $this->mapwidth; |
|---|
| | 493 | $geoNewDeltaX = $pix_maxx - $pix_minx; |
|---|
| | 494 | $geoNewDeltaY = $pix_maxy - $pix_miny; |
|---|
| | 495 | $geoNewCoeff = $geoNewDeltaY / $geoNewDeltaX; |
|---|
| | 496 | if ($geoNewCoeff < $geo0Coeff) { |
|---|
| | 497 | $newDeltaYCorrected = $geo0Coeff * $geoNewDeltaX; |
|---|
| | 498 | $newDeltaYToAdd = ($newDeltaYCorrected - $geoNewDeltaY) / 2; |
|---|
| | 499 | $pix_miny -= $newDeltaYToAdd; |
|---|
| | 500 | $pix_maxy += $newDeltaYToAdd; |
|---|
| | 501 | } else { |
|---|
| | 502 | $newDeltaXCorrected = $geoNewDeltaY / $geo0Coeff; |
|---|
| | 503 | $newDeltaXToAdd = ($newDeltaXCorrected - $geoNewDeltaX) / 2; |
|---|
| | 504 | $pix_minx -= $newDeltaXToAdd; |
|---|
| | 505 | $pix_maxx += $newDeltaXToAdd; |
|---|
| | 506 | } |
|---|
| | 507 | |
|---|