選択セットがどのように作成されたかに関する情報を取得します。
サポートされているプラットフォーム: Windows および Mac OS
(ssnamex ss [index])
タイプ: ads_name
選択セット。
タイプ: 整数または実数
選択セット内の要素。選択セットの先頭の要素のインデックスは 0(ゼロ)です。
タイプ: ads_name または nil
成功した場合、ssnamex 関数は index 引数で指定された位置の図形の名前を、その図形がどうような方法で選択されたかを示す情報を付けて返します。index 引数を指定しなければ、この関数は選択セットのすべての要素の図形名を含むリストを、それらの図形がどのようにして選択されたかを示すデータを付けて返します。index 引数が負の場合や、選択セット内の最大番号の図形より大きい場合、ssnamex 関数は nil を返します。
現在の図面のモデル空間とペーパー空間の図形の選択セットのみが、この関数で取得できます。非グラフィカル オブジェクトや他のブロック定義内の図形は対象外です。
ssnamex 関数が返すデータは、図形に関する情報とその図形の選択に使用された方法、または 1 つまたは複数の図形の選択に使用されたポリゴンの情報を含むサブリストで構成されるリストです。特定の図形の選択を記述する各サブリストは、選択方法 ID (0 以上の整数)、選択された図形の図形名、図形の選択方法を記述する選択方法固有のデータの 3 つの部分で構成されます。
((sel_id1 ename1 (data))(sel_id2 ename2 (data)) ... )
次の表に、選択方法 ID を示します。
選択方法 ID |
|
---|---|
ID |
説 明 |
0 |
無指定(最新の図形、全図形など) |
1 |
ピック(クリック) |
2 |
窓またはポリゴン窓 |
3 |
交差またはポリゴン交差 |
4 |
フェンス |
図形の選択で使用されたポリゴンを表す各サブリストは、ポリゴン ID(0 より小さい整数)の後に点のデータが続くという形式です。
(polygon_id point_description_1 point_description_n ...)
ポリゴン ID(polygon_id)は -1 から始まり、ポリゴンが増えるごとに 1 ずつ減少します。視点の位置により、点は、構築線、放射線、線分セグメントのいずれかを表します。点ディスクリプタは、次の 3 つの部分から構成されます。第 1 は、点ディスクリプタ ID(項目のタイプ)です。第 2 は、項目の開始点です。第 3 は、構築線の方向を表す単位ベクトル、または線分セグメントの他方の側へのオフセットを表すベクトルで、これは省略可能です。
(point_descriptor_id base_point [unit_or_offset_vector])
次の表に、有効な点ディスクリプタ ID を示します。
点ディスクリプタ ID |
|
---|---|
ID |
説 明 |
0 |
構築線 |
1 |
放射線 |
2 |
線分セグメント |
unit_or_offset_vector は、視点が 0,0,1 以外の場合に返されます。
ピック(タイプ 1)図形選択に関連付けられた data は、単一の点を表します。たとえば、WCS のプラン ビューで 1,1 をピックして図形を選択した場合、次のような情報を返します。
コマンド: (ssnamex ss3 0)
((1 <Entity name: 1d62da0> 0 (0 (1.0 1.0 0.0))))
窓、ポリゴン窓、交差、ポリゴン交差での図形選択に関連付けられた data は、図形を選択したポリゴンの整数 ID です。ポリゴン識別子を関連付け、ポリゴンとそれによって選択された図形を結び付けるのは、アプリケーションの役割です。たとえば、次の例では、交差で選択された図形が返されます(ポリゴン ID が -1 であることに注意)。
コマンド: (ssnamex ss4 0)
((3 <Entity name: 1d62d60> 0 -1) (-1 (0 (-1.80879 8.85536 0.0)) (0 (13.4004 8.85536 0.0)) (0 (13.4004 1.80024 0.0)) (0 (-1.80879 1.80024 0.0))))
フェンス選択に関連付けられた「データ」は、フェンスと図形が視覚的に交差している点とその点の記述で構成されるリストです。たとえば、Z 形のフェンスが、ほぼ垂直な線分と 3 回交差している場合、次の情報を返します。
コマンド: (ssnamex ss5 0)
((4 <Entity name: 1d62d88> 0 (0 (5.28135 6.25219 0.0)) (0 (5.61868 2.81961 0.0)) (0 (5.52688 3.75381 0.0))))