esri_featurelayer_selectspecial 基于特殊条件返回指定要素图层的 AutoCAD 选择集。 此函数可用于在同步 Web 要素图层之前进行质量保证和合规性检查,或根据使用要素图层时的不同编辑和数据状态查找实体。
特殊搜索条件如下所示:
- FlaggedAsModified - 符合指定 Web 要素图层的要素条件并且其编辑状态标记为已修改的 AutoCAD 实体。
- FlaggedAsNew - 符合指定 Web 要素图层的要素条件并且其编辑状态标记为新要素的 AutoCAD 实体。
- IncorrectGeometry - 因所在 AutoCAD 图层而符合要素条件,但因几何类型有误而不被视为要素的 AutoCAD 实体。 在 ArcGIS 点要素 AutoCAD 图层上绘制的折线是其中一个示例。
- OutsideProjectArea - 符合指定要素图层的要素条件且超出当前工程区域边界的 AutoCAD 实体。
- ProxyObjectPresent - 用于表示自定义对象几何的 AutoCAD 代理实体,例如 AutoCAD Civil 3D 外部的 COGO 点,或用于不存在对象启动程序的情况。
- UnclosedPolylines - 符合面要素条件但是折线闭合标记未在实体上设置的 AutoCAD 折线实体。
语法
(esri_featurelayer_selectspecial flname select_settings)
参数
- flname | 字符串 | 必填 | - 工程图中现有 Web 要素图层或文档要素图层名称
- select_settings | 关联列表 | 必填 | - 选择设置的关联列表
相关标注 | 值类型 | 值描述 | 必填或可选 |
---|---|---|---|
"CRITERIA" | string | 搜索条件:"UnclosedPolyline"、"IncorrectGeometry", "ProxyObjectPresent" 仅 web 要素图层选项:"FlaggedAsModified"、"FlaggedAsNew"、 "OutsideProjectArea" | 必填 |
"SUBTYPE" | string | 字符串形式的子类型名。 可以使用空字符串 "" 以包含所有子类型。 | 可选 |
示例用法 1
创建属于 shelters 要素图层的所有实体的选择集,这些实体位于当前工程图的工程区域之外:
(esri_featurelayer_selectspecial "shelters"
(list (cons "CRITERIA" "OutsideProjectArea"))
)
结果示例用法 1
属于 shelters 要素图层的所有实体的选择集,这些实体位于当前工程图的工程区域之外:
<Selection set: 9f>
示例用法 2
创建属于 Roads Web 要素图层 Public 子类型的所有实体的选择集,ArcGIS for AutoCAD 将这些实体视为在当前工程图内进行同步之前已被修改:
(esri_featurelayer_selectspecial "Roads"
(list (cons "CRITERIA" "FlaggedAsModified")(cons "Subtype" "Public"))
)
结果示例用法 2
返回属于 Roads Web 要素图层 Public 子类型的所有实体的选择集,ArcGIS for AutoCAD 将这些实体视为在当前工程图内进行同步之前已被修改:
<Selection set: d0>
返回值
以下是可能的返回值:
- 如果成功,则返回 AutoCAD 选择集对象。
- 如果失败,则该函数将返回一个列表,其中第一个值为 nil,然后是一个包含键值 "Error" 的关联列表以及字符串形式的关联错误消息:(nil ("Error" . "<message>"))
失败的返回值
出于以下任一原因,可能出现失败的返回值:
- (nil ("Error" . "Missing required argument."))
未提供一个或多个必填参数。
- (nil ("Error" . "No feature layer specified."))
必填要素图层值无效或缺失。
- (nil ("Error" . "Subtype name does not exist."))
必填 subtype 名称无效或缺失。