Skip To Content

FeatureLayer.SelectSpecial (.NET)

El método FeatureLayer.SelectSpecial devuelve un conjunto de selección de AutoCAD de una capa de entidades especificada basada en criterios especiales. Este método resulta útil para verificar la garantía de calidad y el cumplimiento antes de sincronizar capas de entidades web o para buscar entidades basadas en varios estados de edición y datos al trabajar con capas de entidades.

Los criterios de búsqueda especiales son:

  • FlaggedAsModified: entidades de AutoCAD que califican como entidades de la capa de entidades web especificada y que tienen su estado de edición marcado como modificado.
  • FlaggedAsNew: entidades de AutoCAD que califican como entidades de la capa de entidades web especificada y que tienen su estado de edición marcado como nueva entidad.
  • IncorrectGeometry: entidades de AutoCAD que se considerarían entidades debido a la capa AutoCAD en la que residen, pero que no se consideran entidades porque son del tipo geométrico incorrecto. Un ejemplo son las polilíneas que se dibujan en una capa AutoCAD de las entidades de puntos de ArcGIS for AutoCAD.
  • OutsideProjectArea: entidades de AutoCAD que califican como entidades de la capa de entidades especificada y que están fuera del límite del área del proyecto actual.
  • ProxyObjectPresent: entidades proxy de AutoCAD que se utilizan para representar la geometría del objeto personalizada, como puntos COGO fuera de Autodesk Civil 3D, o cuando no hay un objeto facilitador.
  • UnclosedPolyline: entidades de polilínea de AutoCAD que se considerarían entidades poligonales, pero el marcador cerrado de polilínea no está establecido en la entidad.

Nota:

No se recomienda intentar administrar un gran número de conjuntos de selección al mismo tiempo. La aplicación no puede tener más de 128 conjuntos de selección abiertos a la vez. (El límite podría ser más bajo en su sistema). Cuando se alcance el límite, AutoCAD no creará más conjuntos de selección. Mantenga un número mínimo de conjuntos abierto al mismo tiempo y libérelos de la memoria lo antes posible. Si se alcanza el número máximo de conjuntos de selección, no podrá crear más.

Declaración

public SelectionSet Esri.ArcGISForAutoCAD.FeatureLayer.SelectSpecial(Document doc, string flName, string criteria, string sublayerName = null)

Parámetros

TipoNombreDescripciónRequerido

Documento

doc

Documento de AutoCAD sobre el que se va a actuar.

obligatorio

cadena

flName

Nombre de capa de entidades existente en el dibujo.

obligatorio

cadena

criteria

Criterios especiales. Las opciones son las siguientes:

  • Criterios de búsqueda: "UnclosedPolyline", "IncorrectGeometry", "ProxyObjectPresent" y "OutsideProjectArea"
  • Las opciones de solo capa de entidades web son: "FlaggedAsModified" y "FlaggedAsNew"

obligatorio

cadena

sublayerName

Nombre de subcapa de la capa de entidades existente como cadena de caracteres.

opcional

Devoluciones

TipoDescripción

SelectionSet

Conjunto de selección AutoCAD de entidades que cumple los criterios especiales.

Observaciones sobre las condiciones de error

Este método puede generar una excepción o devolver null si un parámetro no es válido.

Ejemplo 1

Imprima el número de entidades que pertenecen a la capa de entidades Shelters que están fuera del área de proyecto del dibujo actual:

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;

// Create a selection set with the criteria
var sheltersSelection = Esri.ArcGISForAutoCAD.FeatureLayer.SelectSpecial(doc, "Shelters", "OutsideProjectArea");

// Print the selection count
doc.Editor.WriteMessage("\nNumber of entities selected: " + sheltersSelection.Count.ToString());

/* Example output
Number of entities selected: 30
*/

Ejemplo 2

Imprima el número de entidades pertenecientes a la subcapa Public de la capa de entidades web Roads que ArcGIS for AutoCAD considera que se han modificado antes de la sincronización.

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;

// Create a selection set with the criteria
var publicRoadsSelection = Esri.ArcGISForAutoCAD.FeatureLayer.SelectSpecial(doc, "Roads", "FlaggedAsModified", "Public");

// Print the selection count
doc.Editor.WriteMessage("\nNumber of entities selected: " + publicRoadsSelection.Count.ToString());

/* Example output
Number of entities selected: 5
*/

Consulte también

FeatureLayer.Select: método de .NET que devuelve un conjunto de selección de AutoCAD filtrado por la capa de entidades especificada y la subcapa opcional del dibujo y, opcionalmente, un conjunto de selección especificado y la consulta de atributo.

esri_featurelayer_selectspecial: función de AutoLISP que devuelve un conjunto de selección de AutoCAD de una capa de entidades especificada basada en criterios especiales.