・ 線分を作図する
始点と終点を指定して線分を作図するサンプルです
;点を指示して線分を作図 (command)利用 ; (defun Jo_draw_line_com ( / pts pte) (if (and (setq pts (getpoint "始点を指示")) ;現在のUCSで表された3D点が返る; (setq pte (getpoint pts "終点を指示")) ;現在のUCSで表された3D点が返る; ) (command "._LINE" pts pte "") ;現在のUCSで作図; ) ) ;点を指示して線分を作図 (entmake)利用 ; (defun Jo_draw_line_emake ( / pts pte) (if (and (setq pts (getpoint "始点を指示")) ;現在のUCSで表された3D点が返る; (setq pte (getpoint pts "終点を指示")) ;現在のUCSで表された3D点が返る; ) (entmake ;WCSで作図; (list '(0 . "LINE") (cons 10 (trans pts 1 0)) ;UCSでの3D点をWCSに変換; (cons 11 (trans pte 1 0)) ;UCSでの3D点をWCSに変換; ) ) ) ) ;点を指示して線分を作図 ActiveX 利用 ; (defun Jo_draw_line_ax ( / obj_acad obj_adoc obj_util obj_model pts pte ptx) (vl-load-com) (setq obj_acad (vlax-Get-Acad-Object)) (setq obj_adoc (vla-Get-ActiveDocument obj_acad )) (setq obj_util (vla-get-Utility obj_adoc)) (setq obj_model (vla-get-ModelSpace obj_adoc)) (setq pts (vla-GetPoint obj_util , "始点を指示")) ;WCSで表された3D点が返る; (setq ptx (vla-TranslateCoordinates obj_util pts 0 1 0));acWorld=0 acUCS=1 で座標変換; (setq pte (vla-GetPoint obj_util ptx "終点を指示")) ;WCSで表された3D点が返る; (vla-AddLine obj_model pts pte) ;WCSで作図; )