Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import org.gvsig.app.ApplicationLocator;
- import org.gvsig.app.ApplicationManager;
- import org.gvsig.app.project.documents.view.ViewDocument;
- import org.gvsig.app.project.documents.view.ViewManager;
- import org.gvsig.fmap.dal.DALLocator;
- import org.gvsig.fmap.dal.DataManager;
- import org.gvsig.fmap.dal.DataParameters;
- import org.gvsig.fmap.dal.DataStore;
- import org.gvsig.fmap.mapcontext.MapContext;
- import org.gvsig.fmap.mapcontext.MapContextLocator;
- import org.gvsig.fmap.mapcontext.MapContextManager;
- import org.gvsig.fmap.mapcontext.layers.FLayer;
- def main() {
- ApplicationManager application = ApplicationLocator.getManager();
- File[] files = application.showOpenFileDialog(
- "Select a raster file",
- new File(System.getProperty("user.home"))
- );
- if( files == null || files.length<1 ) {
- application.messageDialog("Must select a raster file","Warning",0);
- return;
- }
- File rasterFile = files[0]
- ViewDocument view = (ViewDocument) application.getActiveDocument(
- ViewManager.TYPENAME
- );
- if( view == null ) {
- application.messageDialog("There must be an active view.","Warning",0);
- return;
- }
- MapContext mapContext = view.getMapContext();
- if (mapContext != null) {
- // Create the DataManager
- DataManager dataManager = DALLocator.getDataManager();
- // Create the store parameters that we need to load the raster from the DataManager
- DataParameters parameters = dataManager.createStoreParameters("Gdal Store");
- // Fill the parameters
- parameters.setDynValue("uri", rasterFile.toURI());
- // Open the store with the parameters from the DataManager
- DataStore store = dataManager.openStore("Gdal Store", parameters);
- // Make a layer name based on the raster file
- String layerName = store.getName();
- // Create the raster layer from the MapContextManageer
- MapContextManager mcm = MapContextLocator.getMapContextManager();
- FLayer rasterLayer = mcm.createLayer(layerName, store);
- // Add the raster layer to the MapContext of the view
- mapContext.getLayers().addLayer(rasterLayer);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement