BLOG
|
Calculating the slope of a line across a surface is simple using the Add Surface Information tool in ArcGIS Pro. This tool overlaps the line feature with a surface, such as a LAS or raster dataset, to extract the elevation values and calculate the slope value. But what do you do when you don't have a surface layer for the calculation? How to calculate slope Let’s first break down the slope calculation to understand your specific data needs better. The slope is calculated by dividing the elevation change by the horizontal distance covered. This is sometimes called “rise over run.” The output value of this calculation can be multiplied by 100 to get a percentage value. When a surface layer is unavailable to calculate elevation values, you must use either attribute values or Z-values from the line feature. The elevation change can be calculated by subtracting the starting elevation from the ending elevation, and the distance value can be accessed from the shape length. Once you have determined your available values, you can use Arcade to calculate the slope value. Use case for calculating slope using z-values Imagine you are using a mobile device to perform landscape surveying. One of the data points that you collect is property drainage. This is done by collecting two points to form a drainage line. Usually, the data is collected and then accessed by an editor who calculates the slope of the line manually and inputs it to an attribute field. After learning a little about ArcGIS Arcade, you find that you can use an attribute rule and Arcade to calculate the slope during data collection. Calculation rules can execute the slope expression immediately after collecting the feature. This is calculated based on the line's start and end vertex z-values. The return value is then written to the slope field in the attribute table. Here is an example of an expression that uses z-values to calculate slope: // If the geometry is empty or has a length of zero, return the original slope value.
if (IsEmpty(Geometry($feature)) || Length(Geometry($feature)) == 0)
{
return $feature.SLOPE;
}
// Get the line path.
var paths = Geometry($feature)['paths'];
// Get the first and last vertex, and select the lowest of the two.
var down_elevation = min(paths[0][0]['z'], paths[-1][-1]['z'])
// Get the first and last vertex, and select the highest of the two.
var up_elevation = max(paths[0][0]['z'], paths[-1][-1]['z'])
// Calculate slope using the three variables.
return ABS((up_elevation - down_elevation)/Length(Geometry($feature))) Note: When using this expression, update the fields to match your data. Use case for calculating slope using fields Imagine you have received a pipeline feature class and have been asked to add a new field and calculate the slope for each feature. The line features are not z-enabled and do not have elevation values for each vertex. After reviewing the attribute table, you find two fields containing elevation values for each pipeline's start and end. You decide to calculate the slope field using an Arcade expression. The expression uses the values from the UPELEV and DOWNELEV attribute fields to calculate the elevation change of the line. The distance of each pipeline is calculated using a geometry function. These three values are the inputs to the slope calculation and the return value is calculated to the SLOPE field. Here is an example of an expression that used field values to calculate slope: // If either field not populated, return the original slope value.
if (IsEmpty($feature.UPELEV) || IsEmpty($feature.DOWNELEV))
{
return $feature.SLOPE;
}
// If the geometry is empty or has a length of zero, return the original slope value.
if (IsEmpty(Geometry($feature)) || Length(Geometry($feature)) == 0)
{
return $feature.SLOPE;
}
// Calculate slope using the two fields and geometry function.
return ABS(($feature.UPELEV - $feature.DOWNELEV)/Length(Geometry($feature))); Note: When using this expression, update the fields to match your data. ArcGIS Arcade is an expression language used to format and manipulate data in ArcGIS. These use cases for calculating slope in an attribute rule and field calculation are just two Arcade examples. These expressions can be used in other applications to return slope values, such as labeling, pop-ups, and forms. You can reuse and modify these sample expressions to meet the needs of your specific project. For further training on the Arcade expression language, check out Esri's Get Started with ArcGIS Arcade: https://go.esri.com/arcade-course
... View more
03-12-2024
05:53 AM
|
3
|
0
|
2491
|
POST
|
You need to first georeference the CAD file. Then you can convert the layers into a geodatabase feature class. Georeferencing CAD data—ArcGIS Pro | Documentation CAD data in ArcGIS Pro—ArcGIS Pro | Documentation
... View more
07-27-2020
11:50 AM
|
1
|
0
|
1006
|
POST
|
Python: Scripting for ArcGIS by Paul Zandbergen is a great book. They just released a new version for ArcGIS Pro.
... View more
07-15-2020
02:00 PM
|
0
|
0
|
827
|
POST
|
You should be able to request a free trial from the product page: ArcGIS Data Interoperability | Easily Work with Different Data Formats
... View more
07-15-2020
01:47 PM
|
0
|
0
|
2204
|
POST
|
Here are a couple of training courses that we offer. Modeling a City Using Esri CityEngine Designing and Sharing 3D Cities Using Esri CityEngine Also, check out the CityEngine TV YouTube channel.
... View more
07-15-2020
01:43 PM
|
1
|
0
|
1842
|
POST
|
Although a few years old, Richard Fairhurst has a thorough blog post on this topic. /blogs/richard_fairhurst/2014/08/29/assigning-address-ranges-based-on-existing-address-points
... View more
06-08-2020
05:02 AM
|
1
|
0
|
1686
|
POST
|
Ted Hallum I believe you are right on target with your ideal certification combination. With your current GIS experience, the ArcGIS Desktop Associate is a good exam to start with as it is geared towards those that have 2+ years of experience. The ArcGIS API for Python fits well as that technology provides access to so many data science modules. Focus first on the ArcGIS Desktop Associate exam. It covers a lot of areas that you may not have experienced yet. Areas that could be covered are data management, spatial analysis, Python, 3D, map layouts, Pro tasks, raster analysis, etc. Check out the Esri Training learning plan for this exam and the study guide.
... View more
05-08-2020
06:38 AM
|
1
|
1
|
1467
|
POST
|
William Cole You can ask them here. Just provide us the location of the tutorials you are working on so we can follow along with your questions.
... View more
05-08-2020
06:17 AM
|
0
|
0
|
1324
|
POST
|
Check out this KB article - https://support.esri.com/en/technical-article/000007637
... View more
10-07-2019
09:27 AM
|
1
|
0
|
908
|
BLOG
|
Density analysis calculates the number of events or objects across an area. The calculation results reveal where the highest concentration of points is within that area. Did you know that you can also analyze points that represent a value greater than 1? Just because there may be a cluster of points does not necessarily mean that a certain area has the highest concentration. All you need is an attribute with the quantities. The following example shows you how density analysis is performed using attributes with the Point Density tool in ArcGIS Pro 2.2. This map shows the address locations of reported crimes. Each point may represent more than one report. The number of reports is stored in the Reports field in the attribute table. On the Analysis tab, click Tools. In the search box, type Point Density. On the Analysis tab, click Tools. Select your input points. For Population field, select the attribute with the quantity value. Your Point Density geoprocessing pane should look something like this: Set your output raster. The output density raster shows the areas with the highest density based upon the number of reports at each address location. When you compare running the Point Density tool without a population field versus with a population field, you can see the difference in the results. Point density without population Point density with population By adding in the population field, a high-density area becomes more apparent in the northern area of the map. Upon further investigation, that particular area contains a mall, shopping center, and movie theatre—which probably contributes to the higher number of crime reports. Spatial analysis provides the tools you need to make informed decisions. Learning how to use the available tools will help you choose the specific analysis tool that will best meet your particular needs. Are you new to spatial analysis? I suggest that you take a look at the Getting Started with Spatial Analysis web course. This course builds a foundation of knowledge on the six categories of spatial analysis and how they are used in the spatial analysis workflow. Additional information on density analysis can be found in the Calculating Density Using ArcGIS web course. *Note: The data used in this example is fictitious and does not represent real crime data.
... View more
01-16-2019
12:27 PM
|
0
|
0
|
2730
|
BLOG
|
Every industry has its own unique GIS workflows. Some of these are as simple as running a tool or two. Others are more complex, involving multiple tools and processes. For each workflow, someone has to spend time working through each step of the process, then repeat the process again (and again) when new projects crop up or data is provided. These manual, repetitive workflows not only cost time, they can also be prone to error. If a step is missed or an error is introduced within any one of the steps, the results can be problematic, to say the least. What if there was a way to repeat your workflow without having to touch every single task? What if you could find a way to save time? You can! Python provides a solution to these issues. Python scripts can help you: Streamline your GIS work. Easily repeat processes on different datasets. Save time by automating a series of complicated steps. But where do you begin? Exactly what tasks can you perform using Python? How can you improve the performance of your current Python scripts? For example, suppose you want a Python script that takes a table of customer locations and creates an outer polygon boundary of those locations. You have been manually drawing a polygon around an XY event layer of the locations each time they are updated, but the process takes a lot of time and is not entirely accurate. You can use Python lists and ArcPy geometry objects to complete this workflow efficiently and accurately. The Python script can be broken down into basic tasks: Define input and output variables. Create a Python list from the table of XY coordinates. Create a multipoint geometry object from the Python list. Use the convexHull() geometry method to create the boundary. Save geometry object of the boundary to a feature class. You can run this script as often as you need by simply modifying the variables. You can also create a Python script tool from it. Would you like to learn how to script your GIS tasks and workflows? Creating Python Scripts for ArcGIS is an Esri course that takes you from minimal Python knowledge to creating Python scripts that automate a complete workflow. You’ll learn practical Python skills such as how to access and run geoprocessing tools, automate tasks with lists, work directly with GIS data, create Python script tools, and more. If you want to simplify your GIS workflows and get more work done in less time, take a look at the upcoming class schedule.
... View more
06-13-2018
11:33 AM
|
5
|
0
|
4852
|
POST
|
Hi Penny Sawyer, I took a look at the issue described, and I was not able to reproduce it on my ArcGIS Pro 2.1 system. If you are still seeing the same problems, then you might try using the results data provided in the exercise file to make sure it is not a data issue. ..\EsriTraining\ProStart\Results\ProStart_3A_Results.ppkx If that does not work, then I suggest following the steps in the above post to have one of our Esri staff assist you.
... View more
06-13-2018
11:23 AM
|
0
|
0
|
580
|
POST
|
Thanks to bharold-esristaff for an additional tip! I can use the Table Data Type and it will let me browse down to the sheet. I just have to trade the ability to filter the input to Excel files.
... View more
03-29-2018
04:44 PM
|
1
|
0
|
3324
|
POST
|
I am looking for a way to select a sheet within an Excel file as input to a Python Script tool in ArcGIS Pro. In the script, I am using GetParameterAsText. For the tool parameters I am using the File Data Type with the "xls;xlsx" extensions in the File Filter. The input goes into the GetCount_management tool and then does a few other processes. The process fails with the first tool and gives the following error: ERROR 000840: The value is not a Table View. When you open the Make Table View geoprocessing tool and browse to the Input Table, it allows you to access the sheets. I am looking for this same functionality within a script tool. Thanks!
... View more
03-29-2018
07:52 AM
|
0
|
4
|
4654
|
POST
|
You would need to edit the Feature Access properties within the Service Editor. There is an Extract operation that you can disable. Editor permissions for feature services—Documentation | ArcGIS Enterprise
... View more
08-29-2017
01:17 PM
|
2
|
1
|
1313
|
Title | Kudos | Posted |
---|---|---|
1 | 02-27-2015 01:30 PM | |
3 | 03-12-2024 05:53 AM | |
1 | 05-02-2011 08:14 AM | |
1 | 08-28-2015 12:19 PM | |
1 | 04-13-2011 05:06 AM |
Online Status |
Offline
|
Date Last Visited |
Wednesday
|