Advertisement
Guest User

Untitled

a guest
Feb 21st, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1. import java.io.File;
  2.  
  3. import org.gvsig.app.ApplicationLocator;
  4. import org.gvsig.app.ApplicationManager;
  5. import org.gvsig.app.project.documents.view.ViewDocument;
  6. import org.gvsig.app.project.documents.view.ViewManager;
  7. import org.gvsig.fmap.dal.DALLocator;
  8. import org.gvsig.fmap.dal.DataManager;
  9. import org.gvsig.fmap.dal.DataParameters;
  10. import org.gvsig.fmap.dal.DataStore;
  11. import org.gvsig.fmap.mapcontext.MapContext;
  12. import org.gvsig.fmap.mapcontext.MapContextLocator;
  13. import org.gvsig.fmap.mapcontext.MapContextManager;
  14. import org.gvsig.fmap.mapcontext.layers.FLayer;
  15.  
  16. def main() {
  17.  
  18. ApplicationManager application = ApplicationLocator.getManager();
  19.  
  20. File[] files = application.showOpenFileDialog(
  21. "Select a raster file",
  22. new File(System.getProperty("user.home"))
  23. );
  24. if( files == null || files.length<1 ) {
  25. application.messageDialog("Must select a raster file","Warning",0);
  26. return;
  27. }
  28. File rasterFile = files[0]
  29.  
  30. ViewDocument view = (ViewDocument) application.getActiveDocument(
  31. ViewManager.TYPENAME
  32. );
  33. if( view == null ) {
  34. application.messageDialog("There must be an active view.","Warning",0);
  35. return;
  36. }
  37. MapContext mapContext = view.getMapContext();
  38. if (mapContext != null) {
  39. // Create the DataManager
  40. DataManager dataManager = DALLocator.getDataManager();
  41. // Create the store parameters that we need to load the raster from the DataManager
  42. DataParameters parameters = dataManager.createStoreParameters("Gdal Store");
  43. // Fill the parameters
  44. parameters.setDynValue("uri", rasterFile.toURI());
  45. // Open the store with the parameters from the DataManager
  46. DataStore store = dataManager.openStore("Gdal Store", parameters);
  47.  
  48. // Make a layer name based on the raster file
  49. String layerName = store.getName();
  50.  
  51. // Create the raster layer from the MapContextManageer
  52. MapContextManager mcm = MapContextLocator.getMapContextManager();
  53. FLayer rasterLayer = mcm.createLayer(layerName, store);
  54.  
  55. // Add the raster layer to the MapContext of the view
  56. mapContext.getLayers().addLayer(rasterLayer);
  57. }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement