3/23/2023 0 Comments Python model builderFor example, if you have an input value with a decimal (field value of the input table in this case) and want to use the value in the output name of another tool through inline variable substitution, the decimal can be replaced using the Python method replace in the Calculate Value tool expression. Python methods can be used directly in the Expression parameter of the tool. The code block checks whether the Input Cell Size variable is empty and returns a value based on the condition. You can pass the variable through the Expression parameter and use if-else logic with inline variables in the code block as shown below. Values are returned from a function using the return keyword. In this case, the function is getWind and has one parameter, wind. In Python, functions are defined using the def keyword followed by the name of the function and the function's input parameters. In the example below, the function returns a wind direction string based on a random input value. Variables defined in the Code Block parameter can be referenced from the expression.įunctions can be defined in the Code Block parameter and called from the expression. The Code Block parameter cannot be used on its own it must be used in conjunction with the Expression parameter. More complicated expressions, such as multiline calculations or logical operations (if, then), require the use of the Code Block parameter. Generally, you will type the expressions in the Expression parameter. The expression arcgis.rand must be entered in lowercase characters. Calculate a random value derived from a normal distribution with a mean of 10 and standard deviation of 3: arcgis.rand("Normal 10 3").Calculate a random value derived from a uniform distribution of integers between 0 and 10: arcgis.rand("Integer 0 10").Examples of using the arcgis.rand() are as follows: The arcgis.rand() function has been created for ArcGIS tools and should not be confused with the Python Rand() function. The following are examples:Ĭonstants are also supported through the math module. The math module is accessed by preceding the desired function with math. The Calculate Value tool allows the use of the Python math module to perform more complex mathematical operations. The Calculate Value tool can evaluate simple mathematical expressions. In-line variables of type numbers (double, long) do not require quotes ( %double%).Įxpressions can be created in Python only other scripting languages are not supported. Inline variables of type string should be enclosed in quotes ( "%string variable%") in an expression. The illustration below shows another example of using variables in the expression. To get decimal places, add decimals to the values in the expression. Note: in the previous expression, if Input = 123, the expression will return 1. For example, if you want to divide a variable named Input by 100, your expression would be %Input%/100. To use them in the expression, enclose the variable name in percent signs ( %). Variables created in ModelBuilder can be used by this tool, but variables desired for use in the expression parameter cannot be connected to the Calculate Value tool. For example, if you use the Calculate Value tool to calculate a distance for use as input to the Buffer Distance parameter of the Buffer tool, specify Linear Unit for the Data Type parameter. The Data Type parameter is used in ModelBuilder to help chain the output of the Calculate Value tool with other tools. This tool is intended for use in ModelBuilder and not in Python scripting. Returns a value based on a specified Python expression.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |