Revision: 6478
http://sourceforge.net/p/jump-pilot/code/6478
Author: michaudm
Date: 2020-09-14 21:13:44 +0000 (Mon, 14 Sep 2020)
Log Message:
-----------
fix #503 : 0.5 pixel shift on raster display
Modified Paths:
--------------
core/trunk/ChangeLog
core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoReferencedRaster.java
Modified: core/trunk/ChangeLog
===================================================================
--- core/trunk/ChangeLog 2020-09-14 11:49:35 UTC (rev 6477)
+++ core/trunk/ChangeLog 2020-09-14 21:13:44 UTC (rev 6478)
@@ -4,6 +4,9 @@
# 3. be concise but convey the change in a way that ordinary users understand
#<-------------------------------- 80 chars
---------------------------------->#
+2020-09-14 mmichaud <[email protected]>
+ * fix #503 : 0.5 pixel shift on raster display
+
2020-09-12 mmichaud <[email protected]>
* Add an interiorBorder option to BasicStyle
Modified:
core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoReferencedRaster.java
===================================================================
---
core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoReferencedRaster.java
2020-09-14 11:49:35 UTC (rev 6477)
+++
core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoReferencedRaster.java
2020-09-14 21:13:44 UTC (rev 6478)
@@ -348,8 +348,8 @@
}
private void setEnvelope(double[] tags) {
- setCoorRasterTiff_tiepointLT(new Coordinate(-0.5, -0.5));
- setCoorModel_tiepointLT(new Coordinate(0, 0));
+ //setCoorRasterTiff_tiepointLT(new Coordinate(-0.5, -0.5));
+ //setCoorModel_tiepointLT(new Coordinate(0, 0));
AffineTransform transform = new AffineTransform(tags);
double scaleX = Math.abs(transform.getScaleX());
@@ -370,9 +370,18 @@
}
void setEnvelope() {
- Coordinate coorRaster_imageLB = new Coordinate(coorRasterTiff_tiepointLT.x,
- src.getHeight(), 0);
- Coordinate coorRaster_imageRT = new Coordinate(src.getWidth(), 0, 0);
+ // Get the image coordinate of the bottom left corner of the bottom left
pixel
+ // from the image coordinate of the center of the bottom left pixel
+ Coordinate coorRaster_imageLB = new Coordinate(
+ coorRasterTiff_tiepointLT.x-0.5,
+ src.getHeight()-0.5);
+ // Get the image coordinate of the top right corner of the top right pixel
+ // from the image coordinate of the center of the top right pixel
+ Coordinate coorRaster_imageRT = new Coordinate(
+ src.getWidth()-0.5,
+ -0.5);
+ // Transform the bottom left and the top right corner to model coordinate
+ // to get the envelope of the image
Coordinate coorModel_imageLB = rasterToModelSpace(coorRaster_imageLB);
Coordinate coorModel_imageRT = rasterToModelSpace(coorRaster_imageRT);
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel