Grossa Speaks Final

コンピュータに関するテーマを
気の向くまま取り上げています。
(時々雑談...)

CADopia L字形配線 その4 

2006年02月19日 | CAD
現在のAutoLispでのコーディングは次のとおり。
****************************************
;;WiringL
;;
;;L字型配線
;;
;;February 13,2006 Original
;;February 19,2006 Version 0.7
;;
;;Coding by Kim Grossa
::
;;midpoint-----------startpoint
;; |
;; |
;; |
;; endpoint

(defun C:WiringL()
;*****前準備
(setq oldlayer (getvar "clayer"));現在のレイヤー名を取得。

;*****midpointを求める
(command "layer" "m" "AuxLine" "c" "210" "" "");補助線用のレイヤーをつくる。色番号を210とする。
(setq startpoint (getpoint "nPick start point"));最初の点を取得。
(command "infline" "h" startpoint "");startpointを通る水平補助線を描く。
(command "infline" "v" startpoint "");firstpointを通る垂直補助線を描く。
(setq endpoint (getpoint "nPick end point"));最後の点を取得。
(command "infline" "h" endpoint "");endpointを通る水平補助線を描く。
(command "infline" "v" endpoint "");endpointを通る垂直補助線を描く。
(setq midpoint (getpoint "nPick mid point"));中間の点を取得(配線の方向)。
(setvar "clayer" oldlayer);補助線を描く前のレイヤーを現在のレイヤーにする。

;*****ポリラインを描く
(command "polyline" startpoint midpoint endpoint "");最初、中間、最後の点を結ぶ
(setq mypolyline(entlast));ポリラインを選択

;*****丸めの半径がゼロの場合
(setq nowrad (getvar "filletrad"));現在の設定値を取得
(if (= nowrad 0.0);ゼロの場合は
(progn
(setq nowrad (getreal "nInput Radius:");半径を入力
(setvar "filletrad" nowrad);半径の新しい設定
)
)

;*****ポリラインを丸める
(command "fillet" "p" mypolyline);ポリラインを丸める

)
*****************************************
今後の改良予定
1)丸め半径を作図中に変更できるようにする
2)エラー処理
3)補助線を描かない方法?これが面倒。

最新の画像もっと見る

コメントを投稿