[Gdal-dev] c# corner coordinates in latitude / longitude?
Chaitanya kumar CH
chaitanya.ch at gmail.com
Tue Sep 1 12:24:34 EDT 2009
Andrew,
Take a look at how it is done in gdalinfo here:
http://trac.osgeo.org/gdal/browser/trunk/gdal/apps/gdalinfo.c#L680
On Tue, Sep 1, 2009 at 8:19 PM, coastalrocket <andy at planetnomad.com> wrote:
>
> Hello all,
>
> I'm very much new to GDAL and have been for the last couple of days
> following the c# implementation examples. I have noticed that the corner
> coordinates output of gdalinfo for my image will contain the projected
> coordinate values followed by the unprojected latitude / longitude values.
> I
> have not been able to find a similar technique in the c# examples or
> through
> the class descriptions. I suppose I can take the projection information and
> turn to Proj4 to convert the projected coordinates but since gdalinfo in
> command line form is spitting out these values I thought they would be
> available through the c# gdal libraries. Is this the case or am i missing
> something?
>
> Many thanks,
> Andrew
>
> In the example GDALInfo.cs
>
> Console.WriteLine( "Corner Coordinates:" );
> Console.WriteLine(" Upper Left (" + GDALInfoGetPosition( ds,
> 0.0, 0.0) + ")");
> Console.WriteLine(" Lower Left (" + GDALInfoGetPosition( ds,
> 0.0, ds.RasterYSize) + ")");
> Console.WriteLine(" Upper Right (" + GDALInfoGetPosition( ds,
> ds.RasterXSize, 0.0) + ")");
> Console.WriteLine(" Lower Right (" + GDALInfoGetPosition( ds,
> ds.RasterXSize, ds.RasterYSize) + ")");
> Console.WriteLine(" Center (" + GDALInfoGetPosition( ds,
> ds.RasterXSize / 2, ds.RasterYSize / 2) + ")");
> Console.WriteLine("");
>
> and..
>
> private static string GDALInfoGetPosition(Dataset ds, double x, double y)
> {
> double[] adfGeoTransform = new double[6];
> double dfGeoX, dfGeoY;
> ds.GetGeoTransform(adfGeoTransform);
>
> dfGeoX = adfGeoTransform[0] + adfGeoTransform[1] * x +
> adfGeoTransform[2] * y;
> dfGeoY = adfGeoTransform[3] + adfGeoTransform[4] * x +
> adfGeoTransform[5] * y;
>
> return dfGeoX.ToString() + ", " + dfGeoY.ToString();
> }
>
> Example of gdalinfo..
>
> Corner Coordinates:
> Upper Left ( 228000.000, 22200.000) ( 2d 2'53.37"E, 0d12'2.77"N)
> Lower Left ( 228000.000, 22000.000) ( 2d 2'53.37"E, 0d11'56.26"N)
> Upper Right ( 228200.000, 22200.000) ( 2d 2'59.84"E, 0d12'2.77"N)
> Lower Right ( 228200.000, 22000.000) ( 2d 2'59.84"E, 0d11'56.26"N)
> Center ( 228100.000, 22100.000) ( 2d 2'56.61"E, 0d11'59.51"N)
>
> Apologies if this post appears twice. My first was rejected through me not
> subscribing before sending.
> --
> View this message in context:
> http://n2.nabble.com/c-corner-coordinates-in-latitude-longitude-tp3560997p3560997.html
> Sent from the GDAL - Dev mailing list archive at Nabble.com.
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>
Best regards,
--
Chaitanya kumar CH.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/gdal-dev/attachments/20090901/a3f6fb1a/attachment.html
More information about the gdal-dev
mailing list