'BATCH INTERSECTS ASCII GRIDS WITH ACTIVE POINT SHAPEFILE, ADDS VALUES TO AUTO-GENERATED FIELDS WITH THE SAME NAME AS THE ASCII GRID FILENAME 'LOADING SCRIPTS ' 1. Double-click on an empty area on the bar containing all buttons, The "Customize" dialog appears ' 2. In the "Type" pull-down, select "View" ' 3. In the "Category" pull-down, select "Buttons", The display right below the pull down changes to show an array of buttons ' 4. Slide the scrollbar (below the button display) to the right and select the last button by clicking on it, Now click on "New" ' 5. A new blank button appears. Double-click on the blank area to the right of the entry "Click" (just below the button display) ' 6. The "Script Manager" Dialog appears, Click on "New", Enter any name in the input box that appears (prefix it with "Z_" so that it goes in the last) ' 7. A new blank script document (With the name just specified) appears. Delete whatever is on it... ' 8. Either copy-paste this ENTIRE script on the document, or, click on the button with the open-folder icon (tooltip reads "Load text file") and navigate to this file ' 9. Either done, click on the button with the tick-mark icon ("compile"). If spatial analyst is not loaded, there will be some error message, Load it ' 10. After the script is compiled (the tick-mark buton should be grayed out), close the script window and return to the view ' 11. Click on the new button to run the script TheView=av.GetActiveDoc TheTheme=TheView.GetActiveThemes.Get(0) aPrj=TheView.GetProjection PtFtab=TheTheme.GetFtab ShapeFld=PtFtab.FindField("Shape") PtFtab.SetEditable(TRUE) Filelist=FileDialog.ReturnFiles({"*.asc"},{"ASCII files"},"Files to intersect",0) 'msgbox.info("CntGTheme Lists Made","Progress") NameList={} GridList={} for each f in Filelist g=Grid.MakeFromASCII(f,TRUE) n1=f.GetBaseName.AsString n=n1.Left(n1.count-4) GridList.Add(g) NameList.Add(n) end ctr=0 for each i in 1..GridList.Count ctr=(i-1) TheGrid=GridList.Get(ctr) TheName=NameList.Get(ctr) TheField=Field.Make(TheName,#FIELD_DECIMAL,12,6) PtFtab.AddFields({TheField}) for each rec in PtFtab pt=PtFtab.ReturnValue(ShapeFld, rec) v=TheGrid.CellValue(pt,aPrj) PtFtab.SetValue(TheField,rec,v) end end PtFtab.SetEditable(FALSE) msgbox.info("Process Complete", "Point-Grid Intersection")