ラインデータの取得(特定データのデータ取得関数) LTCustomizer21 for AutoCAD LT リファレンスマニュアル

ActiveX
    Function get_select_line(ename As Integer, ByRef x1 As Double, ByRef y1 As Double, ByRef z1 As Double, ByRef x2 As Double, ByRef y2 As Double, ByRef z2 As Double) As Boolean

C/C++
    int WINAPI LTC_get_select_line(int ename,double start[3],double end[3]);

パラメータ
ename:読み込んだデータの配列のインデックス。0〜select()の返り値−1までの値を指定する。
x1,y1,z1,x2,y2,z2(ActiveXのみ):取得したラインの始点と終点
start[3],end[3](C/C++のみ):取得したラインの始点と終点。最初のインデックスがx座標,2番目がy座標,3番目がz座標

返り値
成功したら1.失敗したら0が返ってくる.

この関数は指定したenameにあるデータがラインデータならその始点終点を取得する関数である。
この関数は以下の文と等価である

Dim x1,y1,z1,x2,y2,z2 As Double
If LTCustomize1.get_select_data(i,0)="LINE" Then '配列のi番目にラインデータがあるなら
    LTCustomize1.get_select_point(i,x1,y1,z1)
    LTCustomize1.get_select_point(i,x2,y2,z2,11)
EndIf

注意:ユーザ座標系(UCS)で描画した場合の頂点座標は、UCSで描画したときのローカルな座標値です。(座標系を知らない場合は、ワールド座標系が基本的な座標系と認識してください。)この場合はグループコード210番,220番,230番(ワールド座標系から見たUCSの法線ベクトル)が追加されています。したがって、ワールド座標に変換する場合はこれらのコードを元にして変換する必要があります。それに加えてUCSの原点座標も変換する際に考慮する必要があります。UCSの原点はread_DXF_table()などを使って取得します。この詳細はAutoCAD/LTのヘルプでUCSもしくはOCSの項目を探してください。