ThinkGeo.com    |     Documentation    |     Premium Support

Extract pixel values out of a FdoRasterSource

We have planned to use FdoRasterLayer for raster elevation data. Further to showing raster data at the map control we are also interested in the pixel values.


Do you have any ideas of how to extract pixel values out of a FdoRasterSource ?

I imagine a function something like  GetPixelBlock( rectangle )


Regards

Niels



Niels,


 


Thanks for your post and questions.


 


I am sorry to say that we do not have a API like that to extract a pixel value, currently we are wrapping open source fdo library to get image back from fdo source. I do not think the FDO library expose this kind of functionality.


fdo.osgeo.org/history.html


 


Any more questions or ideas please feel free to let me know.


 


Thanks.


 


Yale


 



Hello, 
 I was given a csv file with three columns of “longitude”, “latitude”, and “temperature”. The points are in a grid. I want to make a raster dataset showing the temperature from this csv file. 
  
 1) I want to create a raster dataset, and put value into each pixel. Can MapSuite do this? Any format of raster dataset which MapSuite supports will do. Not only fdo library but also any other library will do. (Yale says above that a pixel value cannot be extracted. I want to ask if a pixel value can be put.) 
  
 2) If the answer to the question 1 is no, is there other methods to create raster dataset? 
  
 Regards, 
 Noboru 


Hi Noboru,


Thanks for your question!


We have a GRID Format that might might your needs. Please check this sample from our Wiki: wiki.thinkgeo.com/wiki/Map_S...ate_GRID_2



Hi Ryan, 
 Thank you very much. 
  
 But I do not want to use interpolation. 
 Value of each of the pixel is given with the coordinates of the centre of the pixel by the csv file. 
 I want to use this value as the pixel value without any change. 
 If the csv file does not have coordinates of a certain pixel within the extent, I want to put NoDataValue (-9999). 
  
 I may be able to get the same result with Inverse Distance Weighting if I set the search radius to a length shorter than the cell size. 
 But this does not look nice. Are there any other methods? 
 If there are not, I have to use Inverse Distance Weighting. 
  
 Regards, 
 Noboru 


Hi Noboru, 
  
 This is a bit outside of the Scope of MapSuite, but why not just create a new System.Drawing.Bitmap object and populate the pixels with the SetPixel() method? 
  
 You could then use Map Suite to display your bitmap using a GdiPlusRasterLayer??