WEBVTT 1 00:00:00.960 --> 00:00:02.010 This module is all about 2 00:00:02.010 --> 00:00:04.620 gearing up your geoprocessing skillset, 3 00:00:04.620 --> 00:00:06.180 building and demonstrating comprehension 4 00:00:06.180 --> 00:00:08.010 of geoprocessing tools, 5 00:00:08.010 --> 00:00:09.420 interpreting error messages, 6 00:00:09.420 --> 00:00:12.540 and where to find guidance for tool use and troubleshooting. 7 00:00:12.540 --> 00:00:14.130 This module is not a call to memorize 8 00:00:14.130 --> 00:00:17.310 entire geoprocessing toolboxes and tool sets. 9 00:00:17.310 --> 00:00:18.390 No need to commit to memory 10 00:00:18.390 --> 00:00:19.860 the optional and required parameters 11 00:00:19.860 --> 00:00:21.750 of any geoprocessing effort. 12 00:00:21.750 --> 00:00:23.850 Rather, your time is better spent reviewing 13 00:00:23.850 --> 00:00:25.560 the thematic groupings of various raster 14 00:00:25.560 --> 00:00:27.270 and vector analysis tool sets 15 00:00:27.270 --> 00:00:30.663 to understand, at least conceptually, what's possible. 16 00:00:31.560 --> 00:00:34.740 See a tool set or a specific tool that piques your interest? 17 00:00:34.740 --> 00:00:35.970 Dive in. 18 00:00:35.970 --> 00:00:37.860 Find some data to plug into the algorithm, 19 00:00:37.860 --> 00:00:40.950 experiment with alternative parameter configurations, 20 00:00:40.950 --> 00:00:43.860 take notes, and compare the results. 21 00:00:43.860 --> 00:00:46.590 Pre-formatted lessons can only take you so far, 22 00:00:46.590 --> 00:00:48.360 practicing with the good, the bad, and the ugly 23 00:00:48.360 --> 00:00:50.490 of publicly available data is the best way 24 00:00:50.490 --> 00:00:53.970 to experience the highs and lows of a geoprocessing addict. 25 00:00:53.970 --> 00:00:56.610 More importantly, you develop confidence 26 00:00:56.610 --> 00:00:58.170 to find a bioprocessing solution 27 00:00:58.170 --> 00:01:00.360 to a vexing problem in a data scarce region 28 00:01:00.360 --> 00:01:02.910 without instructions to guide your workflow, 29 00:01:02.910 --> 00:01:05.700 confidence to troubleshoot even the most dreaded of errors, 30 00:01:05.700 --> 00:01:08.673 in ArcGIS, that's the error code 999999, 31 00:01:10.057 --> 00:01:13.320 "Something unexpected caused the tool to fail," 32 00:01:13.320 --> 00:01:15.300 and the confidence to try new things, 33 00:01:15.300 --> 00:01:18.033 assess software, and data resources evolve. 34 00:01:20.640 --> 00:01:23.040 Let's look at the anatomy of a tool reference page 35 00:01:23.040 --> 00:01:26.040 while stepping through the contents of the intersect tool. 36 00:01:26.040 --> 00:01:28.740 I could have chosen any geoprocessing tool here, 37 00:01:28.740 --> 00:01:30.600 but thought it best to start with something 38 00:01:30.600 --> 00:01:32.400 we're all familiar with. 39 00:01:32.400 --> 00:01:34.200 Regardless of the geoprocessing tool, 40 00:01:34.200 --> 00:01:37.443 the technical documentation and help are organized the same. 41 00:01:38.520 --> 00:01:39.353 For those of you interested 42 00:01:39.353 --> 00:01:41.760 in advancing your Python programming skills, 43 00:01:41.760 --> 00:01:43.230 this is where you can find resources 44 00:01:43.230 --> 00:01:44.583 on that topic as well. 45 00:01:45.990 --> 00:01:47.190 You can see the eight categories 46 00:01:47.190 --> 00:01:50.160 of information included in each tool reference file, 47 00:01:50.160 --> 00:01:52.170 I've hopefully created a link document here 48 00:01:52.170 --> 00:01:54.540 that you might find helpful as a reference. 49 00:01:54.540 --> 00:01:56.340 Click any of the categories on this page 50 00:01:56.340 --> 00:01:59.700 to proceed directly to that section of the lecture slides. 51 00:01:59.700 --> 00:02:02.700 We'll proceed from left to right, starting with the summary. 52 00:02:05.190 --> 00:02:06.570 For most of the remaining slides, 53 00:02:06.570 --> 00:02:08.970 I present two columns of information. 54 00:02:08.970 --> 00:02:11.340 On the left slide is the general description 55 00:02:11.340 --> 00:02:13.320 of the resource topic provided in the anatomy 56 00:02:13.320 --> 00:02:14.730 of the tool reference page 57 00:02:14.730 --> 00:02:17.550 I provided a link to on the previous slide. 58 00:02:17.550 --> 00:02:19.500 On the right side, I share excerpts 59 00:02:19.500 --> 00:02:21.453 of the intersect tool documentation. 60 00:02:22.650 --> 00:02:24.750 The summary section provides a short description 61 00:02:24.750 --> 00:02:27.600 of the geoprocessing tool and links to additional, 62 00:02:27.600 --> 00:02:30.870 typically more detail or theory oriented depiction 63 00:02:30.870 --> 00:02:32.043 of the tool function. 64 00:02:33.030 --> 00:02:34.680 As we already know, the intersect tool 65 00:02:34.680 --> 00:02:38.220 computes the geometric intersection of the input features. 66 00:02:38.220 --> 00:02:40.560 You might also consider a pairwise intersect 67 00:02:40.560 --> 00:02:43.410 as an alternative and could, and probably should, 68 00:02:43.410 --> 00:02:46.440 learn more about how the intersect function works. 69 00:02:46.440 --> 00:02:48.060 This section is also where you can find 70 00:02:48.060 --> 00:02:50.070 a graphical depiction of the tool, 71 00:02:50.070 --> 00:02:51.480 including required inputs, 72 00:02:51.480 --> 00:02:53.643 and the output produced by the algorithm. 73 00:02:54.600 --> 00:02:57.270 The usage section provides notes and clarifications 74 00:02:57.270 --> 00:02:58.770 for tool use. 75 00:02:58.770 --> 00:03:01.830 One to note here, the parameter labels. 76 00:03:01.830 --> 00:03:05.460 For example, "Input Features" are referred to in the notes, 77 00:03:05.460 --> 00:03:07.110 but if you are interested in including the tool 78 00:03:07.110 --> 00:03:08.250 in a Python script, 79 00:03:08.250 --> 00:03:11.310 the proper syntax calls for the parameter name. 80 00:03:11.310 --> 00:03:14.070 The relationship between the two is usually obvious, 81 00:03:14.070 --> 00:03:15.840 but be sure to double check the usage notes 82 00:03:15.840 --> 00:03:17.850 if you're writing scripts. 83 00:03:17.850 --> 00:03:19.260 You can see from the tool interface 84 00:03:19.260 --> 00:03:21.150 which parameters are required, 85 00:03:21.150 --> 00:03:23.250 the ones next to a red asterisk. 86 00:03:23.250 --> 00:03:26.793 If you need more details on this, see the syntax section. 87 00:03:28.470 --> 00:03:31.050 Here are the intersect usage details. 88 00:03:31.050 --> 00:03:32.280 There's a lot we already know, 89 00:03:32.280 --> 00:03:35.730 and perhaps even a few things we know that we don't realize. 90 00:03:35.730 --> 00:03:38.640 We already know that points, lines, and polygons 91 00:03:38.640 --> 00:03:41.370 are acceptable input feature data types, 92 00:03:41.370 --> 00:03:42.930 but what happens when we mix and match 93 00:03:42.930 --> 00:03:45.180 the input feature geometries? 94 00:03:45.180 --> 00:03:46.680 The second bullet specifies 95 00:03:46.680 --> 00:03:48.510 that the output feature class will assume 96 00:03:48.510 --> 00:03:51.810 the lowest dimension geometry of the input features. 97 00:03:51.810 --> 00:03:54.180 You can even specify a lower dimension geometry 98 00:03:54.180 --> 00:03:58.170 than what would be output by default if you so choose. 99 00:03:58.170 --> 00:04:00.150 The details go on to describe tiling 100 00:04:00.150 --> 00:04:02.553 and parallel processing considerations. 101 00:04:04.290 --> 00:04:06.420 The syntax section lays out the format 102 00:04:06.420 --> 00:04:07.800 and set of parameters required 103 00:04:07.800 --> 00:04:10.410 to execute the tool in a Python environment. 104 00:04:10.410 --> 00:04:12.630 This section also includes a straightforward table, 105 00:04:12.630 --> 00:04:15.180 listing the parameters, their explanations, 106 00:04:15.180 --> 00:04:17.220 and the possible data types. 107 00:04:17.220 --> 00:04:19.560 If you're interested in learning more about Python, 108 00:04:19.560 --> 00:04:22.290 I suggest a quick review of the "Tool syntax decoded" link 109 00:04:22.290 --> 00:04:23.820 on this slide. 110 00:04:23.820 --> 00:04:26.621 On the right, we see that the "in_features" 111 00:04:26.621 --> 00:04:28.770 and "out_feature_class" are required parameters 112 00:04:28.770 --> 00:04:30.090 of the intersect tool, 113 00:04:30.090 --> 00:04:31.570 and that the "{join_attributes}," 114 00:04:31.570 --> 00:04:34.470 among others not shown due to space constraints, 115 00:04:34.470 --> 00:04:35.973 is an optional parameter. 116 00:04:37.560 --> 00:04:40.320 The code sample section provides just that, 117 00:04:40.320 --> 00:04:42.540 one or more examples illustrating tool use 118 00:04:42.540 --> 00:04:44.400 in a Python environment. 119 00:04:44.400 --> 00:04:47.910 Here we see two code samples, one for immediate mode 120 00:04:47.910 --> 00:04:50.040 that can be run directly from the Python window 121 00:04:50.040 --> 00:04:53.460 in ArcGIS Pro, and the other, a standalone script 122 00:04:53.460 --> 00:04:56.160 that can be executed from outside ArcGIS Pro 123 00:04:56.160 --> 00:04:58.860 using an integrated development environment like IDLE. 124 00:05:00.930 --> 00:05:02.580 The environments section provides links 125 00:05:02.580 --> 00:05:05.700 to all the environment settings honored by the tool. 126 00:05:05.700 --> 00:05:07.680 We looked at environment settings in the context 127 00:05:07.680 --> 00:05:09.780 of raster geoprocessing during the introduction 128 00:05:09.780 --> 00:05:11.670 to GIS class. 129 00:05:11.670 --> 00:05:13.440 They can also be applied to vector data 130 00:05:13.440 --> 00:05:15.513 and geoprocessing operations. 131 00:05:17.520 --> 00:05:19.170 The licensing information section 132 00:05:19.170 --> 00:05:21.090 identifies the license level necessary 133 00:05:21.090 --> 00:05:23.400 to access tool functionality. 134 00:05:23.400 --> 00:05:25.320 Here we see there is limited functionality 135 00:05:25.320 --> 00:05:27.030 for the basic and standard licenses 136 00:05:27.030 --> 00:05:28.680 for the intersect tool. 137 00:05:28.680 --> 00:05:29.940 You want the full meal deal? 138 00:05:29.940 --> 00:05:32.610 You need to step up to the advanced license. 139 00:05:32.610 --> 00:05:34.380 In this case, the license level limits 140 00:05:34.380 --> 00:05:37.350 the number of input feature classes that are allowed. 141 00:05:37.350 --> 00:05:39.090 Basic and standard can only intersect 142 00:05:39.090 --> 00:05:41.610 two feature classes at a time, 143 00:05:41.610 --> 00:05:43.440 advanced is less limited. 144 00:05:43.440 --> 00:05:46.203 You can find more details on this in the usage section. 145 00:05:48.390 --> 00:05:50.640 The tool syntax provides even more detail 146 00:05:50.640 --> 00:05:52.770 on developing Python scripts. 147 00:05:52.770 --> 00:05:53.790 Feel free to ignore this 148 00:05:53.790 --> 00:05:55.680 if you're not interested in writing code, 149 00:05:55.680 --> 00:05:59.310 and just to be clear, there's nothing wrong with that. 150 00:05:59.310 --> 00:06:01.200 For those of you interested in going down this path, 151 00:06:01.200 --> 00:06:03.420 this is a good stop for sussing out finer points 152 00:06:03.420 --> 00:06:06.753 of the tool parameters, requirements, and limitations. 153 00:06:07.650 --> 00:06:09.690 That's it for today's anatomy lesson. 154 00:06:09.690 --> 00:06:12.060 Please reference this slide deck for general guidance 155 00:06:12.060 --> 00:06:14.040 or dig into tool specific help 156 00:06:14.040 --> 00:06:16.410 as you're working your way through exercises. 157 00:06:16.410 --> 00:06:19.050 It can prove useful to read through a tool help document 158 00:06:19.050 --> 00:06:21.000 for a tool that you already understand, 159 00:06:21.000 --> 00:06:22.260 just to gauge the style 160 00:06:22.260 --> 00:06:24.720 and content of the technical writing. 161 00:06:24.720 --> 00:06:25.920 Learning something under pressure 162 00:06:25.920 --> 00:06:28.370 is not the best way to make a lasting impression. 163 00:06:29.220 --> 00:06:30.990 In the next lecture, we'll look at some vector 164 00:06:30.990 --> 00:06:33.060 and raster geoprocessing tools, 165 00:06:33.060 --> 00:06:35.490 dig into their associated guidance documents, 166 00:06:35.490 --> 00:06:37.320 and conduct experiments that are not likely 167 00:06:37.320 --> 00:06:39.240 to change the world, but will hopefully broaden 168 00:06:39.240 --> 00:06:40.953 your geoprocessing horizons.