FeatureLayer.SelectSpecial メソッドは、特別な基準に基づいて指定したフィーチャ レイヤーから AutoCAD 選択セットを返します。 このメソッドは、Web フィーチャ レイヤーを同期する前の品質保証とコンプライアンス チェック、またはフィーチャ レイヤーを操作する際のさまざまな編集とデータの状態に基づくエンティティーの検索に役立ちます。
特別な検索基準を次に示します。
- FlaggedAsModified - 指定した Web フィーチャ レイヤーのフィーチャとしての基準を満たし、変更済みとしてフラグが付けられた編集状態にある AutoCAD エンティティー。
- FlaggedAsNew - 指定した Web フィーチャ レイヤーのフィーチャとしての基準を満たし、新しいフィーチャとしてフラグが付けられた編集状態にある AutoCAD エンティティー。
- IncorrectGeometry - エンティティーが存在する AutoCAD レイヤーのためにフィーチャとしての基準を満たすが、ジオメトリー タイプが正しくないためフィーチャとは見なされない AutoCAD エンティティー。 例としては、ArcGIS for AutoCAD ポイント フィーチャの AutoCAD レイヤー上に描画されたポリラインが挙げられます。
- OutsideProjectArea - 指定したフィーチャ レイヤーのフィーチャとしての基準を満たし、現在のプロジェクト エリアの境界外にある AutoCAD エンティティー。
- ProxyObjectPresent - Autodesk Civil 3D 外の COGO ポイントなどのカスタム オブジェクト ジオメトリーを表す場合や、オブジェクト イネーブラーが存在しない場合に使用する AutoCAD プロキシー エンティティー。
- UnclosedPolyline - ポリゴン フィーチャとしての基準を満たすが、閉じているポリライン フラグがエンティティーに設定されていない AutoCAD ポリライン エンティティー。
注意:
多数の選択セットを同時に管理しようとすることは推奨されません。 アプリケーションでは、一度に 128 を超える選択セットを開いておくことはできません (お使いのシステムではこの制限がより低い可能性があります)。制限に達すると、AutoCAD はこれ以上選択セットを作成しません。 一度に最小数のセットを開いておくようにして、できるだけ早くメモリーから解放します。 選択セットの最大数に達すると、これ以上作成できなくなります。
宣言
public SelectionSet Esri.ArcGISForAutoCAD.FeatureLayer.SelectSpecial(Document doc, string flName, string criteria, string sublayerName = null)
パラメーター
| タイプ | 名前 | 説明 | 必須 |
|---|---|---|---|
ドキュメント | doc | 操作対象の AutoCAD ドキュメント。 | 必須 |
string | flName | ドローイング内の既存のフィーチャ レイヤー名。 | 必須 |
string | criteria | 特別な基準。 次のようなオプションがあります。
| 必須 |
| string | sublayerName | 文字列としての既存のフィーチャ レイヤー サブレイヤー名。 | オプション |
リターン
| タイプ | 説明 |
|---|---|
SelectionSet | 特別な基準を満たすフィーチャの AutoCAD 選択セット。 |
エラー条件に関する注記
パラメーターが無効な場合、このメソッドは例外をスローするか、null を返すことがあります。
例 1
現在のドローイングのプロジェクト エリア外にある Shelters フィーチャ レイヤーに属するエンティティーの数を印刷します。// 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
*/
例 2
現在のドローイング内で同期する前に変更されたと ArcGIS for AutoCAD で見なされる Roads Web フィーチャ レイヤーの Public サブレイヤーに属するエンティティーの数を印刷します。// 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
*/
次もご参照ください。
FeatureLayer.Select - ドローイングから指定したフィーチャ レイヤーとオプションのサブレイヤー、および (必要に応じて) 指定した選択セットと属性検索でフィルターされた AutoCAD 選択セットを返す .NET メソッドです。
esri_featurelayer_selectspecial - 特別な基準に基づいて指定したフィーチャ レイヤーから AutoCAD 選択セットを返す AutoLISP 関数です。