7

Is there a way to clip/export selected vector layers (more than one) in a map to the extent of another raster/vector layer at a time?? in Arcgis or any other software.

I am using Arcgis10. I am having many vector layers as shown in figure. I want to clip for example "Australia" region of all vector layers. I can do it each and every layer separately. But I want to clip all layers/few layers in the map to Australia region at a time as a bundle. So-that I can avoid re-work of clipping each layer and save time.

enter image description here

0

3 Answers 3

10

I think Batch Processing is the simplest way to go.

  1. Locate the Clip tool in the ArcToolbox window (Analysis Tools toolbox, Extract toolset) where you can right-click on it and choose Batch. (Note: You could do this from the Search window at 10.1 but not 10.0.)
  2. Multiple select your layers and drag them in as Input Features
  3. Select the polygon layer you want to clip with and drag that into the top cell of the Clip Features, then right flick and choose Fill to copy to the rest of that column
  4. Hit the Environments button and set Current Workspace to the geodatabase or folder you want to output your feature classes into - this should populate the Output Feature Class with names based on each input feature class
  5. Hit OK to run
1
   import arcpy
        import string
        output=arcpy.GetParameterAsText(0)   #output gdb file path

        arcpy.env.overwriteOutput=True;

        mxd = arcpy.mapping.MapDocument("CURRENT")
        df = arcpy.mapping.ListDataFrames(mxd, "layers")[0]
        for lyr in arcpy.mapping.ListLayers(mxd, "", df):
            if lyr.visible == True:
                print lyr;
                #arcpy.AddMessage(lyr);
                desc = arcpy.Describe(lyr)

                path = desc.path
                layersource=str(path)+"\\"+desc.name
                layersource2=output+"\\"+desc.name
                #arcpy.AddMessage(layersource2);
                #arcpy.AddMessage(output)
                arcpy.env.overwriteOutput=True;
                #arcpy.CopyFeatures_management(lyr,output,)
                if (layersource2[:-4]=='.shp'):

                    arcpy.CopyFeatures_management(lyr,layersource2[:-4])
                else:
                    arcpy.CopyFeatures_management(lyr,layersource2)
                #arcpy.CreateFeatureclass_management()
        #mxd.save()
        #del mxd

This script can export current features in arcmap to a gdb file path you can use this to clip features at the same time.

0

If all your data is stored in one geodatabase it is possible to use the tool Copying a geodatabase using Extract Data Wizard in ArcMap here you can select which data layers you want to export.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.