Skip To Content

esri_attributes_set (AutoLISP)

此函数用于在要素图层的实体上添加或修改要素属性。 如果实体上存在该字段,且指定的字段类型与提供的值相匹配,则将覆盖现有值。

注:

某些字段可能为只读。 有关详细信息,请参阅字段属性主题。

语法

(esri_attributes_set ename flname settings_list)

参数

  • ename | 字符串 | 必填 | 要素的 AutoCAD 实体名称。
  • flname | 字符串 | 必填 | 工程图中的现有要素图层名称。
  • settings_list | 关联列表 | 必填 | 点对形式的字段名称和值的关联列表。

    相关标注值类型值描述必填/可选
    "<field name>"

    变量

    字段的名称和值。

    注:

    在使用具有编码属性域值的字段时,请使用字段描述值,而非代码。

    必填

    ...

    ...

    ...

    可选

示例用法

设置上次创建的 Centerlines 要素实体的 StreetNamePavementRating 属性值。

(esri_attributes_set 
   (entlast) 
   "Centerlines"
   (list 
     (cons "StreetName" "Main") 
     (cons "PAVEMENT"  2) 
     (cons "Rating" 0.852)
  ))

结果示例用法

设置上次创建的 Centerlines 要素实体的 StreetNamePavementRating 属性值,并返回一个 true 列表。

(T)

返回值

以下是可能的返回值:

  • 如果成功,则该函数将返回一个 true 列表:(T)
  • 如果失败,则该函数将返回一个列表,其中第一个值为 nil,然后是一个包含键值 "Error" 的关联列表以及字符串形式的关联错误消息:(nil ( "Error" . "<message>"))

失败的返回值

出于以下任一原因,可能出现失败的返回值:

  • (nil ("Error" . "Missing required argument."))

    未提供其中一个必填参数。

  • (nil ("Error" . "No valid fields specified."))

    指定的字段不是指定要素图层的有效字段。

  • (nil ("Error" . "Feature layer not found."))

    指定的要素图层值不是工程图中的有效要素图层。

  • (nil ("Error" . "Invalid value for attribute."))

    输入的值或者其格式对于指定字段类型无效。