概要 - イメージを作成する(DCL)

イメージ タイルとイメージ ボタンのイメージを作成するための呼び出し手順は、リスト処理の手順に似ています。

注: AutoLISP での DCL のサポートは Windows のみに制限されています。

start_image 関数はイメージの作成を開始し、end_image はイメージの作成を終了します。ただし、描画するイメージの種類は、引数ではなく別の関数を呼び出すことによって指定します。

vector_image

現在のイメージに、ベクトル(1 本の線分)を描きます。

fill_image

現在のイメージに、塗り潰し矩形を描きます。

slide_image

イメージに、AutoCAD のスライドを表示します。

ベクトルと塗り潰し矩形は、AutoCAD の[色選択]ダイアログ ボックスに表示される色見本(塗り潰し矩形)のような単純なイメージに便利です。 複雑なイメージの場合は、スライドの方が便利です。ただし、スライドを表示するのに時間がかかることがあります。スライドを使用する場合は、できるだけ単純なスライドにしてください。

注: 塗り潰しオブジェクト(幅のあるポリライン、2D 塗り潰し、3D 面など)を含むスライドをイメージ タイルで使用する場合は、AutoCAD の SHADEMODE[シェーディング モード設定]コマンドを使用して作成したイメージからスライドを作成しないと、イメージは輪郭線で表示されます。

vector_image 関数では絶対座標を指定する必要があり、fill_imageslide_image では開始座標および相対的な幅と高さを指定する必要があります。正しく指定するには、イメージ タイルまたはイメージ ボタンの正確な寸法を知らなければなりません。通常、これらの寸法はダイアログ ボックスのレイアウト時に割り当てられるため、PDB 機能は特定のタイルの幅と高さを返す関数を備えています。これらのタイル寸法関数は、dimx_tiledimy_tile です。これらの関数は、イメージの作成を開始する前に呼び出す必要があります。タイルの原点(0,0)は、常にタイルの左上コーナーです。

色は、AutoCAD の色番号か、次の表に示す論理色番号のいずれかで指定できます(値とニーモニックは、ADI[Autodesk Device Interface]で定義されています)。

ダイアログ ボックスの色属性

色番号

ADI ニーモニック

意 味

-2

BGLCOLOR

AutoCAD グラフィックス スクリーンの現在の背景色

-15

DBGLCOLOR

現在のダイアログ ボックスの背景色

-16

DFGLCOLOR

現在のダイアログ ボックスの前景色(文字)

-18

LINELCOLOR

現在のダイアログ ボックスの線の色

次の例は、イメージ タイル "cur_color" 全体を赤で塗り潰します。

(setq width (dimx_tile "cur_color")
      height (dimy_tile "cur_color")
)
(start_image "cur_color")
(fill_image 0 0 width height 1)   ;1 = AutoCAD red.
(end_image)

各イメージ描画関数を組み合わせて使用することもできます。次のコードはイメージを塗り潰し、その上に縦の線を描きます。

(setq width (dimx_tile "stripe")
      height (dimy_tile "stripe")
)
(start_image "stripe")
(fill_image 0 0 width height 3)   ;3 = AutoCAD green.
(setq x (/ width 2))              ;Center the vector vertically.
(vector_image x 0 x height 4)     ;4 = AutoCAD cyan.
(end_image)

slide_image を使用して表示するスライドは、スタンドアロン型のスライド(SLD)ファイル、またはスライド ライブラリ(SLB)ファイルの一部です。スライドが SLD ファイルの場合は、拡張子 .sld を付けないでその名前を指定します(たとえば "frntview")。スライドがスライド ライブラリ内にある場合は、まずライブラリの名前を指定し、その後にスライドの名前を括弧で囲んで続けます。ライブラリとスライドの名前にも拡張子を付けないという点に注意してください。たとえば、"allviews(frntview)" のように指定します)。slide_image 関数は、現在の AutoCAD ライブラリ検索パスに従ってスライドやスライド ライブラリ ファイルを検索します。

次の例では、スライドは topview.sld という独立したファイルに格納されています。

(setq x (dimx_tile "view")
      y (dimy_tile "view")
)
(start_image "view")
(slide_image 0 0 x y "topview")
(end_image)

一般に、スライド内のベクトルは、イメージの既定の背景色である白(色番号 7)で描かれます。初めてスライドを表示したときにイメージ タイルが空白になる場合は、その color 属性を graphics_background に変えてみてください(イメージの背景は、slide_image を呼び出す前に、fill_image を呼び出して変更することもできます)。