参照回転するLISP

  • URLをコピーしました!

(defun c:R1 ()

(setq sel (ssget))
(setq Pt1 (getpoint “\n始点:”))
(setq Pt2 (getpoint “\n終点:”))

(command “._ROTATE” sel “” Pt1 “R” Pt1 Pt2 pause “” )

)

このコードは、選択したオブジェクトを、指定した始点と終点を通る軸を中心に、任意の角度で回転させるAutoCADのLISP関数です。

コードの各行の説明は以下の通りです。

  • (defun c:R1 ():
    • この行は関数の宣言です。
    • 関数の名前は「R1」で、コマンド名も「R1」になります。
  • (setq sel (ssget)):
    • この行は、選択したオブジェクトのリストを変数「sel」に格納します。
    • (ssget) 関数は、選択したオブジェクトのリストを取得する関数です。
  • (setq Pt1 (getpoint “\n始点:”)):
    • この行は、始点座標を取得し、変数「Pt1」に格納します。
    • (getpoint "\n始点:") 関数は、ユーザーに始点座標を入力させます。
  • (setq Pt2 (getpoint “\n終点:”)):
    • この行は、終点座標を取得し、変数「Pt2」に格納します。
    • (getpoint "\n終点:") 関数は、ユーザーに終点座標を入力させます。
  • (command “._ROTATE” sel “” Pt1 “R” Pt1 Pt2 pause “” ):
    • この行は、選択したオブジェクトを、指定した始点と終点を通る軸を中心に、任意の角度で回転させます。
    • (command "._ROTATE" ...) 関数は、オブジェクトの回転を行うコマンド ._ROTATE を実行します。
    • sel は、回転するオブジェクトのリストです。
    • "" は、回転するオブジェクトの基点の座標です。
    • "R" は、オブジェクトを回転させるためのオプションです。
    • Pt1 は、始点座標です。
    • Pt2 は、終点座標です。
    • pause は、コマンドプロンプトを一時停止させます。
    • "" は、コマンドプロンプトの表示です。

関数の実行方法:

  1. AutoCADのコマンドプロンプトで「R1」と入力して Enter キーを押します。
  2. 回転するオブジェクトを選択します。
  3. 始点座標を入力します。
  4. 終点座標を入力します。
  5. 角度を入力します。
  6. Enter キーを押します。

具体的な説明は、以下のとおりです。

  • (defun c:R1 ():
    • この行は、関数の宣言です。
    • 関数名は「R1」で、コマンド名も「R1」になります。
    • 関数名は、AutoCADのコマンドプロンプトで入力する名前です。
    • コマンド名は、関数名と同じ名前にする必要があります。
  • (setq sel (ssget)):
    • この行は、選択したオブジェクトのリストを変数「sel」に格納します。
    • (ssget) 関数は、選択したオブジェクトのリストを取得する関数です。
    • 選択したオブジェクトのリストは、オブジェクトのタイプや、オブジェクトの属性などによって異なります。
  • (setq Pt1 (getpoint “\n始点:”)):
    • この行は、始点座標を取得し、変数「Pt1」に格納します。
    • (getpoint "\n始点:") 関数は、ユーザーに始点座標を入力させます。
    • ユーザーは、X,Y座標を入力するか、または、オブジェクトをクリックして座標を指定することができます。
  • (setq Pt2 (getpoint “\n終点:”)):
    • この行は、終点座標を取得し、変数「Pt2」に格納します。
    • (getpoint "\n終点:") 関数は、ユーザーに終点座標を入力させます
よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

Contents