Краткая информация
Настраивает свойство заданного параметра по индексу или имени параметра с помощью значения строки. Эта функция используется при передаче значений из скрипта в инструмент скрипта. Если необходима передача объекта, например, SpatialReference, используйте функцию SetParameter.
Синтаксис
SetParameterAsText (index, text)
Параметр | Описание | Тип данных |
index | The specified parameter's index position or parameter name. | Integer |
text | The string value that will set the specified parameter's property. | String |
Пример кода
Передать строку в указанный параметр инструмента по индексу.
import arcpy
# Get the feature class from the tool.
fc = arcpy.GetParameterAsText(0)
# Determine the shape type of the feature class.
describe = arcpy.Describe(fc)
# Set tool output parameters based on shape type.
if describe.shapeType == "Polygon":
arcpy.AddMessage("Feature Type is polygon")
arcpy.SetParameterAsText(1, "true") # Is polygon
arcpy.SetParameterAsText(2, "false") # Is not line
arcpy.SetParameterAsText(3, "false") # Is not point
elif describe.shapeType == "Polyline":
arcpy.AddMessage("Feature Type is polyline")
arcpy.SetParameterAsText(1, "false") # Is not polygon
arcpy.SetParameterAsText(2, "true") # Is line
arcpy.SetParameterAsText(3, "false") # Is not point
elif describe.shapeType == "Point":
arcpy.AddMessage("Feature Type is point")
arcpy.SetParameterAsText(1, "false") # Is not polygon
arcpy.SetParameterAsText(2, "false") # Is not line
arcpy.SetParameterAsText(3, "true") # Is point
else:
arcpy.AddMessage("Unknown feature type")
arcpy.SetParameterAsText(1, "false") # Is not polygon
arcpy.SetParameterAsText(2, "false") # Is not line
arcpy.SetParameterAsText(3, "false") # Is not point
Передать строку в указанный параметр инструмента по имени параметра.
У инструмента четыре параметра, один входной и три выходных. Имена этих параметров следующие: in_features, is_polygon, is_line и is_point.
import arcpy
# Get the feature class from the tool.
fc = arcpy.GetParameterAsText("in_features")
# Determine the shape type of the feature class.
describe = arcpy.Describe(fc)
# Set tool output parameters based on shape type.
if describe.shapeType == "Polygon":
arcpy.AddMessage("Feature Type is polygon")
arcpy.SetParameterAsText("is_polygon", "true")
arcpy.SetParameterAsText("is_line", "false")
arcpy.SetParameterAsText("is_point", "false")
elif describe.shapeType == "Polyline":
arcpy.AddMessage("Feature Type is polyline")
arcpy.SetParameterAsText("is_polygon", "false")
arcpy.SetParameterAsText("is_line", "true")
arcpy.SetParameterAsText("is_point", "false")
elif describe.shapeType == "Point":
arcpy.AddMessage("Feature Type is point")
arcpy.SetParameterAsText("is_polygon", "false")
arcpy.SetParameterAsText("is_line", "false")
arcpy.SetParameterAsText("is_point", "true")
else:
arcpy.AddMessage("Unknown feature type")
arcpy.SetParameterAsText("is_polygon", "false")
arcpy.SetParameterAsText("is_line", "false")
arcpy.SetParameterAsText("is_point", "false")